¿Cuál licencia escoger?

El tema de las licencias siempre me ha parecido un tanto absurdo, son sólo balbuceos legales que poca gente es suficientemente masoquista como para leerlas. La realidad es que vivimos en un estado de derecho dictado por documentos legales los cuales estamos obligados a defender y obedecer. Supongo que si por mi fuera, la única licencia de software que existiría sería la WTFPL o traducido al cristiano: Haz lo que te Salga de los Cojones Licencia Pública (Do What The Fuck You Want To Public License).

DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
Version 2, December 2004

Copyright (C) 2004 Sam Hocevar
14 rue de Plaisance, 75014 Paris, France
Everyone is permitted to copy and distribute verbatim or modified
copies of this license document, and changing it is allowed as long
as the name is changed.

DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

0. You just DO WHAT THE FUCK YOU WANT TO.


Simple!

Cabe resaltar que si no se utiliza ninguna licencia, implicitamente el autor está indicando un copyright sin explicarle a nadie cómo pueden utilizar ese código. Así que, teoricamente, en cualquier momento el autor puede imponer ese copyright y prohibir que se siga utilizando su código. Esta es una de las razones por la cuales desarrolladores con experiencia nunca tocan un código sin licencia ya que no tienen ningún derecho legal para hacerlo. Desafortunadamente nos gustan tanto las licencias como los estándares, por eso es que hay tantas. ¿Cuál es la diferencia entre todas estas licencias? ¿Cuál licencia es la mejor para mis desarrollos? (Personales, claro, ya que todo lo que haces en horas de trabajo es del jefe). Vamos a intentar listar las más importantes y un poco su significado:

Sin licencia:
  • Código Fuente abierto
  • Licencia ninguna
  • Clausulas: 0
  • Sin licencia, el código fuente está protegido por copyright. Se puede leer el código, pero sin derecho a utilizarlo. Para utilizarlo, se debe contactar con el autor y pedir su permiso para utilizarlo
  • Código Fuente abierto
  • Licencia permisiva
  • Clausulas: 0
  • Si el código está bajo el dominio público, cualquiera podrá utilizar este código para lo que sea. Por defecto, ninguna obra es de dominio público a menos de que el autor sea explicito sobre esto. Sino habrá que esperar una eternidad despues de que el autor haya muerto para que su obra sea pública.
GNU GPL
  • Código Fuente abierto
  • Licencia Copyleft
  • Clausulas 12
  • El sueño socialista. Tu código jamás podrá ser utilizado en ningún programa propietario. Huele a capitalistas quemados.
GNU LGPL
  • Código Fuente abierto
  • Licencia mayormente copyleft
  • Clausulas 16
  • La misma GPL pero con una valvula de presión para casos de emergencia. El código en binario puede estar relacionado con código propietario bajo circunstancias muy específicas.
Licencia MIT
  • Código Fuente abierto
  • Licencia permisiva
  • Clausulas 2
  • Dulce y corta. Incluye una limitación de responsabilidad o legal disclaimer of liability.
Licencia BSD
  • Código Fuente abierto
  • Licencia permisiva
  • Clausulas 2
  • Parecida a la del MIT. Dulce y corta. Incluye una limitación de responsabilidad con organizaciones nombradas explicitamente.
Licencia de Apache
  • Código Fuente abierto
  • Licencia permisiva
  • Clausulas 9
  • Requiere que todos los trabajos derivados muestren una notificación de cualquier código licenciado o propietario en un lugar común.
Licencia de Eclipse EPL
  • Código Fuente abierto
  • Licencia permisiva
  • Clausulas 7
  • Amigable con la economía. Permite que trabajos derivados escojan su propia licencia para su contribución.
Mozilla MPL
  • Código Fuente abierto
  • Licencia copyleft blandengue
  • Clausulas 13
  • Permite total libertad de para mezclarse con software propietario.
Microsoft Permissive License (Ms-PL)
  • Código Fuente abierto
  • Licencia permisiva
  • Clausulas 3
  • Parecida a las licencias MIT y BSD. No está aceptada por la OSI como licencia y es ofrecida como una veriante de la LGPL sólo para Windows.
Microsoft Community License (Ms-CL)
  • Código Fuente abierto
  • Licencia copyleft
  • Clausulas 3
  • Parecida a la GPL. Requiere que todo el código contribuido, sea devuelto a la comunidad. No está aceptada por la OSI como licencia y es ofrecida como una veriante de la LCL sólo para Windows.
Microsoft Reference License (Ms-RL)
  • Código Fuente propietario
  • Licencia Sólo para Lectura
  • Clausulas 3
  • Se puede revisar y copiar el código, pero jamas utilizarlo o modíficarlo. Permite una ventana para mirar dentro de código propietario.
Despues de terminar ésto, he aprendido dos cosas:
  1. Me duele la cabeza.
  2. Sigo prefiriendo la WTFPL
No quiero entrar en una jihad acerca de las diferentes licencias, esto es lo que he podido resumir de leer las anteriores y todos los demás temas como:
  • OSS vs Software Propietario
  • licencias copyleft vs licencias permisivas
  • el tema pernicioso de las licencias de software

No entran en ésta entrada. El desarrollo de software es un campo de minas y con esto sólo quiero que incluyáis una licencia con vuestro software cada vez que vayáis a liberarlo, hacedle ese favor a sus colegas desarrolladores.

Escoged una licencia, la que sea! Disclaimer: Sé que intentar explicar licencias como la GPL en dos lineas es un tanto simplista, pero para quienes deseen indagar más y sacar sus propias conclusiones, está la wikipedia.