Links

MIT o GPL, esa es la cuestión

Si usas Software Libre, apoyas y crees que es la mejor opción para el software en el futuro...

MIT o GPL, esa es la cuestión

Si usas Software Libre, apoyas y crees que es la mejor opción para el software en el futuro y además eres un desarrollador de software, no tienes muchas excusas para no liberar con una licencia de Software Libre. Como nota al margen, apuntar que no sólo los programadores desarrollan Software Libre: también aportan los documentadores, probadores, diseñadores gráficos, distribuidores...
El argumento definitivo para convencerte de que debes liberar el código que hayas desarrollado es el siguiente: si guardas el código con celo en el cajón ¡es muy probable que muera en el cajón! Haz memoria del código que hayas hecho y piensa, con la rapidez que avanza el mundo de la informática, si todavía hoy tendría aplicación. Haz el ejercicio de revisar tus repositorios privados y sorpréndete. Como desarrollador individual hay otro motivo interesante: publicar tus trabajos es el mejor currículum que puedes tener. Incluso hay empresas dedicadas exclusivamente a la caza de talento examinando el código publicado en GitHub.
Imagen "Diagrama de licencias de software según la FSF" - source: https://en.wikipedia.org/wiki/Software_license
Si diriges una empresa de desarrollo de software, puedes estar rumiando por qué razón vas a liberar y dejar que todo el mundo tenga acceso al código... Hay varios motivos, pero el principal es que los consumidores de software valoran que los programas que se ejecutan en sus equipos sean OpenSource (auditables, seguros, adaptables). En caso de empresas que usan tu software es fundamental que puedan controlar su información y que no exista una dependencia de proveedor (tendrás que ser bueno dando el servicio, nada más y nada menos). Si contratas con administración, llegará un día en que será requisito imprescindible que el software pagado por todos sea para todos (¡esto debemos exigirlo los ciudadanos!).
Al miedo de que la competencia pueda usarlo gratis... ¡Es lo mejor que te puede pasar! Creas una dependencia de tu código y tendrán que nombrarte en los créditos. ¿Hay un mejor argumento comercial? Lo que tienes que estudiar es si tiene sentido liberar todo lo que desarrollas. En teoría es lo mejor, pero por favor, si el código es feo o malo ¡no lo liberes! Lo ideal es liberar el código y liderar el desarrollo basado en la comunidad. Liberar un software que va a ser adoptado por la comunidad es, a la vez, darle soporte e incorporar las mejoras que puedan aportar desarrolladores externos y crear un producto de éxito garantizado. Si además liberas antes que la competencia, será difícil que otro ocupe tu lugar o nicho de mercado.
Imagen "Logo de la licencia GPL" - source: https://www.gnu.org/graphics/license-logos.html
A estas alturas ya deberías estar convencido de liberar tu software y quieres saber cómo. Pues es muy fácil: sólo tienes que usar una licencia de Software Libre o Open Source. La decisión de usar una licencia Open Source siempre es mejor que la que sea privativa, pero si añades restricciones de uso que impiden que sea Software Libre (véase las 4 libertades del software) no estará bien visto y posiblemente no recibas apoyo de la comunidad. Esto también limita la posibilidad de crecer en red exponencialmente y puede que aparezca una solución equivalente realmente libre que te haga sentir que has perdido el tiempo.
Dentro de las licencias libres tienes muchas donde escoger que se pueden agrupar en una permisiva "MIT" o en una vírica "GPL". Con la MIT básicamente darías permiso para hacer con tu código lo que se quiera (preservando derechos de autoría), mientras que con una GPL también impones la obligación de que los trabajos derivados continúen siendo GPL. Si eres puramente estricto en la definición de libertades escogerás MIT pero corres el riesgo de que alguien emplee tu código y a continuación lo cierre en una solución privativa. Por contra, con la GPL estaría obligado a producir software licenciado también bajo GPL con el sentido de que el Software Libre tienda a prevalecer sobre el privativo.
Sin embargo, sea MIT o GPL, ¡libera tu código!