Mi Primer PR: Inmersión en la Contribución al Código Abierto relata cómo pasé de revisar código a contribuir activamente en el repositorio de un compañero, implementando una bandera --recent y su atajo -r para un empaquetador de repositorios pensado para LLMs.
La idea fue simple y práctica: añadir un filtro What s New que empaqueta solo los archivos modificados en los últimos siete días. Aunque la funcionalidad parece pequeña, me obligó a recorrer todo el flujo abierto del desarrollo colaborativo, desde la propuesta hasta la integración en el código principal.
Primero presenté una issue en el repositorio describiendo la característica, su uso sugerido pack-repo.py . --recent y los beneficios. Esta comunicación previa es esencial para respetar al mantenedor del proyecto. Tras la aprobación hice fork del repositorio, lo cloné y creé una rama aislada git checkout -b feature/add-recent-flag para no afectar la rama principal.
Una vez implementada y probada la funcionalidad llegó el momento del Pull Request. Redacté la descripción con un resumen de cambios, instrucciones para probar la bandera y referencié la issue original incluyendo Fixes #[numero-de-issue] para cerrar el ciclo de propuesta a solución. Ver ese vínculo entre problema y arreglo fue muy gratificante.
En lo técnico la clave fue trabajar con el sistema de archivos y las fechas en Python. Utilicé pathlib para leer metadatos; file_path.stat().st_mtime devuelve el timestamp de modificación. Para comparar empleé datetime y timedelta de esta forma datetime.now().timestamp() - file_mod_time <= timedelta(days=7).total_seconds() que determina si un archivo se modificó en la última semana. El reto fue integrar esta lógica sin ensuciar la estructura existente: la función write_struct_tree que recorre directorios necesitó un nuevo parámetro booleano recent_only que se propaga en las llamadas recursivas para aplicar el filtrado condicional.
Al testear apareció un caso clásico: el script contenía su propio fichero de salida entre los resultados porque output.txt se creaba antes de escanear el directorio, por lo que siempre era el archivo más reciente. La solución fue pasar el nombre del archivo de salida a la función de descubrimiento y saltarse explícitamente cualquier archivo con ese nombre.
Esta experiencia me convirtió de programador individual en colaborador abierto y reforzó buenas prácticas de comunicación, pruebas y respeto por la base de código ajena. En Q2BSTUDIO, empresa de desarrollo de software que ofrece aplicaciones a medida y soluciones de inteligencia artificial, fomentamos precisamente ese enfoque colaborativo para entregar software a medida robusto y seguro. Si buscas potenciar tus proyectos con capacidades de IA para empresas o agentes IA podemos ayudarte a integrar modelos y flujos de trabajo a medida con nuestros servicios de servicios de inteligencia artificial y desarrollar aplicaciones específicas según tus necesidades con software a medida.
Además ofrecemos experiencia en ciberseguridad, pentesting, servicios cloud aws y azure, servicios inteligencia de negocio y Power BI para cerrar el ciclo desde la ideación hasta la operación segura y escalable de tus soluciones.
Contribuir a proyectos open source no solo mejora el código, también mejora habilidades y procesos que aplicamos en Q2BSTUDIO para crear aplicaciones a medida, soluciones cloud y servicios de inteligencia de negocio de alto valor.