El artículo de Arman Keser aborda un problema común en proyectos de código abierto: la acumulación de solicitudes de extracción (PRs) que permanecen sin revisar durante largos periodos, a veces incluso años. El autor ilustra esto con su propia experiencia en el proyecto Jellyfin, donde sus PRs han estado esperando revisión durante más de un año, a pesar de tener aprobaciones. Este problema no es exclusivo de Jellyfin; proyectos populares como CPython y Vue.js también enfrentan desafíos similares, con grandes cantidades de PRs pendientes y un número limitado de mantenedores. La raíz del problema reside en la aplicación de la teoría de colas (queuing theory) a los procesos de desarrollo. Cuando un mantenedor alcanza un nivel de utilización cercano al 100%, las colas de PRs crecen exponencialmente, lo que significa que el tiempo de espera aumenta drásticamente. La fórmula M/M/1 de la teoría de colas ilustra esto: un nivel de utilización del 95% implica una espera 19 veces mayor. Además, el artículo destaca el efecto de la 'espiral de muerte' por tamaño de lote: PRs grandes tardan más en revisarse, lo que lleva a los contribuyentes a agrupar más cambios, lo que a su vez aumenta el tamaño de los PRs y perpetúa el ciclo. La falta de retroalimentación rápida también desmotiva a los contribuyentes, ya que el contexto se pierde con el tiempo y la reintegración (rebasing) se vuelve más compleja. Un estudio reciente confirma que los obstáculos impuestos por los mantenedores son una causa común de abandono de PRs. La solución propuesta no es simplemente encontrar más mantenedores, sino optimizar el flujo de trabajo del mantenedor existente. Esto implica limitar el tamaño de los PRs (sugerido un máximo de 300 líneas), mejorar la calidad de los PRs antes de llegar al mantenedor (asegurando pruebas, descripciones claras y resolución de conflictos de combinación) y aplicar los principios de la Teoría de Restricciones para maximizar el valor del cuello de botella (el mantenedor). En resumen, el artículo ofrece una perspectiva valiosa sobre los desafíos de la gestión de contribuciones en proyectos de código abierto y propone soluciones prácticas para mejorar la eficiencia y la experiencia de los contribuyentes.
