Conecta con nosotros

A Fondo

Licencias Open Source: qué saber antes de poner la guinda a tu proyecto

Publicado el

Hasta hace no demasiado tiempo, la inmensa mayoría de los desarrollos de software eran privativos. El código pertenecía exclusivamente a la empresa que lo producía y la autoría de los programas estaban protegidos por leyes de copyright y derechos de autor.

Y aunque en muchos casos esto sigue siendo así, en los últimos años los nuevos escenarios de innovación colaborativa (especialmente en áreas como cloud, Big Data, IA, etc.) han impulsado la adopción de cada vez más licencias Open Source, de modo que por primera vez, grandes multinacionales tecnológicas han sumado esfuerzos con todos esos desarrolladores, asociaciones y pequeñas compañías que llevan décadas encabezando este movimiento.

MCPRO Recomienda

Estudio sobre ciberseguridad en la empresa española ¡Participa en nuestra encuesta y gana!
Garantiza la continuidad de tu negocio en el nuevo entorno de teletrabajo ¡Descárgate la guía!
Cloud computing: adopción, inversión y desafíos en la empresa ¡Descárgate el informe!

Por supuesto que Microsoft, Oracle o Amazon inviertan en Open Source no se debe a una redescubierta filantropía. En el estado tecnológico actual, cada vez resulta más complicado que una empresa sea capaz de producir un desarrollo significativo contando exclusivamente son sus propias fuerzas y a medio plazo, resulta mucho más rentable colaborar con otras empresas…implicando además a la comunidad.

La adopción de este tipo de licencias ha tenido además un efecto colateral, como la creación de asociaciones que permiten “vigilar” el estado de desarrollo de los principales proyectos y así entidades hasta hace no demasiado menores, como la la Linux Foundation, se han encontrado con un protagonismo que nunca habían sospechado.

Otra consecuencia es que el licenciamiento de proyectos tecnológicos se ha “profesionalizado” y del Copyright o la “romántica” GPL, han surgido otras como BSD, MIT, Apache, Mozilla…mucho menos «desinteresadas». Así las cosas, si nos encontramos en el desarrollo de un proyecto, ¿qué licencia nos conviene utilizar? ¿en qué se diferencian las principales? A menos que no tengamos ningún interés compartir el fruto de nuestro esfuerzo o que queramos empezar directamente desde cero, estas son las que podemos considerar.

GNU General Public License v3.0: la más comprometida

La GNU General Public License (su versión actual es la 3.0) está amparada por la Free Software Foundation (fundada por Richard Stallman en 1985). Es la licencia preferida por los auténticos entusiastas del software libre y obliga a compartir el código fuente del software amparado “bajo sus reglas” de forma estricta.

Es decir, el uso de la GPL está condicionado no solo a que se comparta el código fuente del desarrollo original, sino también del de las obras y modificaciones licenciadas. Cualquier modificación en el código de un proyecto original licenciado bajo GPL no solo debe ser documentado ( y compartido con la comunidad), sino que automáticamente pasará a ser licenciado bajo la GPL.

Además en todos los casos, incluso aunque una modificación pase a ser distribuida de forma comercial, los autores originales serán reconocidos. Así que aunque un programa sea “mío”, también lo será de la comunidad, de modo que el concepto de “propiedad” del software se diluye por completo.

Esto tiene por supuesto muchas ventajas ya que anima al trabajo comunitario, lo que ha permitido el desarrollo de proyectos como Ansible, Bash o Gimp, por no hablar del kernel de Linux. Sin embargo no todas son ventajas…y es que algunas compañías pueden llegar a considerar que en realidad compartir con el mundo el fruto de su esfuerzo no es siempre tan interesante, especialmente si quieren considerar el software que desarrollan como su activo principal. Lo cual nos lleva a …

BSD, Apache o MIT: las más permisivas

Licencias como MIT, Apache o BSD, si bien presentan algunas diferencias, comparten un objetivo común: permitir que el desarrollador haga con el software lo que quiera. Una licencia como MIT solo requiere la preservación de los derechos de autor y que se incluya el aviso de licencia.

Esto quiere decir que a partir de un proyecto original licenciado bajo MIT o Apache, una compañía podría realizar todas las modificaciones que considerara oportunas, empaquetarlas bajo un nuevo nombre y distribuir el nuevo producto de forma comercial sin ninguna obligación de compartir el código fuente, o documentar los cambios realizados. Así la integración de estos desarrollos en software propietario o privativo es de hecho una realidad factible…por la que empiezan a ser criticadas esas multinacionales de las que hablábamos antes.

El uso de licencias MIT o Apache ha crecido en los últimos años ante la explosión del cloud y otras tecnologías abiertas. Y es que aunque cada vez son más las empresas que han llegado a la conclusión de que colaborar y co-crear tiene muchas ventajas, en la última fase del desarrollo de software la mayoría quiere ofrecer una solución comercial que las diferencie. Así que sí, es cierto que compañías como Amazon, Google o Microsoft  abrazan el software Open Source…pero solo hasta cierto punto.

El hardware también puede ser Open Source

A raíz del éxito del software Open Source han surgido otras iniciativas que proponen que también el hardware sea abierto, sin estar sujeto a las estrictas directrices de propiedad industrial y que en algunas ocasiones pueden limitar su desarrollo.

Una de las asociaciones más comprometidas en este campo es la Open Source Hardware Association, que en su licencia OSHW 1.0 indica lo siguiente: “El hardware de código abierto es un hardware cuyo diseño se pone a disposición del público para que cualquiera pueda estudiar, modificar, distribuir, hacer y vender el diseño o el hardware basado en ese diseño. La fuente del hardware, el diseño a partir del cual se hace, está disponible en el formato preferido para hacer modificaciones en él. Lo ideal es que el hardware de código abierto utilice componentes y materiales de fácil acceso, procesos estándar, infraestructura abierta, contenido no restringido y herramientas de diseño de código abierto para maximizar la capacidad de los individuos para hacer y utilizar el hardware. El hardware de código abierto da a la gente la libertad de controlar su tecnología mientras comparte el conocimiento y fomenta el comercio a través del intercambio abierto de diseños”

El desarrollo del hardware abierto ha facilitado a su vez el desarrollo de la comunidad maker con proyectos como Arduino y en gran medida Raspberry Pi como punta de lanza.

Periodista tecnológico con más de una década de experiencia en el sector. Editor de MuyComputerPro y coordinador de MuySeguridad, la publicación de seguridad informática de referencia.

Lo más leído

Suscríbete gratis a MCPRO

La mejor información sobre tecnología para profesionales IT en su correo electrónico cada semana. Recibe gratis nuestra newsletter con actualidad, especiales, la opinión de los mejores expertos y mucho más.

¡Suscripción completada con éxito!