Cómo elegir la licencia correcta para tu proyecto Open Source

licencias open source
El tema de las licencias en el software libre ha sido desde siempre uno de los más difíciles de abordar. ¿Cuáles son las ventajas y desventajas de cada licencia? ¿Qué licencia es más conveniente para mi nuevo proyecto? ¿Cómo sé si la licencia que uso actualmente se ajusta a mis necesidades? Con este artículo intentaremos ayudarte a responder esas y otras preguntas.
Lo primero que debes saber es que todas las licencias de software libre están exentas de regalías y permiten la copia, distribución, modificación y distribución de las modificaciones para cualquier uso, incluso comercial.
Podemos agrupar la mayoría de las licencias en tres grandes grupos: copyleft fuertes, copyleft débiles y permisivas.

Copyleft fuertes

Estás licencias garantizan que el software original y todas sus modificaciones siempre sean software libre. Entre las más comunes tenemos:
  • GNU General Public License (GPL) 3.0: Creada por la Free Software Foundation como parte del proyecto GNU, es una de la más populares y utilizadas en la comunidad. Exige la publicación del código fuente y que todos los trabajos derivados del original conserven la misma licencia GPL, no permite enlaces con módulos privativos (de código cerrado) y requiere que todos los cambios realizados a la versión original sean reflejados en el código fuente con sus respectivos autores. Además posee ventajas únicas respecto a otras licencias como protección contra la tivoización y protección contra las leyes de DRM. Los derechos de autor deben conservarse tanto en el código fuente como en los binarios.
  • GNU General Public License (GPL) 2.0: Es la versión previa a la GPL 3.0, también creada por la Free Software Foundation como parte del proyecto GNU. Tiene características similares a la versión 3.0 pero carece de protección contra la tivoización, protección contra las leyes de DRM y no considera software que se ejecuta a través de la red. La Free Software Foundation desaconseja su uso para proyectos nuevos, en su lugar recomienda la GPL 3.0.

Copyleft débiles

  • GNU Lesser General Public License (LGPL) 3.0: Es una licencia con características y beneficios similares a la GPL 3.0, pero con la diferencia que permite enlazar módulos privativos al código, por eso se considera una licencia débil. La Free Software Foundation sólo la recomienda para circunstancias especiales y estrictamente necesarias.
  • Mozilla Public License (MPL) 2.0: Creada por la Mozilla Foundation para publicar la mayoría de sus aplicaciones y utilizada por muchos otros programas en la actualidad. Es una licencia que busca un balance entre las licencias permisivas (como la BSD) y las copyleft fuertes (como la GPL). Exige la publicación del código fuente y que cualquier derivado o extensión sea publicado bajo la misma licencia MPL. Sin embargo considera términos en los cuales el código licenciado puede ser parte de una aplicación más grande y esa aplicación puede contener módulos licenciados bajo cualquier otro esquema, incluso privativo. En otras palabras, permite que módulos libres puedan convivir con módulos privativos. No requiere que los cambios realizados sean reflejados en el código fuente y los derechos de autor deben mantenerse tanto en el código fuente como en los binarios.
  • Eclipse Public License (EPL) 1.0: Es una licencia muy similar a la Mozilla Public License ya que busca un equilibrio entre licencias permisivas y fuertes, teniendo como objetivo principal hacerla atractiva para los ambientes de negocios. No requiere ningún seguimiento en los cambios y sólo exige la publicación del código fuente cuando las modificaciones se consideran un trabajo derivado y no una extensión o un módulo separado. Los trabajos derivados deben ser publicados siempre bajo la licencia EPL. Esta licencia es usada por la Eclipse Foundation y nace como reemplazo a la Common Public License.

Licencias Permisivas

  • Apache 2.0: Es la licencia creada en principio por la Apache Software Foundation para publicar los paquetes del proyecto Apache, sin embargo en la actualidad es usada para muchos otros proyectos. Se considera una licencia permisiva porque no requiere que los trabajos derivados sean publicados bajo la misma licencia y tampoco exige la liberación del código fuente. Los cambios a la versión original deben reflejarse en un archivo en el código fuente y pueden ser publicados usando cualquier otra licencia. Lo más importante de esta licencia es que los derechos de autor deben conservarse tanto en el código fuente como en los binarios.
  • MIT: Es una licencia perfecta si lo que quieres es llegar al mayor número de desarrolladores y no te importa en dónde o cómo puede ser usado tu código. No se considera una licencia para software libre pues no garantiza la libertad de la aplicación, lo único que exige es que los derechos de autor sean incluidos en todas las copias o posibles porciones del software. Recibe su nombre debido a que fue la licencia usada por el Instituto de Tecnología de Massachusetts (MIT en inglés) para publicar la versión original del sistema de ventanas X.
  • BSD 2-Clause: Conocida también como licencia BSD Simplificada o licencia FreeBSD, es otra licencia permisiva o no copyleft que solamente exige que los derechos de autor y las resignaciones de garantía sean incluidas en todas las distribuciones del software, bien sea en forma de código o en binario. Al igual que la licencia MIT, es ideal si no te interesa lo que la gente pueda hacer con el código de tu aplicación y quieres llegar a un mayor número de desarrolladores.
Esperamos que con esto tengas una idea general de qué tipo de licencia te conviene elegir para tu próximo proyecto. Sabemos que hay montones disponibles, cuéntanos cuál es tu favorita y por qué.

Comentarios

Entradas populares de este blog

Ejercita tu cerebro con estas siete actividades

Sample Focus, una sencilla web para descargar muestras de sonidos

Cómo crear un USB de arranque para instalar Windows o Linux