Software libre: concepto y libertades

El software de código abierto es aquel que permite a los usuarios estudiar, modificar y utilizar de manera libre, así como redistribuirlo con cambios o mejoras. Esta definición surge en relación al surgimiento del movimiento de software libre, liderado por el activista y experto informático estadounidense Richard Stallman, y la fundación que él presidía en 1985, la Free Software Foundation. Esta organización sin ánimo de lucro tiene como objetivo ético fundamental promover la libertad del usuario informático.

 
 

Introducción

Un software se considera libre si proporciona a los usuarios las cuatro libertades fundamentales: la libertad de usarlo, estudiarlo, distribuirlo y mejorarlo. En caso contrario, no puede ser considerado software libre. Existen diferentes modelos de distribución que no cumplen con estas libertades, y aunque podamos clasificarlos según cuánto se alejan de ser libres, su uso puede ser considerado éticamente cuestionable en todos los casos.

Software libre

 

La expresión "software libre" se deriva del término en inglés "free software", el cual presenta ambigüedad entre los significados de "libre" y "gratis". Esto ha llevado a que a menudo se confunda erróneamente como software gratuito, en lugar de su significado más preciso como software que puede ser modificado y compartido sin infringir la licencia.

Si bien el software libre suele estar disponible de forma gratuita o a un precio que cubre los costos de distribución a través de otros medios, no es obligatorio que sea así. Por lo tanto, no se debe asociar automáticamente el software "libre" con "gratuito" (conocido comúnmente como freeware), ya que, incluso manteniendo su carácter de libre, puede ser distribuido comercialmente.

De manera análoga, el software gratis o gratuito puede incluir en ocasiones el código fuente, pero este tipo de software no es "libre" en el mismo sentido que el software libre, a menos que se garanticen los derechos de modificación y redistribución de las versiones modificadas del programa. En este sentido, es importante tener en cuenta las implicaciones legales que surgen del uso del software libre.

Es importante destacar que el software libre no debe confundirse con el "software de dominio público". Este último se refiere al software que no requiere una licencia, ya que sus derechos de explotación son para toda la humanidad y permite el acceso a todos por igual. Cualquier persona puede utilizarlo, siempre y cuando se mencione su autoría original.

Este tipo de software se considera de dominio público cuando el autor lo dona a la humanidad o cuando los derechos de autor han expirado. Sin embargo, si un autor condiciona su uso bajo una licencia, por más débil que sea, ya no se considera de dominio público.

Historia

Durante las décadas de 1960 y 1970, el software no se consideraba un producto en sí, sino más bien un complemento que los vendedores de las grandes computadoras de la época proporcionaban a sus clientes para que pudieran utilizarlas. En ese contexto, era común que los programadores y desarrolladores de software compartieran libremente sus programas entre ellos. Este comportamiento era especialmente frecuente en grupos de usuarios como DECUS (grupo de usuarios de computadoras DEC). Sin embargo, a finales de la década de 1970, las compañías comenzaron a imponer restricciones a los usuarios mediante acuerdos de licencia.

En 1971, cuando la informática aún no había alcanzado su máximo auge, las personas que la utilizaban en entornos universitarios y empresariales creaban y compartían software sin restricciones de ningún tipo.

Pero a medida que llegaron los años 1980, la situación empezó a cambiar. Las computadoras más modernas comenzaron a utilizar sistemas operativos privativos, lo que obligó a los usuarios a aceptar condiciones restrictivas que les impedían intercambiar, compartir o realizar modificaciones en el software.

Si un usuario o programador encontraba un error en una aplicación, lo único que podía hacer era informarlo a la empresa desarrolladora para que lo solucionara, si consideraba que era necesario. Incluso si el programador tenía la capacidad y el deseo de solucionar el problema sin pedir nada a cambio, el contrato le prohibía modificar el software.

En 1971, Richard Matthew Stallman, un estudiante de Física en la Universidad de Harvard, se convirtió en hacker en el Laboratorio de Inteligencia Artificial del Instituto Tecnológico de Massachusetts (MIT). En la década de 1980, la cultura hacker que Stallman vivía comenzó a desvanecerse bajo la presión de la comercialización en la industria del software.

Los compañeros de Stallman en el laboratorio, también hackers, fundaron la compañía Symbolics en un intento de reemplazar el software libre producido en el laboratorio por software no libre de su propiedad. Stallman recordó, años después, que durante esos años en el laboratorio habían recibido una impresora donada por una empresa externa. El dispositivo, que era utilizado en red por todos los trabajadores, tenía problemas de atascos de papel sin generar ningún aviso a través de la red para informar a los usuarios.

Esto ocasionaba una pérdida constante de tiempo, ya que a veces los trabajadores enviaban sus trabajos para imprimir y, al ir a recogerlos, se encontraban con la impresora atascada y una larga cola de trabajos pendientes. Richard Stallman decidió solucionar el problema e implementar un aviso a través de la red cuando la impresora se bloqueara. Para lograrlo, necesitaba acceder al código fuente de los controladores de la impresora.

Solicitó a la empresa propietaria de la impresora lo que necesitaba, explicando sin pedir nada a cambio lo que pretendía hacer. Sin embargo, la empresa se negó a proporcionarle el código fuente. En ese momento, Stallman se encontró en una encrucijada: debía elegir entre aceptar el nuevo software propietario mediante acuerdos de no divulgación y, de esa forma, desarrollar más software propietario con licencias restrictivas que luego deberían ser aceptadas por sus colegas, o iniciar un movimiento, el movimiento del software libre.

El 27 de septiembre de 1983, Stallman anunció en varios grupos de noticias de Usenet el inicio del Proyecto GNU, cuyo objetivo era crear un sistema operativo completamente libre. En 1984, Stallman renunció a su empleo en el MIT para evitar que la universidad reclamara derechos sobre el software que estaba desarrollando en el marco del Proyecto GNU, y comenzó a vivir de la creación de programas libres y la venta de copias en cintas.

En 1985, Stallman fundó la Free Software Foundation (FSF) y publicó el Manifiesto GNU para describir el propósito del proyecto y explicar la importancia del software libre.

En 1986, publicó la definición de "Software Libre" e introdujo el concepto de copyleft, que desarrolló para otorgar libertad a los usuarios y restringir las posibilidades de apropiación del software. En 1989, publicó la primera versión de la Licencia Pública General GNU (GPL), que codificó las ideas del software libre en un documento legal.

Las cuatro libertades del software libre

Existen diferentes dimensiones de la libertad asociadas al uso y distribución de un programa:

  1. Libertad de utilización: la posibilidad de emplear el programa de manera libre, sin restricciones, para cualquier propósito que se desee (uso).
  2. Libertad de estudio y modificación: el derecho a analizar en profundidad el funcionamiento del programa, así como la facultad de realizar cambios y adaptaciones según las necesidades individuales (estudio).
  3. Libertad de distribución: la capacidad de compartir copias del programa con otros usuarios, permitiendo así brindar ayuda y apoyo a la comunidad (distribución).
  4. Libertad de mejora y colaboración: el derecho de mejorar el programa y compartir públicamente dichas mejoras con el resto de la comunidad, en beneficio colectivo (mejora).

Algunos teóricos argumentan que el tercer punto de libertad (mejora) de las licencias GNU GPL justifica parcialmente las limitaciones impuestas en comparación con otras licencias de software libre (consultar Licencias GPL). Sin embargo, su sentido original es más libre, abierto y menos restrictivo que la situación de incompatibilidad que ha sido en cierta medida resuelta en la versión 3 de la licencia GNU GPL.

Tanto la Open Source Initiative como la Free Software Foundation mantienen listas de licencias de software libre aprobadas en sus sitios web oficiales.

El término "software no libre" se utiliza para referirse a software distribuido bajo una licencia más restrictiva que no garantiza las cuatro libertades mencionadas. Las leyes de propiedad intelectual reservan la mayoría de los derechos de modificación, duplicación y redistribución para el titular del copyright, mientras que el software libre, bajo una licencia de software, específicamente renuncia a la mayoría de estos derechos reservados.

La definición de software libre no tiene en cuenta el precio; se suele decir "libre como en libertad, no como en cerveza gratis" (en inglés, "Free as in freedom, not as in free beer"), haciendo alusión a la ambigüedad de la palabra "free" en inglés. Es común encontrar CD de software libre a la venta, como distribuciones de Linux, pero en este caso, el comprador del CD tiene el derecho de copiarlo y redistribuirlo. El software gratuito puede incluir restricciones que no cumplen con la definición de software libre, como la falta de inclusión del código fuente o la prohibición expresa de que los distribuidores reciban compensación a cambio, entre otras.

Para evitar confusiones, algunas personas utilizan los términos "libre" (software libre) y "gratis" (software gratuito) para evitar la ambigüedad de la palabra "free" en inglés.

Sin embargo, estos términos alternativos se utilizan exclusivamente dentro del movimiento del software libre, aunque se están extendiendo lentamente al resto del mundo. Otros defienden el uso del término "open source software" (software de código abierto). La principal diferencia entre los términos "open source" y "free software" radica en que este último tiene en cuenta los aspectos éticos y filosóficos de la libertad, mientras que el open source se basa únicamente en los aspectos técnicos.

En un intento por unificar los términos mencionados, que se refieren a conceptos similares, se está difundiendo el uso de la palabra "FLOSS" con el significado de "free/libre and open source software" y, indirectamente, también se refiere a la comunidad que lo produce y apoya.

Tipos de licencias de software libre

Una licencia de software libre es un documento que otorga amplios derechos al software para modificarlo y redistribuirlo. Estas acciones suelen estar prohibidas por las leyes de derechos de autor, pero el titular de los derechos, generalmente el creador del software, puede eliminar esas restricciones al acompañar el software con una licencia que otorga estos derechos al receptor. El software que utiliza dichas licencias se denomina software libre, y estas libertades son concedidas por el propietario del copyright. Las licencias de software libre se aplican tanto al software en forma de código fuente como en forma de código objeto binario, ya que las leyes de derechos de autor reconocen ambas formas.

Algunas licencias de software libre incluyen copyleft, lo que significa que todas las versiones futuras también deben ser distribuidas con las mismas libertades. Otras licencias de software "permisivas" suelen ser breves y contienen la cesión de derechos y una renuncia de garantía. Esto permite a los distribuidores agregar restricciones para los futuros receptores.

Históricamente, la licencia FOSS (Free and Open Source Software) más utilizada ha sido la GPL (General Public License) versión 2. Sin embargo, según Black Duck Software y las estadísticas de GitHub en 2015, la licencia permisiva Licencia MIT superó a la GPLv2 y pasó a ocupar el segundo lugar, mientras que la licencia permisiva Apache sigue en tercer lugar.

Copyleft

El término "copyleft" se utiliza en el ámbito informático (y se aplica de manera similar a la creación literaria y artística) para referirse a un tipo de protección legal que otorgan ciertas licencias. Estas licencias garantizan el derecho de cualquier usuario a utilizar, modificar y redistribuir un programa o sus derivados, siempre y cuando se mantengan las mismas condiciones de uso y difusión.

Es importante destacar que el titular de los derechos de autor (copyright) de un software con licencia copyleft también puede crear una versión modificada bajo su propio copyright y venderla bajo cualquier licencia que desee, además de distribuir la versión original como software libre. Esta práctica ha sido utilizada como un modelo de negocio por diversas empresas que desarrollan software libre (por ejemplo, MySQL). Esta práctica no restringe ninguno de los derechos otorgados a los usuarios de la versión copyleft.

En España, cualquier obra derivada está protegida de la misma manera que una obra original, siempre que exista una autorización contractual con el autor. En el caso de que el autor retire las licencias copyleft, esto no afectaría de ninguna manera a los productos derivados creados antes de esa retirada, ya que no tiene efecto retroactivo. Desde el punto de vista legal, el autor no tiene el derecho de revocar un permiso otorgado mediante una licencia en vigencia. En caso de que ocurriera tal situación, cualquier conflicto entre las partes se resolvería mediante un litigio convencional.

Ventajas del software libre

El software libre ofrece una serie de beneficios que promueven el desarrollo y mejora continua de los programas:

  1. Desarrollo y mejora colaborativa: El acceso al código fuente permite que numerosas personas revisen y prueben el software, lo que resulta en un producto final de mayor calidad. Además, al ser revisado por la comunidad, la seguridad del software libre suele ser superior en comparación con el software propietario.
  2. Rápida solución de problemas: Dado que el software libre es atendido por una amplia comunidad de usuarios, cualquier falla o deficiencia puede ser detectada y solucionada de manera más ágil. No se depende únicamente de la compañía fabricante para lanzar actualizaciones o versiones corregidas, lo que acelera los tiempos de solución.
  3. Independencia tecnológica: Al no estar ligados a los grandes fabricantes de software, los usuarios tienen la libertad de decidir si es necesario migrar o actualizar su sistema sin estar sujetos a decisiones impuestas por terceros.
  4. Ahorro económico: El uso de software libre permite reducir los costos asociados a la adquisición, mantenimiento y renovación de tecnologías. La realización de actualizaciones o instalaciones masivas de software libre resulta más económica que con software propietario. Además, al no requerir licencias anuales, los usuarios pueden ahorrar dinero o invertirlo en adquirir otros programas necesarios para su empresa.
  5. Posibilidad de copiado y distribución: El software libre puede ser copiado y distribuido sin necesidad de adquirir nuevas licencias. Esto facilita su difusión y acceso a aquellos que lo necesiten, fomentando la colaboración y la libre circulación del conocimiento.

Estos aspectos del software libre promueven un entorno de colaboración, flexibilidad y accesibilidad, brindando a los usuarios la posibilidad de participar activamente en el desarrollo y uso de las tecnologías.

Los 10 requisitos generales de software de código abierto

Redistribución libre: No se impone ninguna restricción a ninguna de las partes para vender o redistribuir el software, y no se requiere el pago de regalías o tarifas por su venta.

Acceso al código fuente: El programa debe incluir el código fuente y permitir su distribución tanto en forma compilada como en código fuente. Si alguna forma del programa no se distribuye con el código fuente, debe haber un medio claramente indicado para obtener el código fuente a un costo razonable, preferiblemente a través de descarga gratuita por Internet. El código fuente debe ser la forma preferida en la que un programador realizaría modificaciones en el programa. No se permite la utilización intencionada de código fuente obfuscado. No se permiten formas intermedias como la salida de un preprocesador o traductor.

Obras derivadas: La licencia debe permitir modificaciones y obras derivadas, y permitir que sean distribuidas bajo los mismos términos que la licencia del software original.

Integridad del código fuente del autor: La licencia puede restringir la distribución del código fuente modificado solo si permite la distribución de "archivos de parches" junto con el código fuente para permitir su modificación durante la compilación. La licencia debe permitir explícitamente la distribución de software creado a partir del código fuente modificado. La licencia puede requerir que las obras derivadas tengan un nombre o número de versión diferente al software original.

No discriminación de personas o grupos: La licencia no debe discriminar a ninguna persona o grupo de personas.

No discriminación de campos de actividad: La licencia no debe restringir a nadie el uso del programa en un campo específico de actividad. Por ejemplo, no puede limitar el uso del programa en negocios o en investigaciones genéticas.

Distribución de la licencia: Los derechos relacionados con el programa deben aplicarse a todos aquellos a quienes se redistribuye el programa, sin necesidad de requerir una licencia adicional por parte de esas partes.

No dependencia del producto: Los derechos relacionados con el programa no deben depender de que el programa forme parte de una distribución de software específica. Si el programa se extrae de esa distribución y se utiliza o redistribuye bajo los términos de la licencia del programa, todas las partes a las que se redistribuye el programa deben tener los mismos derechos que los otorgados junto con la distribución original del software.

No restricción de otro software: La licencia no debe imponer restricciones a otro software que se distribuya junto con el software licenciado. Por ejemplo, no debe exigir que todos los demás programas distribuidos en el mismo medio sean software de código abierto.

Neutralidad tecnológica de la licencia: Ninguna disposición de la licencia debe depender de una tecnología o estilo de interfaz específico.

Mas Artículos Relacionados

¿Te ha gustado Nuestro artículo?, por favor compartelo en tus redes sociales

kilo tapias peralta escobar fundador

Kilo tapias peralta Escobar

Soy el fundador de Corporación KRONOZ, divulgador de ciencia, amante de la naturaleza, y fiel creyente del error y superación del ser humano, “El tiempo es solo una mera ilusión, el pasado, el presente y el futuro, existen simultáneamente, como parte de un rompecabezas, sin principio ni final”.

#kilotapias #EspacioHonduras #CorporaciónKronoz

facebook

instagram

linkedin

pinterest

twitter

youtube