La famosa frase de George Bernard Shaw sobre compartir ideas dice:
"Si tienes una manzana y yo tengo una manzana, y las intercambiamos, ambos seguiremos teniendo una manzana.
Pero si tienes una idea y yo tengo una idea, y las intercambiamos, entonces ambos tendremos dos ideas."
El concepto de software libre surge como una respuesta a la creciente uso del software propietario en la década de 1980.
Richard Stallman, investigador del MIT, fundó en 1984 el Proyecto GNU con el objetivo de desarrollar un sistema
operativo completamente libre. Posteriormente, en 1985, estableció la Free Software Foundation (FSF) y promovió la
Licencia Pública General de GNU (GPL) para garantizar que el software libre permaneciera accesible y modificable para todos.
Por otro lado, Eric S. Raymond jugó un papel clave en la divulgación de modelos de desarrollo colaborativo. En 1997, publicó su influyente ensayo "La catedral y el bazar", donde comparó dos modelos de desarrollo de software:
El modelo catedral:
Desarrollo cerrado, donde el código fuente se mantiene privado hasta su lanzamiento.
El modelo bazar:
Desarrollo abierto, con múltiples colaboradores que contribuyen en tiempo real, como ocurre en proyectos como Linux.
Las principales razones que impulsaron el software libre fueron:
Evitar la dependencia de software propietario, basados en 4 principios o libertades:
Libertad de usar: El software libre se puede usar para cualquier propósito, sin restricciones de licencia o geográficas.
Libertad de estudiar: El código fuente del software libre se puede estudiar sin restricciones.
Libertad de compartir: El software libre se puede copiar y compartir virtualmente sin costo.
Libertad de mejorar: El software libre se puede modificar y las mejoras se pueden compartir públicamente.
Linus Torvalds y el Sistema Operativo Linux
En 1991, Linus Torvalds, un estudiante de informática en Finlandia, desarrolló un nuevo núcleo de sistema operativo
basado en UNIX: Linux. Al liberar su código bajo una licencia abierta, permitió que miles de programadores
de todo el mundo contribuyeran a su mejora.
La popularidad de Linux impulsó un cambio en la percepción del software libre dentro del ámbito empresarial.
En 1998, se acuñó el término "código abierto" (open source) con la fundación de la Open Source Initiative (OSI).
Esta organización promovió un enfoque más pragmático del software libre, enfatizando los beneficios técnicos y comerciales sobre la filosofía de libertad.
Las razones que llevaron a la adopción del código abierto fueron:
Aunque el software libre y el código abierto comparten principios similares, existen diferencias clave:
Característica | Software Libre | Código Abierto |
---|---|---|
Filosofía | Se enfoca en la libertad del usuario y la ética | Se enfoca en la eficiencia y la calidad del código |
Licencias comunes | GPL, AGPL | MIT, Apache 2.0, BSD |
Uso en empresas | Menos adoptado por restricciones de licencias copyleft | Más aceptado por su flexibilidad |
Ejemplo de software | GNU/Linux, Emacs | Linux Kernel, Kubernetes |
En conclusión, mientras el software libre busca garantizar la libertad del usuario, el código abierto prioriza la colaboración y la adopción masiva. Ambos modelos han influenciado significativamente el desarrollo de la tecnología moderna, permitiendo la creación de un ecosistema de software más accesible y eficiente.
El mundo del software y la propiedad intelectual está regulado por diferentes enfoques legales que determinan cómo se pueden utilizar, modificar y distribuir las creaciones digitales. Entre estos enfoques, destacan tres conceptos fundamentales: dominio público, copyleft y copyright.
El dominio público se refiere a obras que no están protegidas por derechos de autor, ya sea porque han expirado, fueron explícitamente liberadas por su creador o nunca estuvieron protegidas. En este caso, cualquier persona puede usar, modificar y redistribuir el contenido sin restricciones.
Ejemplo 1: El código fuente de software liberado bajo la licencia CC0 (Creative Commons Zero)
o el software antiguo cuya protección de copyright ha expirado.
Ejemplo 2: La base de datos SQLite es Dominio Publico y esta hecha con "una declaración propia"
El copyleft es un modelo de licencia que garantiza que cualquier obra derivada de un software libre mantenga la misma libertad que el original. Es decir, si un programa con licencia copyleft se modifica o redistribuye, debe conservar la misma licencia y garantizar que los usuarios tengan los mismos derechos de uso, modificación y distribución.
Ejemplo: El sistema operativo GNU/Linux, que se distribuye bajo la Licencia Pública General de GNU (GPL), asegurando que cualquier modificación también deba ser GPL.
El copyright, o derecho de autor, otorga a los creadores derechos exclusivos sobre su obra. Esto significa que solo el titular del copyright puede reproducir, distribuir o modificar la obra, a menos que otorgue permisos explícitos mediante licencias. Las licencias pueden variar, desde modelos restrictivos (como software propietario) hasta modelos más permisivos (como el MIT o Apache 2.0).
Ejemplo: Microsoft Windows, cuyo código fuente es propiedad de Microsoft y no puede ser modificado ni redistribuido sin autorización.
Por defecto toda obra tiene esta categoría: Todos los derechos reservados.
El software de código abierto (Open Source) ha revolucionado la industria tecnológica, permitiendo la colaboración global en el desarrollo de software. Sin embargo, para garantizar la transparencia y el uso adecuado del código, es fundamental establecer licencias que regulen los derechos y obligaciones de los usuarios y desarrolladores.
Las licencias Open Source pueden clasificarse según su nivel de permisividad, desde las más flexibles hasta las más restrictivas. A continuación, exploraremos las licencias más utilizadas
Permisividad: MáximaEjemplo: SQLite, 7Zip
Las licencias de dominio público, como CC0 (Creative Commons Zero) y Unlicense, permiten el uso, modificación y distribución sin restricciones. Los desarrolladores renuncian a sus derechos de autor y dejan el software disponible para cualquier uso, incluso comercial.
Características:
Permisividad: AltaEjemplo: React, Tailwind CSS, Angular
La MIT License es una de las licencias más populares debido a su simplicidad y flexibilidad. Permite usar, modificar y distribuir el software, siempre que se mantenga la atribución al autor original.
Características:
Permisividad: Alta, con protección de patentesEjemplo: Kubernetes, TensorFlow
La Apache License 2.0 es similar a la MIT, pero con una protección adicional sobre patentes. Garantiza que los usuarios no puedan demandar por infracción de patentes al usar software bajo esta licencia.
Características:
Permisividad: Media (Licencia intermedia)Ejemplo: Mozilla Firefox
La MPL 2.0 equilibra libertad y restricciones. Permite combinar código abierto con código propietario, siempre que las modificaciones al código original sean publicadas bajo la misma licencia.
Características:
Permisividad: Baja (Licencia Copyleft fuerte)Ejemplo: Linux, WordPress
La GPL v3 impone fuertes restricciones para garantizar la libertad del software. Obliga a que cualquier software derivado también esté licenciado bajo la GPL, lo que impide su uso en software propietario.
Características:
Permisividad: Mínima (Copyleft extremo)Ejemplo: MongoDB, Mastodon
La AGPL v3 es una versión más restrictiva de la GPL.
Exige que cualquier software basado en su código,
incluso si se ejecuta en servidores sin distribuirse,
también debe publicarse bajo AGPL.
Características:
A continuación, un resumen de las licencias analizadas:
Licencia | Permite Uso Comercial | Requiere Atribución | Requiere Publicar Cambios | Compatible con Software Privado | Protección de Patentes |
---|---|---|---|---|---|
CC0 | Sí | No | No | Sí | No |
MIT | Sí | Sí | No | Sí | No |
Apache 2.0 | Sí | Sí | No | Sí | Sí |
MPL 2.0 | Sí | Sí | Solo en código modificado | Sí | No |
GPL v3 | Sí | Sí | Sí | No | No |
AGPL v3 | Sí | Sí | Sí (incluye cloud) | No | No |
Además de las anteriores podemos encontrar Freeware y Shareware. Aunque pueden parecer similares a primera vista, presentan diferencias clave en términos de acceso al código fuente, permisos de uso y distribución.
El freeware es software que se distribuye de manera gratuita, pero sin acceso al código fuente. Los usuarios pueden utilizarlo sin costo, pero no modificarlo ni redistribuirlo de forma alterada. Características principales:
Ejemplo de Freeware:
Skype: Se puede descargar y utilizar gratuitamente, pero no permite acceso al código fuente.
Adobe Acrobat Reader: Permite visualizar archivos PDF sin costo, pero no se puede modificar.
El shareware es software que se distribuye gratuitamente, pero con limitaciones. Generalmente, se usa con fines de prueba y requiere un pago para obtener la versión completa. Características principales:
Ejemplo de Shareware:
WinRAR: Permite la prueba gratuita, pero muestra recordatorios para comprar la licencia.
Adobe Photoshop (versión de prueba): Ofrece un período gratuito con funciones limitadas.
Las licencias Creative Commons (CC) fueron creadas para ofrecer un modelo intermedio entre el dominio público y el copyright tradicional. Estas licencias permiten a los autores compartir su trabajo con ciertas condiciones específicas. En este artículo, analizaremos las principales licencias Creative Commons, ordenadas de la más permisiva a la más restrictiva, y discutiremos su aplicación en el software y otros medios.
A continuación, se presenta una tabla comparativa con las licencias Creative Commons, desde la más abierta hasta la más restrictiva:
Licencia | Símbolo | Modificación permitida | Uso comercial | Obligación de atribución | Obras derivadas bajo la misma licencia |
---|---|---|---|---|---|
CC0 (Dominio Público) | CC0 | Sí | Sí | No | No |
CC BY | BY | Sí | Sí | Sí | No |
CC BY-SA | BY-SA | Sí | Sí | Sí | Sí |
CC BY-ND | BY-ND | No | Sí | Sí | No |
CC BY-NC | BY-NC | Sí | No | Sí | No |
CC BY-NC-SA | BY-NC-SA | Sí | No | Sí | Sí |
CC BY-NC-ND | BY-NC-ND | No | No | Sí | No |
Referencias:
Creative Commons no está diseñado para software. Para el código fuente, se recomienda el uso de licencias específicas como GPL, MIT o Apache 2.0. Sin embargo, Creative Commons podría aplicarse a la documentación de software, diseños, guías y otros materiales complementarios.
Las licencias Creative Commons ofrecen una gran flexibilidad para compartir contenidos mientras se mantienen ciertos derechos. La elección de la licencia adecuada dependerá del nivel de control que el autor desee sobre su obra. Aunque no son recomendadas para software, son una excelente opción para proyectos de arte, educación y documentación.
Bibliografía - referencias:
La catedral y el bazar (traducido)
Free software Foundation
GNU Operating System
Open Source Licenses
Creative Commons