Al hacer clic en “Aceptar todas las cookies”, aceptas el almacenamiento de cookies en tu dispositivo para mejorar la navegación del sitio, analizar el uso del sitio y ayudar en nuestros esfuerzos de marketing. Más información
Configuración de cookies
Al hacer clic en “Aceptar todas las cookies”, aceptas el almacenamiento de cookies en tu dispositivo para mejorar la navegación del sitio, analizar el uso del sitio y ayudar en nuestros esfuerzos de marketing. Más información
Aprenda a contribuir a los proyectos de código abierto de Ultralytics y explore los mejores consejos relacionados con la documentación, la revisión de las 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 para que las personas se unan para construir algo más grande que ellos mismos. En Ultralytics, tenemos muy presentes los principios del código abierto y siempre te animamos a contribuir a nuestros proyectos de código abierto.
Si le entusiasma 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 guiaremos a través de algunos consejos para empezar a contribuir a los proyectos de código abierto de Ultralytics. ¡Vamos a sumergirnos de lleno!
La importancia de las contribuciones de la comunidad de 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 de Ultralytics. Al participar en nuestros proyectos de código abierto, estás haciendo más que solo ayudarnos a construir un mejor software. Los contribuyentes juegan un papel clave para asegurar que nuestra tecnología permanezca abierta, colaborativa y en constante evolución. ¡Tus contribuciones mantienen nuestros proyectos prosperando, accesibles y beneficiosos para usuarios y desarrolladores de todo el mundo!
Más allá de crear software de vanguardia, contribuir a los proyectos de Ultralytics es también una oportunidad fantástica para que crezcas. 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. Tus esfuerzos pueden tener un impacto real en las herramientas utilizadas por miles de personas en todo el mundo. Interactuar con nuestra comunidad también puede ayudarte a expandir tu red profesional, abrir nuevas oportunidades y mejorar tu portafolio para que destaques ante los empleadores.
Fig. 1. Razones para contribuir. Imagen del autor.
Cómo empezar a contribuir al código abierto de Ultralytics
Un gran lugar para empezar es consultar la guía oficial de contribución de Ultralytics. Está repleta de buenas prácticas y consejos para ayudarte a aprovechar al máximo tus contribuciones. El primer paso sería familiarizarte con lo que ya forma parte del proyecto comprendiendo las directrices de contribución y sumergiéndote en el código.
Ya sea que quieras contribuir al desarrollo o simplemente explorar el código más reciente, el siguiente paso es clonar el repositorio de Ultralytics. Una vez que hayas hecho eso, puedes ir al directorio del proyecto e instalar el paquete en modo editable, como se muestra en el fragmento de código a continuación.
Una vez que hayas configurado tu entorno y estés familiarizado con el proyecto, puedes explorar las diferentes áreas donde puedes 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 puedes elegir la que mejor se adapte a tus puntos fuertes e intereses. Recuerda que 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.
Contribuyendo a la documentación de código abierto de Ultralytics
Al contribuir a la documentación de Ultralytics, asegúrese de revisar la documentación existente y comprobar si hay problemas o debates que destaquen áreas que necesitan mejoras. Hacerlo ayuda a garantizar que sus contribuciones se centren 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:
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 ayuden a garantizar que su código sea limpio, fácil de mantener y fácil de integrar. Estos son algunos puntos clave que debe 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í, considere cómo abordar esto 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 usar frameworks como pytest para probar tus cambios antes de enviarlos. El formato consistente del código es otro aspecto de tu contribución que es muy importante. Herramientas como Ruff Formatter pueden ayudarte a mantener la consistencia estilística y detectar cualquier error lógico o inconsistencia en tu código.
Revisión de "pull requests"
¡Revisar "pull requests" (PR) es una excelente manera de contribuir! Se crea un PR cuando alguien solicita fusionar sus cambios en el proyecto principal. Ayuda a que el proyecto Ultralytics funcione sin problemas. Cuando revise un PR, asegúrese de comprender por qué se realizaron 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.
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 brindarte una inspiradora sensación de comunidad. Ya sea que estés escribiendo código, revisando PRs, actualizando documentación o participando en debates, cada esfuerzo ayuda a que el proyecto crezca y evolucione. Responder a problemas o participar en conversaciones, ya sea en GitHub, Discord, Subreddit u otros foros, es una forma valiosa de contribuir y conectarse con otros. Recuerda, tus contribuciones, sin importar cuán pequeñas sean, tienen un impacto significativo y ayudan a fomentar un entorno colaborativo y de apoyo para todos los involucrados.
En Ultralytics, nos apasiona impulsar la innovación en la comunidad de código abierto. Mantente al tanto de nuestros últimos desarrollos visitando nuestro repositorio de GitHub. Únete a nuestra vibrante comunidad y descubre cómo estamos impactando en industrias como la agricultura y la fabricación.