Es parte de la filosofía de código abierto de "si quieres hacer algo, toma una pala". Naturalmente, reduce la carga de trabajo de los desarrolladores si los usuarios simplemente compilan el programa ellos mismos. No hay que preocuparse por todas esas arquitecturas, sistemas operativos, etc.
Pero, si está haciendo un producto a nivel de consumidor (Firefox, Paint.NET, Audacity, Keepass, etc.) y le interesa adquirir usuarios, ¡ siempre debe , siempre, siempre! Incluye binarios. Probablemente solo el 2% de las personas que tropiezan en su sitio web y están interesadas en su producto, van a:
- Descargue el cliente SCM apropiado
- Mira una copia completa del árbol fuente
- Descargue el IDE o las herramientas de compilación necesarias (fácilmente varios cientos de MB para algunos proyectos)
- Descargue e instale todas las dependencias necesarias (y establezca variables de entorno)
- Ejecute una compilación nueva (fácilmente un proceso de 10 minutos en algunos proyectos)
- Trate cualquier error o problema o surja (que en proyectos pequeños probablemente no esté documentado: "¡oh, sí, lo último está realmente en la reescritura de ramas, no en el tronco!")
- Desinstale todo o déjelo todo en su computadora y vuelva a compilarlo para obtener actualizaciones.
(Obviamente, en Linux, las cosas son mucho más sensatas, pero la mayoría de los consumidores aún usan Windows).
Es mucho más fácil para los recién llegados decir "¡Oh, versión de Windows! Descargar. Ejecutar".
Sin embargo, muchos proyectos de código abierto no son a nivel del consumidor; se dirigen a los programadores, que tienen una tolerancia mucho mayor para este tipo de prueba, por lo que los binarios son bricolaje. Sin embargo, en mi experiencia, los programadores pueden ser tan vagos como los usuarios, así que ten cuidado. :)