Yolo Vision Shenzhen
Shenzhen
Únete ahora

Consejos para empezar a contribuir a los proyectos de código abierto Ultralytics

Abirami Vina

4 minutos de lectura

28 de agosto de 2024

Aprenda a contribuir a los proyectos de código abierto Ultralytics y explore los mejores consejos relacionados con la documentación, la revisión de PR y el uso de herramientas esenciales.

La base del software de código abierto es la colaboración, el aprendizaje y el intercambio. Los proyectos de código abierto son una excelente manera de que las personas se unan para construir algo más grande que ellas mismas. En Ultralytics, llevamos los principios del código abierto en el corazón y siempre le animamos a contribuir a nuestros proyectos de código abierto. 

Si tiene ganas de contribuir, ya sea escribiendo documentación, revisando código o resolviendo problemas, pero no está seguro de por dónde empezar o se enfrenta a algunos problemas, estamos aquí para ayudarle a empezar. En este artículo, le daremos algunos consejos para empezar a contribuir a los proyectos de código abierto Ultralytics . Entremos de lleno.

La importancia de las contribuciones de la comunidad Ultralytics

Antes de echar un vistazo a cómo contribuir, respondamos a la pregunta de por qué las contribuciones son tan cruciales. Creemos firmemente en la importancia de las contribuciones de la comunidad Ultralytics . Al participar en nuestros proyectos de código abierto, usted hace algo más que ayudarnos a construir un software mejor. Los colaboradores desempeñan un papel clave para garantizar que nuestra tecnología siga siendo abierta, colaborativa y en constante evolución. Sus contribuciones hacen que nuestros proyectos sigan siendo prósperos, accesibles y beneficiosos para usuarios y desarrolladores de todo el mundo.

Más allá de crear software de vanguardia, contribuir a los proyectos Ultralytics es también una fantástica oportunidad para crecer. Puedes desarrollar tus habilidades de codificación, resolución de problemas y trabajo en equipo mientras trabajas junto a desarrolladores experimentados que pueden ofrecerte orientación y compartir las mejores prácticas. Sus esfuerzos pueden tener un impacto real en las herramientas utilizadas por miles de personas en todo el mundo. Participar en nuestra comunidad también puede ayudarte a ampliar tu red profesional, abrir nuevas oportunidades y mejorar tu cartera para que destaques ante los empleadores.

Fig. 1. Razones para contribuir. Imagen del autor.

Cómo empezar con las contribuciones de código abierto Ultralytics

Un buen punto de partida es consultar la guía oficial de contribuciones Ultralytics . Está repleta de buenas prácticas y consejos que le ayudarán a sacar el máximo partido de sus contribuciones. El primer paso sería familiarizarse con lo que ya forma parte del proyecto mediante la comprensión de las directrices de contribución y la inmersión en el código. 

Tanto si quieres contribuir al desarrollo como si sólo quieres explorar el código más reciente, el siguiente paso es clonar el repositorio Ultralytics . Una vez hecho esto, puedes ir al directorio del proyecto e instalar el paquete en modo editable, como se muestra en el siguiente fragmento de código.

Si necesita ayuda, nuestra guía de inicio rápido tiene todo lo que necesita para empezar sin problemas.

Diferentes áreas para contribuir

Una vez que haya configurado su entorno y esté familiarizado con el proyecto, puede explorar las diferentes áreas en las que puede tener un impacto significativo. Ultralytics ofrece varias formas de participar, y puedes elegir cómo contribuir en función de tus habilidades e intereses. 

Aquí tiene un vistazo a algunas de las opciones:

  • Documentación: Contribuir a la documentación es una excelente manera de sumergirse en el proyecto mientras perfecciona sus habilidades de escritura. Puede ayudar mejorando la documentación existente, agregando detalles faltantes o creando nuevas guías que faciliten la contribución de otros.
  • Corrección de errores: Si tienes experiencia en programación, considera la posibilidad de trabajar en la corrección de errores. Estos pueden variar desde ajustes menores hasta problemas más complejos, lo que te da la oportunidad de tener un impacto tangible en el proyecto.
  • Mejoras de funciones: Para aquellos que están listos para profundizar, trabajar en mejoras de funciones puede ser a la vez desafiante y gratificante. Esto podría implicar agregar nuevas funciones, mejorar las existentes o trabajar en la hoja de ruta del proyecto.
  • Revisiones de pull requests: Revisar los pull requests es otra forma valiosa de contribuir, especialmente si está familiarizado con los estándares y las mejores prácticas del proyecto. Al proporcionar comentarios y sugerir mejoras, ayuda a mantener la calidad y la integridad del código base.
  • Discusiones en la comunidad: Participar en discusiones en la comunidad es una excelente manera de contribuir si disfrutas de la colaboración y el intercambio de ideas. Participa en conversaciones en curso, propone nuevas ideas o ayuda a otros ofreciendo tus conocimientos y soluciones.

Cada una de estas áreas ofrece una forma única de contribuir, y usted puede elegir la que mejor se alinee con sus fortalezas e intereses. Recuerde, cada contribución, por pequeña que sea, desempeña un papel clave para ayudar a Ultralytics a crecer y evolucionar.

Fig. 2. Cada contribución es valorada en nuestra creciente comunidad. Fuente de la imagen: Envato Elements.

Contribución a la documentación de código abierto Ultralytics

Cuando contribuya a la documentación Ultralytics , asegúrese de revisar la documentación existente y comprobar si hay problemas o discusiones que destaquen áreas que necesiten mejoras. De este modo, se asegurará de que sus contribuciones se centran donde más se necesitan. 

Al escribir o editar, tenga en cuenta que es fundamental seguir las directrices del proyecto para mantener la coherencia. Aquí tiene algunos consejos de formato:

  • Utiliza siempre Markdown .
  • Comience cada documento con una introducción clara y mantenga su lenguaje simple y accesible.
  • Utilice viñetas para las listas, texto descriptivo para los enlaces e imágenes de menos de 1 MB para que las páginas se carguen rápidamente.
  • En caso de que tenga preguntas sobre el formato, una forma fácil de verificar su formato es revisar cómo se ha formateado la documentación anterior.
Fig. 3. Un ejemplo de formato Markdown (a la izquierda) y el documento final visualizado (a la derecha). Imagen del autor.

Una vez que hayas hecho tu borrador, es importante previsualizarlo construyendo la documentación localmente. Puedes detectar cualquier problema antes de enviarlo. Para ello, empieza por clonar el repositorio y navegar al directorio del proyecto:

A continuación, puedes instalar las dependencias necesarias:

Finalmente, ejecute la documentación localmente para revisar sus cambios:

Puede ver la documentación creada localmente navegando a `http://127.0.0.1:8000/` en su navegador web. 

Después de revisar la claridad, la precisión y la coherencia, puedes enviar una solicitud de extracción con una descripción clara del documento que has creado. Asegúrate de colocar el documento en la sección apropiada según dónde pertenezca y encaje mejor (guías, soluciones, integraciones, etc.). Consulta también el archivo index.md para las secciones relevantes y el archivo mkdocs.yml general, y realiza las actualizaciones necesarias. La atención al detalle ayudará a que el proceso de revisión se desarrolle sin problemas y garantizará que tu contribución esté bien integrada en el proyecto.

Cosas a tener en cuenta al contribuir al código de código abierto

Al realizar contribuciones de código al proyecto Ultralytics , es importante seguir las mejores prácticas que ayudan a garantizar que su código es limpio, fácil de mantener y fácil de integrar. Estos son algunos puntos clave a tener en cuenta:

  • Evite la duplicación de código: Reutilice el código existente siempre que sea posible y minimice los argumentos innecesarios.
  • Realice cambios más pequeños y específicos: Céntrese en cambios más pequeños y específicos en lugar de grandes modificaciones.
  • Simplificar o eliminar código: Busca oportunidades para simplificar el código o eliminar partes innecesarias.
  • Escriba docstrings eficaces: Explique claramente lo que hace su código y enlace a los recursos relevantes.
  • Evite dependencias innecesarias: Solo añada dependencias si son absolutamente necesarias.
Fig. 4. Mejores prácticas de documentación de código fuente.

También es esencial tener en cuenta el mantenimiento a largo plazo del código base. Antes de realizar cualquier cambio, pregúntese si sus modificaciones podrían romper el código existente de alguien que utilice Ultralytics. Si es así, piense en cómo solucionarlo y asegúrese de que sus cambios sean lo más compatibles posible.

Una vez que hayas desarrollado un fragmento de código para contribuir, tendrás que probarlo. Puedes utilizar frameworks como pytest para probar tus cambios antes de enviarlos. El formato coherente del código es otro aspecto muy importante de tu contribución. Herramientas como Ruff Formatter pueden ayudarte a mantener la coherencia estilística y a detect cualquier error lógico o incoherencia en tu código. 

Revisión de "pull requests"

Revisar pull requests (PRs) es una buena forma de contribuir. Un PR se genera cuando alguien solicita fusionar sus cambios en el proyecto principal. Ayuda a mantener el proyecto Ultralytics funcionando sin problemas. Cuando revises un PR, asegúrate de que entiendes por qué se han hecho los cambios. El autor debe explicar claramente el propósito y los beneficios de la actualización, y usted debe ver evidencia de pruebas exhaustivas en su PR. 

Fig 5. ¿Qué es una "pull request"?

Repasemos algunos aspectos clave en los que hay que centrarse.

  • Compruebe si hay pruebas unitarias: Compruebe que la solicitud de incorporación incluye pruebas para las nuevas funciones o cambios para confirmar que el código funciona como se espera y no introduce problemas.
  • Revisar las actualizaciones de la documentación: Verificar que la documentación se actualice para reflejar los cambios o las nuevas características, incluyendo ejemplos, referencias de la API y otros detalles relevantes.
  • Evaluar el impacto en el rendimiento: Considere cómo los cambios afectan el rendimiento. Si es necesario, solicite pruebas comparativas de rendimiento o pruebas adicionales.
  • Verificar pruebas de CI: Asegúrese de que todas las pruebas de Integración Continua (CI) estén pasando, incluyendo las comprobaciones de formato del código y los resultados de las pruebas unitarias.
  • Colaborar en las correcciones: Si alguna prueba falla, trabaje con el autor para resolver los problemas antes de aprobar la solicitud de incorporación de cambios (PR).

Como revisor, asegúrese de proporcionar comentarios específicos y claros sobre cualquier problema o inquietud. Ofrezca sugerencias de mejora y haga preguntas que ayuden al autor a reflexionar sobre posibles problemas. Anímelo a seguir las mejores prácticas en codificación, pruebas y documentación, y no dude en indicarle los recursos que pueden ayudar. Por último, pero no menos importante, reconozca siempre el esfuerzo que el autor ha dedicado a la PR. Los comentarios positivos ayudan a mantener un ambiente amigable y de colaboración en la comunidad de código abierto.

Contribuir tiene que ver con la comunidad

Contribuir a proyectos de código abierto como Ultralytics puede darle un inspirador sentido de comunidad. Ya sea escribiendo código, revisando relaciones públicas, actualizando documentación o participando en debates, cada esfuerzo ayuda a que el proyecto crezca y evolucione. Responder a cuestiones o participar en conversaciones, ya sea en GitHub, Discord, Subreddit u otros foros, es una forma valiosa de contribuir y conectar con los demás. Recuerda que tus contribuciones, por pequeñas que sean, tienen un impacto significativo y ayudan a fomentar un entorno de colaboración y apoyo para todos los implicados.

En Ultralytics, nos apasiona impulsar la innovación en la comunidad de código abierto. Manténgase al día de nuestros últimos desarrollos visitando nuestro repositorio de GitHub. Únase a nuestra vibrante comunidad y vea cómo estamos influyendo en sectores como la agricultura y la fabricación.

¡Construyamos juntos el futuro
de la IA!

Comience su viaje con el futuro del aprendizaje automático

Comienza gratis