Tener contribuciones de código abierto agrega peso a su currículum y lo ayuda a sobresalir entre la multitud si desea ingresar al campo de TI.
La gente a menudo asocia el código abierto con proyectos a gran escala y programadores prodigio que codifican desde sus sótanos. Pero la realidad es diferente. Contribuir a un proyecto de código abierto es mucho más fácil de lo que piensas. Y ni siquiera necesita saber cómo programar para comenzar.
Paso 1: identificar sus habilidades y su pila tecnológica
Antes de saltar a GitHub u otras plataformas de desarrollo de software, debe analizar sus habilidades. Tal vez sea el desarrollo web con React. O si le gustan los sistemas operativos, puede ser competente en C y en el desarrollo de controladores de dispositivos.
Haga una lista de todas las tecnologías con las que está familiarizado, junto con algunas que quiera aprender en el camino. Luego, clasifique esas tecnologías según su experiencia para que pueda encontrar un proyecto que coincida con su dominio.
Tecnologías de requisitos previos
Todos los proyectos de código abierto utilizan un sistema de control de versiones, ya sea Git, Apache Subversion o Mercurial. Por lo tanto, es crucial informarse sobre cualquiera de estos sistemas de control de versiones, para que pueda participar activamente en el desarrollo del proyecto.
Paso 2: encontrar un proyecto de código abierto
El siguiente paso es buscar un buen proyecto de código abierto que actualmente se encuentra activo y abierto a aportes. Puede juzgar la popularidad de un proyecto observando su número de estrellas y bifurcaciones.
Pero, ¿dónde encuentras un proyecto? Aquí hay tres conocidas plataformas para buscar proyectos:
Dirígete a la página web de Organizaciones de Google Summer of Code para encontrar una lista completa de proyectos de código abierto actualmente abiertos a contribuciones. Y no, no necesita registrarse en GSoC para hacerlo.
El sitio web le brinda un campo de búsqueda, funciones de clasificación y una vista categórica de las organizaciones para que pueda filtrar las que no corresponden a su conjunto de habilidades.
Incluso puede buscar una tecnología específica y devolverá las organizaciones que usan esa tecnología en particular.
Cuando esté listo, haga clic en la tarjeta de una organización y accederá a su página web. Desde allí, puede obtener más información al respecto, navegar a través de los proyectos disponibles y ver su código.
Visite la página de colaboradores de CNCF y desplácese hacia abajo para encontrar una lista bien organizada de proyectos de código abierto junto con el lenguaje de programación principal utilizado.
Puede hacer clic en un proyecto en particular, que lo llevará a una sección que destaca el repositorio del proyecto, el sitio web oficial, los identificadores de redes sociales y más.
3. Temas de GitHub
Otra forma notable, y sin duda la mejor, de buscar proyectos de código abierto es usar GitHub. Si las organizaciones a gran escala que figuran en el sitio web de GSoC y CNCF lo asustan, tenga la seguridad de que puede encontrar muchos proyectos pequeños que ganan terreno en GitHub.
Elija un tema que le interese (por ejemplo, "desarrollo del kernel") y conéctelo a la siguiente URL:
https://github.com/topics/topic-name
Asegúrate de sustituir nombre del tema con la tecnología o el tema que le interesa.
GitHub devolverá proyectos en ese dominio en particular, incluidos detalles como su descripción, conteo de estrellas, etiquetas y más. Desde aquí, puede elegir cualquiera que despierte su interés y continuar desde allí.
Paso 3: Comprender una base de código de fuente abierta
Así que has finalizado un proyecto. Parece prometedor y el tema parece fascinante. Pero, ¿cómo haces para comprender todo el código base? Se siente como un hueso duro de roer, incluso para programadores experimentados.
Lo primero que debe saber es: si se trata de un gran proyecto de código abierto, lo más probable es que los desarrolladores lo habría dividido en secciones, y no necesita entender cada línea de código para poder contribuir. En su lugar, tenga una vista panorámica del proyecto y profundice en la sección con la que desea jugar.
También se recomienda que utilice el software en proyectos personales para tener una idea de cómo funciona. Esto le ayudaría a obtener más información sobre el software incluso cuando no esté trabajando directamente en él.
1. Únase a la lista de correo
La mejor manera de hacer consultas y comprender el código es unirse a la lista de correo oficial. Si se trata de un proyecto enorme, prepárese para recibir un bombardeo de correo tras correo con problemas y solicitudes de funciones. Verifique el archivo README del proyecto para la URL de la lista de correo.
Como principiante, puede enviar un correo electrónico indicando que es un recién llegado y que le gustaría contribuir al proyecto. La mayoría de los desarrolladores lo apreciarían y lo ayudarían con un error o problema que sea de su nivel.
2. Únete a la Plataforma de Comunicación del Proyecto
Muchos proyectos de código abierto tienen Discord, Slack o alguna otra plataforma de comunicación para que los desarrolladores conversen. Al igual que la URL de la lista de correo, puede encontrarlos en el archivo LÉAME de un proyecto.
Paso 4: Contribuir a un proyecto de código abierto
Ha establecido contacto con colaboradores existentes y se siente bastante seguro acerca del código. ¿Qué sigue?
Ahora es el momento de encontrar algunas frutas al alcance de la mano y solucionar un problema escribiendo código.
1. Encontrar buenos problemas primero en GitHub
En GitHub, los desarrolladores enumeran errores y solicitudes de funciones en una sección etiquetada Asuntos. Puede desplazarse por esta lista y encontrar un problema que le parezca solucionable. Para principiantes, haga clic en el Etiquetas opción y filtrar la lista haciendo clic en Buenos primeros números o Para principiantes.
2. Uso de goodfirstissue.dev
buenprimerasunto.dev es un fantástico sitio web que te facilita el trabajo. Agrega problemas para principiantes y buenos primeros de miles de repositorios y los enumera en un formato fácil de leer. Puede elegir problemas de un proyecto y filtrar la lista por idioma y tecnología utilizada.
Al hacer clic en una entrada, se expandirá y se mostrarán problemas que son ideales para principiantes que comienzan con contribuciones de código abierto.
Si no se siente lo suficientemente seguro como para resolver un problema usted mismo, puede filtrar los problemas con la etiqueta Ayuda, Se busca ayudante, o Se requiere ayuda. Los enumeran los desarrolladores que ya están trabajando en un problema pero que necesitan ayuda.
Ayudar a otra persona es una buena manera de encontrar un mentor y aprender más sobre el proyecto.
4. Embellecer la documentación o la interfaz de usuario
Las personas que no saben codificar también pueden contribuir al código abierto. Puede ayudar a crear una interfaz de usuario para el sitio web del proyecto o mejorar el archivo LÉAME o la documentación existente para que sea comprensible para los principiantes. Sin embargo, este último requiere que conozcas algunos fundamentos sobre el proyecto y su funcionamiento.
Puede encontrar problemas relacionados con la mejora del LÉAME o el desarrollo de una UI/UX para el sitio web del proyecto. Si no puede, envíe un correo electrónico al propietario del proyecto destacando sus habilidades y la razón por la que desea contribuir. La mayoría de los desarrolladores apreciarán la ayuda y lo ayudarán a participar.
Paso 5: Fusionar su primera solicitud de extracción
Ahora, todo lo que queda es solucionar un problema y crear una solicitud de extracción para enviar sus cambios al código para su aprobación. Puede usar Git para contribuir al proyecto. Si sus modificaciones solucionan el problema sin romper nada, el propietario fusionará su solicitud de extracción y habrá realizado su primera contribución de código abierto.
Si cometiste un error, puedes pedirles que despejen tus dudas antes de comenzar a trabajar en el problema nuevamente. De cualquier manera, se necesita tiempo, esfuerzo y persistencia para poder aprender un proyecto y contribuir a él.
Ahora eres un colaborador de código abierto
Ahora ha aprendido todo lo que necesita hacer, desde elegir un proyecto de código abierto hasta fusionar su primera solicitud de incorporación de cambios. Sin embargo, esto es solo el comienzo. Si te gusta el proyecto, puedes seguir contribuyendo y convertirte en un desarrollador conocido en la comunidad.
El código fuente abierto es diferente del código propietario. Debe conocer las características de cada uno y en qué se diferencian entre sí.