Cómo contribuir a proyectos de código abierto
Sam Hepburn
17 de octubre de 2022
0 minutos de lecturaComo desarrollador, probablemente dependes del código abierto todos los días. El código abierto es muy beneficioso para crear y mejorar productos, ya sean personales o profesionales. Pero ¿te has planteado ir un paso más allá y contribuir también a proyectos de código abierto? Este enfoque puede ayudarte a mejorar tus habilidades y generar un impacto positivo en la comunidad de desarrollo de software en general.
Sin embargo, dar el primer paso puede parecer difícil. ¿Por dónde empezar? ¿Cómo puedes integrarte en las comunidades y los foros que rodean a los proyectos de código abierto? ¿Cómo puedes superar el miedo a equivocarte? Aunque estos obstáculos pueden parecer grandes, puedes superarlos cuando entiendes cómo funciona el código abierto.
¿Por qué contribuir al código abierto?
Por definición, el código abierto es código fuente disponible públicamente que se puede consultar, modificar y distribuir según requisitos específicos de licencia. La posibilidad de usar el código abierto ha creado de forma natural una comunidad de desarrolladores que crean nuevos proyectos y mejoran los existentes para beneficiar a toda la comunidad de desarrollo.
Lo que comenzó como código fuente fácilmente disponible se ha convertido en un espacio para conversar, innovar y contribuir. Hablemos de las principales razones por las que podrías elegir contribuir a proyectos de código abierto, en lugar de simplemente usarlos.
Para contribuir al software del que dependes
¿Tienes algunos componentes de código abierto a los que recurres con frecuencia? Como los conoces tan bien, es más probable que detectes errores en ellos. Muchos desarrolladores eligen contribuir a los proyectos que usan con frecuencia simplemente porque los conocen bien y quieren corregir los errores que encuentran.
Para formar parte de una comunidad más grande
Al contribuir a un proyecto, te unes a una comunidad más amplia de usuarios y colaboradores. Gracias a estos vínculos, puedes encontrar oportunidades para enseñar a otras personas, conocer gente con intereses en común y aprender de desarrolladores con más experiencia. Además, pueden convertirse en excelentes recursos para encontrar oportunidades laborales y crecer profesionalmente.
Mejora tus habilidades y empodérate
Si quieres perfeccionar tus habilidades en un área en particular, contribuir al código abierto es una excelente forma de empezar. Puedes elegir proyectos según las habilidades específicas que quieras desarrollar y apoyarte en la comunidad para mejorar. El proceso de aprendizaje y colaboración también te ayudará a mejorar la creación de documentación y la manera de explicar tu trabajo a otras personas, lo que te convertirá en un mejor miembro del equipo.
Además, podrías ganar confianza. Contribuir incluso con un pequeño cambio a un proyecto que beneficia a la siguiente persona que lo use es una experiencia que te empodera.
Proyectos de código abierto para principiantes
Si estás empezando a desarrollar en código abierto, quizá tengas el síndrome del impostor o miedo a arruinar el proyecto de alguien más (un miedo válido). Aquí tienes algunas sugerencias para superar estos obstáculos.
Elige tus proyectos con estrategia
Como principiante, no te conviene elegir un proyecto demasiado complejo o desafiante. Empieza con algo sencillo y aumenta la dificultad poco a poco.
Una forma de hacerlo es elegir un proyecto que use un ecosistema que conozcas. Busca uno que utilice tecnologías con las que estés familiarizado y que tenga buen mantenimiento. Algunas señales de buen mantenimiento son un archivo read me claro, evidencia de que los problemas del repositorio se han resuelto por completo y actualizaciones frecuentes del código.
Para aprovechar al máximo la experiencia, busca un proyecto de código abierto al que sepas que puedes hacer varias contribuciones y con cuyo equipo puedas crear una relación duradera.
Respeta las reglas
El objetivo del código abierto es colaborar. Hay reglas para garantizar que ningún desarrollador sabotee un proyecto. Aunque las reglas varían según el proyecto, pueden incluir requisitos sobre el nivel de detalle de la documentación de los cambios o un proceso paso a paso para enviar cambios nuevos en una plataforma o foro específico (por ejemplo, GitHub).
Por supuesto, las reglas no escritas que suelen entender quienes forman parte de la comunidad no estarán documentadas. Aquí tienes algunas que te conviene conocer desde el principio:
Cuando empieces a trabajar en un proyecto, tómate el tiempo para entender bien en qué puedes contribuir y en qué no.
Pregunta antes de tomar un issue.
Cuando decidas hacer un cambio, mantente disponible para responder a tiempo a las solicitudes de seguimiento.
Prepárate para recibir revisiones, comentarios e incluso objeciones del equipo principal que administra el proyecto en tus pull requests.
Lo más importante es aprender de tus errores. Muchos desarrolladores evitan hacer cambios simplemente porque temen equivocarse y que otras personas los critiquen. Sin embargo, aprender de los errores es uno de los mayores beneficios de contribuir al código abierto. Te da la oportunidad de practicar, desarrollar tus habilidades y aprender continuamente a pedir ayuda.
Tipos de contribuciones
Hay varias formas de contribuir a un proyecto de código abierto, y no todas implican hacer cambios en el código. Mientras revisas las bibliotecas de proyectos para encontrar una que se ajuste a tus habilidades y objetivos de crecimiento, considera también los siguientes tipos de contribuciones que puedes hacer a la comunidad en general.
Compartir comentarios como usuario
Si usas un proyecto con frecuencia, comparte comentarios honestos. Por lo general, las comunidades de código abierto se organizan en torno a algún tipo de foro o servidor. Revisa los hilos del proyecto en Reddit, su canal de Discord, las conversaciones en GitHub, etc. Desde allí, puedes participar en las conversaciones y compartir comentarios que el equipo principal y otros colaboradores podrían usar para mejorar el proyecto.
Escribir código
Como mencionamos en esta publicación, una de las formas más importantes y directas de contribuir a un proyecto es corregir o crear código para que funcione mejor. Busca problemas que la comunidad haya señalado o destacado y empieza por ahí. Asegúrate de seguir las pautas establecidas por quienes administran el proyecto.
Avisar al equipo principal del proyecto sobre cualquier error
Otra forma sencilla, pero muy valiosa, de ayudar a la comunidad es avisar directamente al equipo principal del proyecto sobre cualquier error que encuentres. Así, podrán intervenir y hacer cambios que mejoren el software para todos.
Sugerir cambios en la documentación
Mantener actualizada la documentación de código abierto es una tarea abrumadora. Hay que actualizarla con regularidad y constancia, prestando mucha atención a la información nueva, los errores y los problemas de ortografía. En la comunidad de código abierto, esto resulta aún más difícil porque todos contribuyen de forma voluntaria.
Sin embargo, actualizar la documentación es una tarea importante, ya que los cambios pueden incluir información que afecta la funcionalidad y la seguridad del código. Tanto el equipo principal de un proyecto de código abierto como sus usuarios agradecen que los miembros de la comunidad editen o actualicen la documentación, para garantizar que los proyectos se puedan usar de forma libre y segura.
Ayudar a los usuarios nuevos
Si formas parte del foro o servidor de un proyecto y tienes experiencia con el código, tómate el tiempo para responder las preguntas o inquietudes de los usuarios nuevos. Puedes compartir información útil, como soluciones alternativas para problemas específicos, o dar tu opinión sobre temas importantes como DevOps, SecOps y la seguridad desde el diseño.
Crear contenido propio sobre el proyecto
Si tienes un canal de YouTube, un blog u otra cuenta en redes sociales, puedes contribuir de forma positiva a la comunidad de código abierto creando contenido escrito o en video sobre cómo usar el proyecto.
Empieza hoy
Contribuir a un proyecto de código abierto no requiere habilidades excepcionales ni años de experiencia. Puedes empezar desde donde estás, con tu trayectoria profesional, tus habilidades y tu nivel de experiencia actuales.
Unirte a una comunidad de código abierto te da la oportunidad de mejorar y adquirir experiencia, además de participar en un debate global sobre cómo crear el mejor código posible y, en última instancia, mejorar la tecnología para todos.
En Snyk, nuestro equipo se enorgullece de formar parte de este debate continuo con nuestras herramientas para mejorar la seguridad y la calidad de los componentes de código abierto.
Preguntas frecuentes
¿Cómo contribuir al código abierto en GitHub?
GitHub es uno de los lugares más comunes para encontrar componentes de código abierto. Para contribuir a proyectos en este sitio, tendrás que copiar en GitHub la parte del proyecto que quieras cambiar (un proceso conocido como crear un fork), clonarla en tu computadora, hacer y subir los cambios y, luego, crear un pull request para que el propietario del proyecto pueda revisar tu trabajo.
¿Dónde encontrar proyectos de código abierto?
El código abierto está disponible en internet para que lo uses y contribuyas a él. Algunos excelentes lugares para buscar son GitHub, Gitlab y SourceForge. Además, algunos sitios, como Up For Grabs, Ovio y First Contributions, ofrecen una selección de proyectos para principiantes.
Empieza con los desafíos de Capture the Flag
Aprende a resolver desafíos de captura la bandera con nuestro taller virtual introductorio a pedido.
