En primer lugar, la pregunta tiene dos partes. La descripción se refiere a la creación de software de forma gratuita en lugar de la pregunta que se refiere a proporcionar el código fuente de forma gratuita junto con la funcionalidad en sí misma que puede tener un costo o no. Contestaré ambas preguntas juntos.
Hay varios aspectos, ya sea individualmente o en alguna combinación, que hacen que las personas participen en código abierto. Los enumero a continuación, sin ningún orden en particular.
El primer aspecto es la escala. En la mayoría de los casos, muchos desarrolladores están interesados en obtener la funcionalidad y (suponiendo que el producto sea realmente valioso para un segmento de usuarios), el esfuerzo y el costo requeridos para lograr que el mismo conjunto de desarrolladores de alta calidad se unan en tal proyecto en un sentido comercial puede no ser factible para un desarrollador. Sin embargo, al trabajar en una parte del proyecto en su tiempo libre, el mismo conjunto de desarrolladores puede darle vida al producto, en muchos casos con una calidad comparable o mejor de un producto comercial similar.
El segundo aspecto es la flexibilidad. Por mucho que una persona tome la pintura como un pasatiempo y trabaje en una pintura a su propio ritmo sin presión externa o la influencia jerárquica corporativa de su trabajo diario, un desarrollador puede ser un apasionado de su idea que puede ser muy difícil de vender a su empleador financiar. Luego lo crea en el modelo gratuito y consigue que otros apasionados se unan. En las primeras etapas, puede contribuir al proyecto en su tiempo libre, sin la presión de un proyecto de desarrollo comercial concertado. A medida que el proyecto evoluciona, según la disponibilidad de los desarrolladores que trabajan en él, puede surgir un cronograma.
- ¿Cuál es la acción legal más poco ética que conoces?
- ¿Tiene la sensación de que las personas son más “hostiles” en línea?
- ¿Es incorrecto dar Kindles registrados en mi propia cuenta como regalos?
- ¿Cuáles son los mejores recursos para el estudio de Internet y la ética?
- ¿Cuáles son sus posiciones filosóficas en un párrafo?
El tercer aspecto es la variedad. Una buena idea presentada a la comunidad de código abierto puede hacer que una gran cantidad de personas de diversos orígenes y experiencias contribuyan, mientras que las personas que trabajan en ella dentro de la misma empresa compartirán las limitaciones de la cultura de esa corporación.
El cuarto aspecto es el aprendizaje. Puedo comenzar con la intención de entender el código fuente de Ruby. A medida que avanzo, puedo encontrar y registrar algunos errores, corregir algunos errores, crear una nueva función, etc.
El quinto aspecto es la autopromoción. La mayoría de los trabajos de software actuales tienen muchas más probabilidades de contratar a un desarrollador con un rico perfil de github que un currículum con mucha experiencia.
El sexto aspecto es la monetización. Si bien un software puede ser gratuito, las personas lo usan como un canal para ganar dinero de otras maneras: atención al cliente, variante de empresa comercial, productos comerciales que se basan en la variante gratuita, etc.
El séptimo aspecto es de interés común: en un entorno colaborativo como un proyecto de código abierto, todos los desarrolladores están interesados en crear el producto y nada más. Aquí se minimizan otros factores que afectan a la mayoría de los desarrolladores de productos comerciales: políticas de la compañía, otros equipos de la compañía, diferentes aspectos de los modelos de ingresos, etc.
El octavo aspecto es la satisfacción. A las personas les encanta ver que algo que crean sea lanzado y en manos de sus usuarios y en un producto gratuito, la satisfacción del cliente es la gran recompensa, y tal vez la única, medible.
El noveno aspecto es la selección natural: cada desarrollador en el mundo puede bifurcar un proyecto de código abierto y crear su propia variante. Las mejores variantes sobreviven y las menores perecen. A veces sobreviven múltiples variantes para diferentes casos de uso. En un producto comercial, hay varios factores externos que frenan este efecto de selección natural global. El desarrollador comercial puede patentar las ideas, cerrar el código o hacer otras cosas para desactivar la evolución libre de la funcionalidad.