Mucha de la materia prima para la primera edición de este libro viene de trabajar durante cinco años con el proyecto Subversion (subversion.tigris.org). Subversion es un sistema de código abierto para el control de versiones, escrito desde cero con la intención de reemplazar a CVS como el sistema de control de versiones de facto utilizado por la comunidad Open Source. El proyecto fue iniciado por la empresa en la que trabajo, CollabNet (collab.net), a principios del año 2000 y gracias a Dios, CollabNet entendió desde el inicio a llevarlo como un esfuerzo colaborativo y distribuido. Desde el principio tuvimos muchos desarrolladores voluntarios; hoy somos unos 50 en el proyecto, de los cuales sólo unos pocos son empleados de CollabNet.
Subversion es, de muchas maneras, un clásico ejemplo de un proyecto Open Source y terminé aproximándome más de lo que originalmente esperaba. Parte de esto fue una cuestión de conveniencia: cada vez que necesitaba un ejemplo de un fenómeno en particular, usualmente podía recordar alguno sobre Subversion. Pero también fue una cuestión de verificación. Aunque estoy inmerso en otros proyecto de software libre a diversos niveles, y que converso con amigos y conocidos involucrados en muchos otros, rápidamente me he dado cuenta que al escribir para la imprenta, todas las afirmaciones deben ser verificadas con hechos. No deseaba hacer declaraciones acerca de situaciones presentes en otros proyectos basándome sólo en lo que podía leer en las listas de correo. Si alguien intentase algo así con Subversion sé que sólo estaría en lo correcto la mitad de las veces y equivocado la otra mitad. Así que al buscar inspiración o ejemplos en proyectos con los que no tenía experiencia directa, intentaba primero hablar con algún informante, alguien en quien confiara para explicarme qué estaba sucediendo realmente
Subversion ha sido mi trabajo durante los últimos cinco años pero he estado involucrado en el software libre durante otros doce. Otros proyectos que han influenciado este libro son:
El proyecto GNU Emacs de la Free Software Foundation, un editor de texto del cual mantengo algunos paquetes pequeños
Sistema de versiones concurrentes, del inglés Concurrent Version System (CVS) en el que trabajé intensamente en 1994‐1995 con Jim Blandy y participé intermitentemente durante algunos años después.
La colección de proyectos Open Source conocidos como la Fundación de Software Apache, especialmente en el Apache Portable Runtime (APR) y en el servidor Apache HTTP.
El proyecto Launchpad.net en Canonical, Ltd.
Code for América y O'Reilly Media, que me dio una visión interna del desarrollo de tecnología cívica de fuente abierta iniciando en 2010, y me mantuvo un poco en el circuito después de que me convertí en un consultor a tiempo completo en 2012.
Las muchas herramientas de código abierto anti-vigilancia y evasión de censura soportados por el Proyecto de Herramientas Abiertas de Internet.
Checkbook NYC, el software de transparencia financiera municipal publicado por la Oficina de Contraloría de la ciudad de Nueva York.
El Proyecto de los Arcos, una aplicación web de código abierto para la gestión de las excavaciones arqueológicas, creado por el Instituto de Conservación Getty y el Fondo Mundial de Monumentos.
OpenOffice.org / LibreOffice.org, las bases de datos Berkeley de Sleepycat, y MySQL; No he estado envuelto personalmente en estos proyectos, pero los he observado y, en algunos casos, hablado con personas que participan en ellos.
GNU Debugger (GDB) (igual que los anteriores).
Proyecto Debian (igual que los anteriores).
Esta no es la lista completa, por supuesto. Como muchos de los programadores de Open Source, yo también mantengo varios frentes abiertos en diferentes proyectos de mi interés, sólo para tener una visión de su estado general. No los voy a nombrar a todos aquí, pero seran mencionados a lo largo del libro cuando sea apropiado.