Para ser un buen desarrollador se debe ser humilde y reconocer el gran trabajo de otros colegas programadores. Muchas veces no observamos con suficiente atención el código de nuestros compañeros para sacar alguna enseñanza de cómo afrontaron el desarrollo de una aplicación. Es curioso, por ejemplo, los arquitectos sí que son muy dados a admirar el trabajo de los grandes maestros y compañeros observando cada detalle de la construcción de un edificio. ¿Por qué no nos fijamos en las grandes creaciones del software más a menudo los desarrolladores?
Conocer desde abajo los cimientos de un aplicación te ayuda a comprender cómo funciona, además de evitar que cometas algunos errores con los que el creador se encontró en el proceso de desarrollo. Bajo esa premisa surge un excelente proyecto condensado en dos completos libros: The Architecture of Open Source Applications, las aplicaciones más importantes Open Source (de la historia). Indudablemente deberían ser de estudio obligatorio en muchas facultades de informática.
El objetivo del proyecto es explicar cómo se estructuran, cuáles son los componentes principales de la aplicación, cómo interactúan y, sobre todo, qué aprendieron los creadores durante su desarrollo. Cada uno de los ejemplos, está escrito en colaboración con auténticos expertos y sus propios creadores.
Entre los proyectos diseccionados nos encontramos: Git, Puppet, GNU Mailman, Firefox Release Engineering, Selenium WebDriver, Mercurial, Integración Continúa, Hadoop, Moodle, Mediawiki, Eclipse, etc.. formando en total 50 proyectos de reconocido prestigio que forman parte en la mayoría de las veces del stack de software que usamos a diario.