Preguntas frecuentes (FAQ) acerca del Software Libre
Lista elaborada por Genus Consulting, SL (última versión: 12/Jul/2007)
Puede encontrar la última versión en el sitio web informatica.info.
¿Qué es el software libre?
Un programa informático es 'libre' cuando su autor o autores permiten su utilización bajo las condiciones de una "licencia de software libre". En Inglés, se utiliza el término "Open Source Software".
¿Qué es una 'licencia de uso' de un programa informático? ¿Y una 'licencia de software libre'?
Los programas informáticos llevan un documento legal, llamado "licencia de uso", que establece bajo qué condiciones se puede utilizar el programa; el texto de la licencia suele aparecer cuando éste se instala. Existen dos tipos de licencias: las de software libre y las de software cautivo o "propietario".
Las licencias de software libre establecen unas condiciones permisivas, incluyendo la posibilidad de acceder al "código fuente" del programa y redistribuirlo con o sin modificaciones.
Las licencias cautivas establecen numerosas restricciones, y generalmente impiden que se utilice el programa en más de un ordenador, entre otras limitaciones.
¿Qué es el 'código fuente'?
El 'código fuente' de un programa informático es un conjunto de ficheros a partir del cual se puede generar el programa informático ejecutable que utilizamos en nuestros ordenadores. Todos los programas informáticos se crean a partir de archivos de 'código fuente' que el creador del programa escribe para producir la funcionalidad que desea. El código fuente generalmente incluye instrucciones escritas en algún lenguaje de programación de propósito general, como C, Basic o Java. Si no se posee el código fuente de un programa, generalmente no es posible ampliarlo ni corregir fallos, por lo que estas funciones sólo puede hacerlas quien posea dicho código.
La mayoría de las empresas de desarrollo de software guardan todo o parte de sus códigos fuente como un secreto industrial. En los desarrollos de software libre, en cambio, se da acceso al código fuente, y se concede la posibilidad de modificarlo y redistribuirlo.
¿Qué caracteriza a una licencia de software libre?
Una licencia de software libre debe permitir el acceso al código fuente del programa, así como su modificación y redistribución con o sin modificaciones, sin necesidad de pagar dinero adicional al autor ni pedirle permiso.
¿Cómo puedo saber si una licencia es libre?
Lea la licencia atentamente para averiguar si cumple las condiciones de una licencia de software libre; tal vez necesite la ayuda de un asesor legal. Pero lo más sencillo es comprobar si la licencia está aprobada por una organización como la Open Source Initiative, dedicada a promover el software libre.
¿Cuáles son las licencias libres más conocidas?
GNU General Public License (GPL)
Se caracteriza por ser incompatible con el software cautivo. Sin embargo, es la licencia que suelen utilizar las empresas para liberar sus productos de software, ya que impide que un competidor pueda utilizar el código fuente en un producto de licencia cautiva. También es más larga y compleja que otras licencias.
Es importante destacar que se utilizan dos versiones distintas de la licencia: la 2 y la (recién aparecida) 3. La 2 es utilizada, entre otros, por el célebre proyecto Linux, que probablemente no utilizará la versión 3.
GNU Lesser General Public License (LGPL)
Una licencia derivada de la GPL, pensada para relajar los requisitos de ésta con la intención de poder ser usada para componentes reusables. En la práctica, se queda en un terreno indefinido entre la GPL y la BSD, y muchas veces su uso se considera legalmente inseguro tanto para el autor del software como para quien lo utiliza. Los propios autores de la licencia recomiendan actualmente utilizar la GPL en su lugar.
BSD
Es compatible con el software cautivo, y también con la licencia GPL siendo, por tanto, una de las licencias más abiertas. Suele ser utilizada por las empresas de software que basan su modelo de negocio en el servicio y no en el producto.
Apache
Es la licencia utilizada en los proyectos de la Apache Software Foundation, y raramente se utiliza fuera de ese contexto. Es compatible con las licencias de software cautivo, pero no con la versión 2 de la GPL. La GPLv3 permite establecer una excepción para ser compatible con la licencia Apache.
¿Qué es una licencia Copyleft?
Las licencias copyleft no permiten que el software (o trabajos derivados) se publiquen con una licencia diferente (lo que se llama 'sublicenciar'). Por ejemplo, la licencia GPL es copyleft, e impide que el software se redistribuya con una licencia distinta a la original.
Quiero publicar software con licencia libre: ¿Qué licencia elijo? ¿Cuál es la mejor licencia de software libre?
Una licencia de uso es simplemente un tipo de contrato, y no existe una licencia que sea por definición 'mejor' que otras. Simplificando, en la práctica es frecuente utilizar la BSD para publicar librerías de propósito general, y la GPL para el resto de casos, pero la elección de una licencia depende de muchos factores, siendo necesario examinar cada caso concreto.
¿El software libre es gratuito?
Cuando le entregan un programa de software libre, puede acceder al código fuente y ejercer los derechos que se indican en la licencia sin pagar ningún cargo adicional, pero eso no quiere decir que no haya tenido que pagar para obtener el software en primer lugar.
La mayoría de veces, el software libre puede ser descargado de Internet sin coste alguno, pero en ocasiones es necesario pagar por el producto o por un contrato de mantenimiento.
¿El software libre es escrito por voluntarios en su tiempo libre?
Algunos programas (o fragmentos) son escritos, de forma voluntaria y sin contraprestación económica, por desarrolladores profesionales en su tiempo libre, pero otros son escritos por programadores contratados para ese fin. En realidad, en la mayoría de proyectos importantes de software libre (Linux, MySQL, Apache, OpenBSD, ...) el desarrollo está dominado por empresas o consultores que trabajan de forma remunerada.
¿Quién paga el desarrollo de software libre?
En la actualidad, son las grandes empresas usuarias de software las que financian los proyectos de software libre, ya que les proporcionan programas de calidad y una gran independencia con respecto a los suministradores.
También los fabricantes de hardware se están decantando por el software libre, ya que proporciona más fiabilidad y posibilidades de adaptación al usuario, suponiendo un importante argumento de venta. La administración pública de algunos países está comenzando a financiar, también, el software libre.
¿Es buena la calidad del software libre?
La calidad del software libre generalmente supera la del cautivo. La inmensa mayoría de los programas que hacen funcionar Internet, por ejemplo, son libres o derivan de software libre.
Cuando aparece un fallo en un programa libre, generalmente es detectado con rapidez y solucionado por cualquier desarrollador, por lo que la fiabilidad suele ser elevada. Por contra, el software libre es un fenómeno relativamente reciente y algunos programas libres todavía no han llegado al nivel de sus equivalentes cautivos que llevan muchos más años en el mercado.
¿Por qué apareció el software libre?
Muchos usuarios de programas informáticos están descontentos con los productos que utilizan, y al no tener acceso a los códigos fuente no pueden mejorarlos o adaptarlos a sus necesidades. El uso de software libre como solución a este problema fue popularizado inicialmente por personas como Richard M. Stallman, y posteriormente se ha ido extendiendo.
