La Definición de Software Libre
En 1984, Richard Stallman definió el concepto de software libre. Un programa es libre si la licencia del programa concede al usuario cuatro libertades, sin ningún tipo de restricción:
- La libertad de ejecutar el programa.
- La libertad de modificar el programa.
- La libertad de redistribuir copias del programa original.
- La libertad de distribuir copias de las versiones modificadas.
Lógicamente, para poder estudiar y modificar un programa se necesita tener acceso al código fuente del programa. Cualquier licencia que concede estas libertades se considera una licencia libre, por lo que existen muchas licencias libres, algunas incompatibles.
Ventajas E Inconvenientes del Software Libre
Publicar software con licencias libres es un acto de generosidad que se puede explicar por muchos motivos, éticos, técnicos o comerciales. Quizás la característica más importante del software libre es que acerca posturas entre distintas individuos, empresas o instituciones, que contribuyen de acuerdo con sus intereses y posibilidades.
Un factor que puede impedir que alguien publique software libre es que otros puedan modificar el programa, cambiar su licencia y convertirlo en software no libre, es decir, aprovecharse del trabajo de otros sin dar nada a cambio. Consciente de este problema y para favorecer el espíritu de colaboración, Richard Stallman ideó también el concepto de copyleft.
El Copyleft
Una licencia libre es una licencia con copyleft cuando obliga a quien modifica un programa a publicar las modificaciones bajo la misma licencia con copyleft.
El copyleft está pensado para alentar que más software se publique como software libre. Cuando alguien publica software libre con copyleft está permitiendo que los demás usen su software, pero solicitando que si lo distribuyen con cambios, también estarán obligados a compartir las mejoras con los demás.
La principal licencia con copyleft es la licencia GPL (General Public License). El código fuente de los programas GPL incluyen la siguiente referencia:
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation, Inc.
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
El Crecimiento del Software Libre
En los inicios de la informática, el software estaba estrechamente vinculado a los ordenadores y había tan pocos ordenadores que los programas se escribían prácticamente a medida. En los años 60, el software se volvió tan importante que los fabricantes comenzaron a vender licencias separadas de la infraestructura del software, que adoptó a lo largo de los años 70 el modelo de software no libre (con pago por licencia). En los años 80, el software libre era extremadamente minoritario, muy centrado en ámbitos académicos.
En los años 90, la aparición de Internet facilitó la colaboración entre individuos y pequeñas empresas, aumentando la cantidad, calidad y uso del software libre, que en gran medida tenía baja reputación. Las grandes empresas del software comenzaron a ver que el SL podía ser una buena forma de ahorrar en investigación o de ofrecerlo acompañando a otros productos y servicios. Eso favorece que se publique cada vez más software con licencias libres, aunque las empresas tienden a elegir licencias de software sin copyleft, como la **licencia MIT** o la **licencia Apache**.
Sin duda estamos viviendo la edad de oro del software libre, aunque los puristas lamentan que no todo el software tenga copyleft, la garantía de que no haya vuelta atrás en la libertad.