Ingresar:

Johans Marvin Taboada Villca :: Blog :: The Cathedral and the Bazaar

June 19, 2008

Publicado en techbooks@SoftwareLibre.org.bo el 25 de Mayo del 2008

The Cathedral & the Bazaar

  • Editorial O'Reilly Media
  • Idioma Inglés
  • Edición impresa 255 páginas
  • Lanzamiento 1999
  • Revisión 2001
  • ISBN 0-596-00131-2
  • ISBN 13 9780596001315
  • Autor Eric Steven Raymond
  • Licencia del contenido Open Publication License

La Catedral y el Bazaar (abreviado como CatB) es un libro clásico, creado a partir de una serie de ensayos escritos por Eric S. Raymond, basados sobre sus observaciones referentes al proceso de desarrollo del Kernel de Linux, y a sus experiencias propias en la administración de un proyecto de software libre fetchmail.

El título del libro se debe al ensayo principal, denominado de la misma forma, el cuál fué inicialmente presentado el 27 de Mayo del año 1997 en un Congreso de Linux (Linux Kongress).

El contenido principal del libro gira en torno al proceso de desarrollo del software libre desde dos enfoques completamente diferentes, vigentes en aquel momento, a los cuales el denomina modelo Catedral y modelo Bazaar respectivamente.

Citando a la wikipedia:

  • El modelo Catedral, en el cuál el código fuente es liberado junto a cada lanzamiento oficial, pero el código en desarrollo, entre lanzamientos, esta restringido a un grupo exclusivo de desarrolladores. Se presentan GNU Emacs y GCC como ejemplos.
  • El modelo Bazaar, en el cuál el código fuente es desarrollado a través del Internet a la vista del público. Raymond da el crédito a Linus Torvalds, líder del proyecto Kernel de Linux, como el inventor de este proceso...

A tiempo de su publicación, fué distinguido especialmente por ser el primer libro comercial, completamente ditribuido mediante una licencia de libre contenido.

El libro influenció de tal forma, que convención a muchos de los proyectos de código libre/abierto a adoptar el modelo Bazaar, ya sea completa ó parcialmente. También se dice que fué el golpe final para que la Netscape Communications Corporation liberara el código fuente de su navegador Netscape Communicator, y de esta forma se inicie el proyecto Mozilla.

Uno puede leer el texto completo del libro, excepto el preámbulo escrito por Bob Young, en la página personal de Eric S. Raymond. Adicionalmente se puede descargar las fuentes DocBook del texto del libro. También se presentan enlaces a proyectos de traducción a distintos idiomas de algunos fragmentos del libro.

Algunas citas del ensayo principal:

  • Linus Torvalds's style of development—release early and often, delegate everything you can, be open to the point of promiscuity—came as a surprise.
  • Every good work of software starts by scratching a developer's personal itch.
  • ... you often don't really understand the problem until after the first time you implement a solution. The second time, maybe you know enough to do it right. So if you want to get it right, be ready to start over at least once.
  • When you lose interest in a program, your last duty to it is to hand it off to a competent successor.
  • Another strength of the Unix tradition, one that Linux pushes to a happy extreme, is that a lot of users are hackers too. Because source code is available, they can be effective hackers.
  • "I'm basically a very lazy person who likes to get credit for things other people actually do." --Linus Torvalds.
  • In those early times (around 1991) it wasn't unknown for him to release a new kernel more than once a day!
  • "Given enough eyeballs, all bugs are shallow." ... "Linus's Law" ... "Debugging is parallelizable"
  • If you treat your beta-testers as if they're your most valuable resource, they will respond by becoming your most valuable resource.
  • The next best thing to having good ideas is recognizing good ideas from your users. Sometimes the latter is better.
  • Often, the most striking and innovative solutions come from realizing that your concept of the problem was wrong.
  • "Perfection (in design) is achieved not when there is nothing more to add, but rather when there is nothing more to take away." --Antoine de Saint-Exupéry (El principito)
  • Any tool should be useful in the expected way, but a truly great tool lends itself to uses you never expected.
  • When your language is nowhere near Turing-complete, syntactic sugar can be your friend.
  • A security system is only as secure as its secret. Beware of pseudo-secrets.
  • It's fairly clear that one cannot code from the ground up in bazaar style. One can test, debug and improve in bazaar style, but it would be very hard to originate a project in bazaar mode. Linus didn't try it. I didn't either.
  • Provided the development coordinator has a communications medium at least as good as the Internet, and knows how to lead without coercion, many heads are inevitably better than one.
  • Our reply, then, to the traditional software development manager, is simple—if the open-source community has really underestimated the value of conventional management, why do so many of you display contempt for your own process?
  • "On behalf of everyone at Netscape, I want to thank you for helping us get to this point in the first place. Your thinking and writings were fundamental inspirations to our decision." --Eric Hahn, CTO de Netscape.
  • Mozilla group didn't ship a production-quality browser for two and a half years after the project launch ... "Open source,'' he correctly observed, "is not magic pixie dust.'' --Jamie Zawinski.
Quedan coordialmente invitados a degustar de esta lectura.

Palabras clave: Books, CatB, Eric S. Raymond, FLOSS, Libre Contenido, Libros, Reseñas, Software Libre

Enviado por Johans Marvin Taboada Villca



Comentarios

  1. Mil perdones si ya han leido esta entrada anteriormente (añadí esta y borré la anterior publicada en la comunidad freeman), he estado confundido respecto a como organizar/sincronizar el contenido que publico con este Blog, y finalmente creo que he llegado a una conclusión (ya que considero a Ajayu mi Blog principal y quiero de alguna manera centralizar mi actividad acá). ¿Alguno de Uds. mantiene también más de un Blog, cómo lo administran?. Saludos.

    user iconJohans Marvin Taboada Villca on Thursday, 19 June 2008, 14:30 BOT # |

  2. No deberia pasar un dia mas de tu vida sin haber leido el libro si te consideras un programador decente. Y luego de ello tu vida deberia haber cambiado en algo ...

    user iconPablo Azero on Thursday, 19 June 2008, 15:56 BOT # |

  3. #2 supongo que esta conciente del grado de influencia que tienen sus palabras en todos aquellos que dariamos un pie o un brazo por desarrollar SW con Ud. ...... entonces viendo el libro copie los puntos importantes.

     

    1. Todos los trabajos buenos en software comienzan tratando de paliar un problema personal del que los programa.


    2. Los buenos programadores saben qué escribir. Los grandes saben qué reescribir (y reutilizar).

     

    3. ``Piensa en desechar al menos uno: lo terminarás haciendo de todos modos.'' (Fred Brooks, ``The Mythical Man-Month'', Capítulo 11)

     

    4. Si tienes la actitud adecuada, los problemas interesantes te encontrarán

     

    5. Cuando un programa deja de interesarte, tu último deber es pasarlo a un sucesor competente.

     

    6. Tratar a tus usuarios como colaboradores es el camino menos complicado para mejorar con rapidez y depurar eficazmente un programa.

     

    7. Lánzalo pronto. Lánzalo a menudo. Y escucha a tus usuarios.

     

    8. Dada una base lo suficientemente amplia de probadores y colaboradores, casi todos los problemas se identificarán con rapidez y su solución será obvia para alguien.

     

    9. Estructuras de datos inteligentes asociadas a un código torpe funcionan mucho mejor que la alternativa opuesta.

     

    10. Si tratas a la gente que te ayuda a depurar un programa como si fueran tu recurso más valioso, responderán convirtiéndose en eso precisamente.


    11. La siguiente cosa mejor que tener buenas ideas consiste en reconocer las buenas ideas de tus usuarios. Y en ocasiones ésta última es la mejor en términos absolutos.

     

    12. A menudo, las soluciones más sorprendentes e innovadoras surgen al darte cuenta de que la idea que se tenía del problema estaba equivocada.


    13. ``La perfección (de un diseño) no se consigue cuando no queda nada por añadir, sino más bien cuando no resta nada por eliminar.''

     

    14. Toda herramienta debe resultar útil en la forma prevista, pero una *gran herramienta* te lleva a usarla para realizar cosas jamás pensadas.

     

    15. Cuando escribas programas que actúen como pasarelas de datos ('gateway software'), ten cuidado de modificarlos lo menos posible -- y *nunca* elimines información a menos que su destinatario te fuerce a hacerlo.

     

    16. Si el lenguaje de tu programa no es Turing-completo ni por asomo, puede venir bien endulzar su sintaxis.

     

    17. Un sistema es sólo tan seguro como su secreto. Cuidado con los falsos secretos.


    18. Para resolver un problema interesante, comienza por encontrar uno que lo sea para tí.


    19: Si el coordinador de un proyecto tiene a su disposición un medio de comunicación al menos tan potente como Internet, y sabe como conducir a la gente sin coaccionarla, muchas cabezas son inevitablemente mejor que una.


    P.D. espero que no diga que la lectura en ingles es obligada.

    Re-P.D. Disculpa Marvin, no voy a borrar mas este mensaje es el definitivo

    user iconHappyFaceDead on Thursday, 19 June 2008, 17:27 BOT # |

  4. Al parecer te ha servido ... me alegro.

     

    user iconPablo Azero on Thursday, 19 June 2008, 22:26 BOT # |

Debes iniciar sesión para enviar un comentario.

Bookmark and Share