A muchos de ellos se les paga para trabajar en software de código abierto.
Imagina que eres Google. Está desarrollando un sistema operativo móvil basado en Linux (Android). Quieres alguna funcionalidad que no esté en Linux, ¿qué haces?
Bueno, le pagas a alguien para que lo escriba. Y debido a que Linux es de código abierto, sus contribuciones también serán de código abierto.
- ¿Por qué querría trabajar en Facebook?
- ¿Cuánto más rápido es CoreFoundation que Cocoa / Cocoa Touch?
- Si pudiera volver a implementar la World Wide Web desde cero, incluidas todas las tecnologías y protocolos relevantes, ¿qué haría de manera diferente?
- ¿Cómo es el futuro de la gente de software en Alemania, especialmente en tecnología Java?
- Cómo mapear bandas en Google Maps según el tiempo de viaje
En realidad, no tienes que imaginar esto. Esto realmente está sucediendo. El 2.4% de las contribuciones a Linux son de Google, y eso es mucho. Google y Samsung se disparan en la lista de los 10 principales contribuyentes de Linux
Muchas otras compañías también tienen interés financiero en el éxito de Linux (compañías que hacen servidores o distribuyen servidores de distribución como RedHat, SuSE, etc.), por lo que también hacen contribuciones significativas a Linux. Los controladores de dispositivos en Linux a menudo los escriben los fabricantes de dispositivos.
Luego están los contribuyentes individuales. Casi todos mis proyectos personales son de código abierto. Hago todo de código abierto a menos que tenga una muy buena razón para hacerlo de código cerrado.
Cuando abro el código fuente de mis proyectos, a veces otros usuarios envían correcciones y mejoran mis proyectos por mí, ¡y no tengo que hacer nada! Es una situación de ganar-ganar. Llegan a implementar la funcionalidad que necesitan (lo que les lleva mucho menos tiempo que escribir todo desde cero), y el proyecto obtiene sus contribuciones para que todos los usuarios se beneficien.
Del mismo modo, he enviado muchos parches pequeños y contribuciones a otros proyectos de código abierto. Por lo general, esas son funciones que necesito o errores que me afectan. Y si ya me he tomado la molestia de escribir las funciones o corregir los errores, ¿por qué no enviar un correo electrónico al responsable del paquete para que puedan incluirlos en la próxima versión?