El software libre en tu empresa: qué puedes hacer y qué no

En todas las empresas, a día de hoy, hace falta software… ya sea para escribir cartas, para llevar la contabilidad o para publicar cosas en la web, sin software a día de hoy no se hace casi nada. Así que… ¿de dónde lo sacamos? Se me ocurren tres formas de obtener software (que en realidad son cuatro):

  • Pagar por el software: ya sea pagar por licencias de uso de un software que ya existe, como comprar Windows o la Office, o pagando a empresas como nosotros para que os hagan el software a medida.
  • Tener software pirata: hace unos años esto era, de largo, lo más común… pero creo que poco a poco va disminuyendo, cada vez hay menos. Entre las campañas anti piratería y los sistemas anti copia, con la conexión ubicua a internet esto es cada vez más difícil.
  • Usar software libre. Es una alternativa muy atractiva, claro, por varias razones que ahora explicaré… sin embargo, hay que tener en cuenta un par de cosas, sobre todo en cuanto a las licencias a través de las cuáles se Licencia GPLdistribuye el software.

¿Software libre, o software gratis?

Puede ser una de las dos cosas, y también las dos… la confusión puede venir de la palabra free, que en inglés significa tanto ‘libre’ como ‘gratis’. Por eso, en inglés, cuando se habla de ‘free software’ se distingue entre free, as in beer (es decir, gratis, como en ‘cerveza gratis’) y free, as in speech (es decir, libre, como en ‘libre expresión’).

Yo entiendo software libre como el que está abierto a modificaciones externas… es decir, se permite el acceso libre al código fuente y a la documentación de desarrollo, de forma que cualquiera pueda obtener dicho software, y hacer el uso que necesite, siempre que se ajuste a los términos de la licencia de distribución del software que sea. Cuando alguien libera un software, lo hace bajo una licencia de uso; es decir, una serie de condiciones que hay que cumplir si usas ese software. Lo que puedes o no puedes hacer, por tanto, viene definido por los términos de dichas licencias. No me voy a extender en los términos de cada licencia, está bien explicado en la wikipedia, sino que me interesa más reflexionar sobre qué puedes y qué no puedes hacer con el software dependiendo de la licencia que tenga.

Es decir, puedes tener software libre que es gratuito (que es el caso más común, que todos conocemos), pero también hay otras alternativas: puedes tener software libre que no es gratuito (más abajo hablaré de ello), y software gratis que no es libre, como todo el software freeware de los 90.

La madre del cordero: el copyleft

La filosofía básica que envuelve a la licencia libre más restrictiva, la GPL, es lo que se llama el copyleft. Este concepto viene como oposición directa del copyright, y se basa en la idea de compartir libremente las obras producidas (no se aplica sólo a software, sino a cualquier obra de producción propia). La idea básica es la que cualquiera pueda acceder a tu software, en este caso, y hacer las modificaciones que quiera, las mejoras o los cambios, sin ninguna limitación y sin tener que pagar derechos de autor. Pero esto no significa que este modelo de licencia no tenga ninguna restricción, todo lo contrario. La idea es que, si el software que se ha liberado tiene copyleft, todas las derivaciones del mismo tienen que tener copyleft. Es decir, no se puede coger un software libre, hacer unas modificaciones, y generar un producto nuevo que no sea libre.  Cuidado, esto no significa en absoluto que no se pueda cobrar por el trabajo. GPL no significa gratis, sino libre.

A la hora de evaluar si podemos usar un software que está distribuido sobre una licencia libre tenemos que tener en cuenta qué es lo que vamos a hacer con él. Si es para uso privado, podemos coger el software, modificarlo, cambiarlo como queramos, no tiene ningún problema… el asunto viene cuando lo que queremos hacer es distribuir las modificaciones que hemos hecho… entonces es cuando entra en juego el asunto viral que tiene la GPL: cualquier producto que incluya software GPL como alguno de sus componentes, debe ser GPL a su vez.

Hay licencias menos restrictivas, como la LGPL, que permiten el enlace de software LGPL con software de otros modelos de licencia y licenciar el software obtenido de la forma que se quiera… lo fundamental de la licencia GPL es que todo lo que contenga al menos una linea de código GPL debe ser distribuido con la misma licencia

Libre no significa gratis necesariamente – un ejemplo con WordPress

O no habría nicho de negocio para nadie… ninguna de las licencias de software libre dicen que tenga que ser gratuito. Lo que dice la GPL es que el software que tú distribuyas debe serlo utilizando la GPL… es decir, puedes cobrar por el software, o por el trabajo, pero no puedes decirle al cliente que no puede distribuir libremente ni cambiar el software que le das, porque como está protegido por la GPL, tiene derecho a hacer lo que quiera dentro de la GPL.

wordpressUn ejemplo que estamos utilizando nosotros ahora: cuando los clientes nos piden que les hagamos desarrollos web, estamos utilizando WordPress para hacerlos (de hecho, nuestra propia página está hecha utilizando wordpress). WordPress está distribuido utilizando la licencia GPL y, por tanto, los temas (que son las adaptaciones que cambian el aspecto que tiene la página), también están sujetos a la licencia GPL (como se explica muy bien en este artículo). Esto significa que, si nosotros le desarrollamos un tema especializado a un cliente, nosotros no le podemos exigir al cliente que no cambie o distribuya dicho tema a quién quiera (bueno, nosotros podemos decir lo que queramos, pero el cliente no tiene por qué hacernos caso, ya que la licencia del tema tiene por fuerza que ser GPL). Si queremos, podemos poner una tienda de temas WordPress y que la gente los compre, siempre y cuando nosotros no limitemos las acciones de nuestros clientes dentro de la GPL.

Siempre había pensado que la GPL era una licencia muy restrictiva, y creo que es uno de esos problemas de lost in translation, ya que al leer “todo software derivado de GPL debe ser GPL”, y “GPL es una licencia ‘free'”, durante años he interpretado que todo software GPL debe ser gratis, y que los derivados también, y esto no es cierto. Una extensión a esta explicación, y un análisis de las implicaciones podéis leerlo aquí.