article illustration Comprendiendo las licencias de software de código abierto
Open Source
Last update: September 18, 2023

Comprendiendo las licencias de software de código abierto

Cuando se trata de licencias de software de código abierto, hay dos categorías amplias. Algunas licencias caen bajo la categoría de licencias copyleft, mientras que otras son licencias de código abierto permisivas.

En este artículo, explicaré qué es el licenciamiento de Software de Código Abierto y sus tipos.

Introducción

Una Licencia de Código Abierto es un tipo de licencia que permite a los usuarios ver, modificar y compartir libremente el código fuente del software. De esta manera, los usuarios pueden actualizar frecuentemente el código fuente y construir sobre el producto original.

Dependiendo del tipo de Licencia de Código Abierto elegida, los usuarios pueden o no poder realizar ciertas actividades con el código, como venderlo o usarlo comercialmente. Además, existen muchos tipos diferentes de Licencias de Código Abierto, cada una ofreciendo diferentes términos y condiciones dependiendo de cómo se quiera usar el material fuente.

Por lo tanto, es importante entender completamente un tipo de Licencia de Código Abierto antes de aprovechar sus beneficios, así que asegúrate de leer más a continuación antes de tomar cualquier decisión.

Tipos de Licencias de Código Abierto

type-of-oss-licence

Licencias Permisivas

Una licencia permisiva, a veces referida como licencia no copyleft, otorga a los usuarios permiso para usar, modificar y compartir el código fuente, pero los usuarios también tienen la opción de cambiar algunos de esos términos y condiciones para la redistribución, incluyendo el trabajo derivado. En el contexto del software, un trabajo derivado es una pieza de software que se basa en un programa existente. Si el original fue lanzado bajo una licencia permisiva, un creador puede elegir compartir su trabajo derivado con términos diferentes a los que la licencia del trabajo original podría haber requerido.

Licencias Copyleft

Las licencias copyleft en el código abierto proporcionan al usuario del software de código abierto la libertad del autor para modificar, usar y redistribuir el software. Sin embargo, requiere que los usuarios pasen derechos específicos a otros usuarios posteriores otorgándoles los mismos derechos que se les dieron originalmente.

Las licencias copyleft definen cómo se permite la redistribución y los cambios al código, prohibiendo cualquier intento de hacerlo propietario o no abierto. Esto asegura que los desarrolladores que modifican el software tengan acceso al código fuente para actualizarlo o incluso incorporar sus propios cambios. Por supuesto, cualquier modificación también debe estar disponible para que otros puedan beneficiarse de su disponibilidad de código abierto. Esto no es un problema para casos de uso académico o de investigación, pero a menudo es un factor decisivo al construir software comercial.

¿Por qué incluir una Licencia de Software de Código Abierto?

Incluir una licencia de software de código abierto es crucial cuando publicas o compartes tu software con otros como código abierto. Una licencia sirve para varios propósitos importantes:

  • Para promover la colaboración y la innovación

Las licencias de código abierto permiten a cualquiera ver, modificar y distribuir el código fuente de tu software. Esto anima a otros desarrolladores a contribuir a tu proyecto, corregir errores y añadir nuevas características. Esto puede llevar a un producto de software más robusto e innovador.

  • Para dar a los usuarios más control y flexibilidad

Las licencias de código abierto típicamente permiten a los usuarios usar, modificar y distribuir el software para cualquier propósito, incluyendo el uso comercial. Esto da a los usuarios más control sobre su experiencia de software, y reduce su dependencia de los proveedores de software propietario.

  • Para construir una comunidad alrededor de tu software

Una licencia de código abierto puede ayudarte a construir una comunidad de usuarios y desarrolladores que están apasionados por tu software. Esta comunidad puede proporcionar apoyo, retroalimentación y nuevas ideas para tu proyecto.

  • Para hacer tu software más accesible e inclusivo

El software de código abierto es típicamente gratuito para descargar y usar, y a menudo está disponible en múltiples idiomas. Esto lo hace más accesible para personas de todo el mundo, independientemente de sus ingresos o antecedentes.

Además de estos beneficios, las licencias de código abierto también pueden ayudarte a:

  • Evitar la infracción de derechos de autor**

Si distribuyes tu software sin una licencia, te expones potencialmente a demandas por infracción de derechos de autor. Una licencia de código abierto otorga explícitamente a los usuarios permiso para usar, modificar y distribuir tu software, lo que puede protegerte de responsabilidades legales.

  • Atrae y retiene talento de primer nivel

Muchos desarrolladores de software talentosos se sienten atraídos por proyectos de código abierto. Al lanzar tu software bajo una licencia de código abierto, puedes hacer que tu empresa sea más atractiva para potenciales empleados.

  • Mejora la reputación de tu marca

El software de código abierto es ampliamente respetado por la comunidad tecnológica. Al lanzar tu software bajo una licencia de código abierto, puedes demostrar tu compromiso con la colaboración y la innovación.

Licencias de Software Permisivas Populares

Las licencias de software permisivas se encuentran entre las más populares. En esencia, estas licencias permiten a los usuarios modificar y redistribuir el software como deseen, con restricciones mínimas. Tres de las versiones más populares de licencias de software permisivas son:

Licencia MIT

La Licencia MIT es la licencia de software de código abierto más popular y permisiva. Proporciona a los usuarios notables libertades, incluyendo permitirles compartir, modificar, usar y comercializar libremente el material si cumplen con todas las condiciones establecidas en la licencia.

Licencia Apache 2.0

La Licencia Apache 2.0 es una popular licencia de software permisiva que permite a los usuarios modificar y redistribuir libremente el software, asegurando que las declaraciones y avisos de derechos de autor resultantes se mantengan en su forma principal. Esta licencia de código abierto permite modificaciones y redistribución propietarias y proporciona términos de licencia claros para que cualquiera pueda entender sus derechos al usar el software.

Licencia BSD (Berkeley Software Distribution)

GitHub te permite elegir entre dos licencias BSD, la Licencia BSD de 2 Cláusulas “Simplificada”, a veces conocida como licencia “FreeBSD”; y la Licencia BSD de 3 Cláusulas “Nueva” o “Revisada”. La principal diferencia entre estas dos licencias está en la tercera cláusula. Esta cláusula restringe a los usuarios del software de usar el nombre del autor, autores o contribuyentes para respaldar productos o servicios.

Licencia de Software Boost

La Licencia de Software Boost proviene de las Bibliotecas Boost de C++ y fue aprobada por la OSI en 2008. Esta licencia es similar a las licencias MIT y BSD, excepto que no requiere atribución cuando se redistribuye en forma binaria.

Licencias de Software de Código Abierto Copyleft

Las licencias copyleft otorgan a los usuarios de software permiso para usar, modificar y compartir el código fuente, pero también protegen contra la relicencia mediante restricciones específicas y términos y condiciones. Esto representa la característica recíproca de esta licencia que requiere que el trabajo de los usuarios se adhiera a los derechos originales descritos en la licencia.

Licencias GNU Cuando se trata de licencias de software copyleft, la GPL (Licencia Pública General) es una de las más populares y ampliamente utilizadas. Esta licencia de código abierto otorga a los usuarios la libertad de distribuir copias y versiones modificadas de un programa siempre que mantengan ciertas condiciones, como avisos de derechos de autor, renuncias de garantía o cualquier otra licencia que se haya agregado al Programa sin modificar.

Al hacer que el software esté disponible con este tipo de licencia, los desarrolladores se aseguran de que otros tengan acceso a su código fuente, permitiéndoles realizar mejoras y adaptaciones que beneficien a la comunidad. Además, este concepto de “copyleft” asegura que cualquiera pueda compartir colaborativamente las mismas libertades al trabajar con software libre.

Licencia Pública de Mozilla

La Licencia Pública de MozillaLa Licencia Pública de Mozilla (MPL), es de la Fundación Mozilla y también se considera una licencia de copyleft débil. La diferencia con esta licencia (en comparación con la Licencia Pública de Eclipse) es que es una licencia de copyleft basada en archivos, lo que significa que el código se puede combinar con código de código abierto o propietario.

Licencia Pública de Eclipse

La Licencia Pública de Eclipse, es de la Fundación Eclipse y se considera una licencia de copyleft débil. Una licencia de copyleft débil requiere que los usuarios del software compartan cualquier cambio que hagan en el código. Esta licencia optó por implementar un copyleft más débil como una forma de reducir los requisitos más estrictos que los usuarios encontraron con las Licencias Públicas Generales de GNU.

¿Cómo puedes elegir la licencia correcta para tu proyecto?

  • Si estás lanzando tu proyecto bajo una licencia de código abierto, elige una licencia compatible con los proyectos que estás utilizando.

  • Si quieres permitir que otros usen tu proyecto con fines comerciales, elige una licencia que lo permita.

  • Si quieres permitir que otros modifiquen y distribuyan tu proyecto, elige una licencia que lo permita.

  • Si quieres asegurarte de que tu proyecto permanezca libre y de código abierto, elige una licencia copyleft.

  • Si no estás seguro de qué licencia elegir, la Open Source Initiative tiene una lista de licencias populares que puedes comparar.

Elegir la licencia correcta para tu proyecto de código abierto es una decisión importante. Al considerar cuidadosamente tus necesidades y objetivos, puedes elegir una licencia que te ayudará a lograr los resultados deseados.

Nueva licencia de Capgo

¿Cómo logro todo eso? Cambiando mi licencia.

Capgo ha cambiado ahora la licencia de MIT a un nuevo esquema de licencias llamado GNU Affero General Public License V3 (AGPLv3) o cualquier versión posterior. La versión de Capgo se puede encontrar aquí.

Capacitor-updater (el plugin) ha cambiado ahora la licencia de LGPLv3 a un nuevo esquema de licencias llamado Mozilla Public License Version 2.0 (MPLv2) o cualquier versión posterior. La versión de Capacitor-updater se puede encontrar aquí.

Este cambio no supone ninguna diferencia para ninguno de ustedes que se suscriban a Capgo Cloud o que alojen Capgo por sí mismos, pero puede molestar a algunas corporaciones que intentaron usar mi software para competir directamente conmigo sin contribuir de vuelta.

AGPL es una licencia con la que Google tiene problemas, ya que no están dispuestos a divulgar su código cerrado. Google se opone a la AGPL y afirma: “El código licenciado bajo la GNU Affero General Public License (AGPL) NO DEBE ser utilizado en Google”.

El objetivo de la AGPL es maximizar la libertad del usuario y animar a las empresas a contribuir al código abierto. Soy una aplicación independiente orientada al usuario. No soy una biblioteca ni parte de un proyecto más grande. No busco las donaciones de Google, así que estamos contentos de tener la licencia AGPL. Es la licencia correcta para Capgo.

Conclusión

Hay muchos factores a considerar al elegir una licencia de software de código abierto. Sin embargo, ciertamente hay opciones populares entre la comunidad de desarrolladores. Las licencias permisivas comunes incluyen la Licencia MIT, la Licencia Apache y la Licencia BSD. Algunas licencias copyleft comunes incluyen la Licencia Pública General de GNU y la Licencia Pública de Mozilla.

Últimas noticias

Capgo te ofrece los mejores conocimientos que necesitas para crear una aplicación móvil verdaderamente profesional.