Conecta con nosotros

A Fondo

Cómo contribuir al desarrollo del software Open Source

Publicado el

Hace unas semanas os contábamos coincidiendo con la celebración de nuestra mesa redonda “El código abierto como motor de transformación digital en la Administración Pública”, cómo el software del código abierto había cambiado el mundo. Y cómo en ese cambiar el mundo, la comunidad que estaba contribuyendo a mejorar el software open source, se había convertido en una parte indispensable para mejorar la seguridad de los desarrollos, estandarizar las mejores prácticas y trabajar de forma coordinada y con agilidad para responder a los retos que plantean tanto AAPP como empresas.

Encontramos en esa “comunidad Open Source” el trabajo por supuesto de multinacionales como Intel, Google, Microsoft, Meta o la propia Red Hat. Empresas que guiadas (no nos olvidemos nunca) por su propio beneficio económico, contribuyen al desarrollo del kernel de Linux y de un enorme número de proyectos.

Una de las cuestiones que sobrevolaba en ese debate versaba en este sentido, de si esa “industrialización del software de fuentes abiertas”, no se habría cobrado su peaje en forma de acabar con ese “espíritu romántico” del desarrollador independiente que quiere aportar su granito de arena para ayudar en el mantenimiento de un proyecto interesante, dedicándole su esfuerzo y tiempo de forma desinteresada.

Y aunque algo de eso hay, lo cierto que estamos en 2023 y siguen habiendo canales y vías para seguir siendo un “adalid” del software open source y poder presumir de ello. A continuación te mostramos el camino a seguir si estás interesado en dar el primer paso.

1. ¿Qué sabes hacer?

Antes de saltar ponerte manos a la obra en GitHub u otras plataformas de desarrollo de software, debes analizar cuidadosamente cuáles son tus habilidades técnicas y cuál puede ser tu mejor forma de aportar. A lo mejor dominas el desarrollo web, o eres un experto en sistemas operativos. Tal vez tienes experiencia en el desarrollo con C o has empezado a interesante por el mundo de los contenedores y los microservicios.

Haz una lista de todas las tecnologías con las que estás familiarizado, junto con algunas que te gustaría aprender a lo largo de este recorrido. A continuación, ordena esas tecnologías en función de tu experiencia, de modo que te sea más sencillo el encontrar un proyecto interesante en el que participar.

2. Encuentra un proyecto Open Source

Por supuesto, el siguiente paso es encontrar un proyecto al que te gustaría contribuir. Con miles activos, una forma de empezar es descubrir cuáles en tu campo gozan de una buena popularidad. Una forma de determinarlo es atendiendo a la valoración de los usuarios, los commits que se publican o el número de forks con los que cuenta.  ¿Y dónde puedes encontrar esos proyectos? Te presentamos algunos espacios que puedes empezar a explorar.

GitHub Topics

Teniendo en cuenta que GitHub se ha convertido en el principal repositorio de proyectos de software del mundo, GitHub Topics es desde luego el mejor sitio en el que puedes comenzar a buscar, especialmente si no quieres involucrarte en un proyecto demasiado grande desde el primer momento.

Probablemente el mejor sitio en el que puedes empezar a a buscar, en un enorme espacio que ordena los proyectos en función de su popularidad, tecnología empleada, si son tendencia, etc. 

CNCF Contributors Page

 La página de Colaboradores de CNCF ofrece una lista bien organizada de proyectos de código abierto junto con el lenguaje de programación principal utilizado. Puedes hacer clic en un proyecto en particular, que te llevará a una sección que destaque el repositorio del proyecto, el sitio web oficial, sus identificadores de redes sociales y más.

GSOC Organizations

La página web de Google Summer of Code Organizations ofrece una lista completa de proyectos de código abierto a los que puedes contribuir.  El sitio web le ofrece un campo de búsqueda, funciones de clasificación y una vista de categorías para que puedas filtrar las que se corresponden con tu conjunto de habilidades.

Cuando estés listo, haz clic en la tarjeta de una organización y serás redirigido a su página web. A partir de ahí, puedes obtener más información al respecto y navegar por los proyectos disponibles y ver su código.

3. Comprende el proyecto

Una vez que has escogido el proyecto al que te interesa aportar tus conocimientos, deberás comprender cómo funciona tanto a nivel de software, como la forma en la que se estructura la comunidad que lo soporta. Puedes por ejemplo utilizar el software para un proyecto personal para tener una idea de cómo funciona y de qué forma está estructurado hasta que hayas familiarizado. Y si estás listo…

  • Únete a su mailing list: la mejor manera entender el código es unirse a la lista de correo oficial. Si es un gran proyecto, prepárate para ser bombardeado con correo tras correo que contenga problemas y solicitudes de características.Cuando te sientas con ánimos, puedes enviar un correo, presentarte y explicar que estás dispuesto a aportar tus conocimientos al proyecto. Comenzarás desde abajo, probablemente parchando un bug que esté al nivel de tus conocimientos.
  • Únete a su plataforma de comunicación: muchos proyectos de código abierto hacen uso Discord, Slack o alguna otra plataforma de comunicación para que los desarrolladores chateen entre ellos. Este es el siguiente espacio en el que tienes que estar.

4. Contribuye al proyecto

Te has familiarizado con el proyecto, te has presentado y has realizado alguna contribución menor. ¿Qué viene ahora? En GitHub por ejemplo, los desarrolladores enumeran errores y solicitudes de características en una sección etiquetada “Issues”. Puedes desplazarte por esta lista y encontrar un problema que te parezca solucionable. Ai estás empezando, haz clic en la opción Etiquetas y filtra la lista haciendo clic en “Good First Issues” o “For Beginners”.

Si no te sientes lo suficientemente seguro como para resolver un problema tú mismo, puedes filtrar los problemas con la etiqueta Help, Help wanted, o Help required. y que incluyen problemas en los que están trabajando algunos desarrolladores, pero que necesitan que les echen una mano.

¿Y si no sabes programar? Las personas que no saben programar también pueden contribuir al código abierto. Puedes ayudar a crear una interfaz de usuario para el sitio web del proyecto o mejorar el archivo o la documentación README existente para que sea comprensible para todos por ejemplo.

Ahora, todo lo que queda es solucionar un problema y crear un “Pull Request” para enviar tus cambios en el código para su aprobación. Si tus modificaciones solucionan el problema sin romper nada, el propietario del proyecto incorporará tu “Pull Request”y habrás completado tu primera contribución de código abierto. ¡Felicidades!

Periodista tecnológico con más de una década de experiencia en el sector. Editor de MuyComputerPro y coordinador de MuySeguridad, la publicación de seguridad informática de referencia.

Lo más leído