Jesús M. González Barahona
Universidad Rey Juan Carlos
jgb@computer.org
Octubre 2002
©2002 Jesús M. González Barahona
Se otorga permiso para copiar y distribuir este documento completo en cualquier medio si se hace de forma literal y se mantiene esta nota
Publicado en el Monográfico Anual sobre Tecnologías de la Información/Internet, 2002, editado por Staff Empresarial.
Cada vez se habla más del software libre (a veces refiriéndose a él como ``software de fuente abierta'' o, en inglés, ``open source software''). Probablemente el lector tenga claro que constituye una forma diferente y novedosa de entender la producción y distribución de programas, con grandes consecuencias sobre los usuarios y los productores de software. Pero quizás tenga menos claro qué es exactamente... Esto es lo que vamos a tratar de aclarar en este pequeño artículo.
No hay una única definición de software libre, pero las aceptadas comúnmente son suficientemente parecidas como para que podamos definirlo, informalmente, mediante cuatro libertades que tiene quien lo recibe:
Resumiendo, si recibes un programa libre estarás seguro de poder usarlo como quieras, redistribuirlo a quien quieras, por los medios que quieras, y modificarlo (y mejorarlo o adaptarlo). Naturalmente, para poder asegurar estas libertades, todas las definiciones reconocen como imprescindible que el código fuente esté disponible, y sea a su vez redistribuible. De este hecho nace, en gran medida, el término ``open source'' (fuente abierta) que es propuesto por algunos como término para referirse al software libre.
Por cierto, es importante destacar en este momento que el software libre no obliga a ejercer ninguna de estas libertades, sólo las posibilita. Por ejemplo, el usuario de software libre no está obligado a redistribuir sus programas, a modificarlos, ni siquiera a usarlos...
Para aplicar estas libertades a un programa se usan las llamadas ``licencias de software libre''. Según la legislación sobre derechos de autor (que es la que clásicamente se aplica a los programas de ordenador), cuando se recibe un programa sólo se puede redistribuir o modificar según los términos de la licencia que lo ``protege''. Por eso, en el mundo del software libre las licencias son muy importantes, y nos marcan exactamente qué podemos, y qué no, con cada programa. Aunque es cierto que, atendiendo a las libertades mencionadas, y sin saber nada más sobre licencias, se puede estar seguro de que al recibir un programa libre, como mínimo estas libertades están garantizadas (si no, no sería libre), lo que ayuda mucho al que no quiera profundizar más en asuntos legales.
Algunos ejemplos de licencias de software libre son la GNU General Public Licence (GPL), o la licencia de la Berkely Software Distribution (BSD).
Si buscamos definiciones más rigurosas que la que acabamos de introducir, podemos acudir al detalle de las definiciones formales más aceptadas: las ``Directrices de software libre de Debian'', la ``Open Source Definition'' (que se basó en las directrices de Debian, y es muy parecida a ellas) y el artículo ``¿Qué es el software libre?'', de la Free Software Foundation. Estas definiciones son similares, y se diferencian sólo en algunos detalles (que sin embargo pueden ser muy importantes cuando se examina una licencia en particular).
Las características del software libre, y las implicaciones que tiene su uso, son en gran medida consecuencias de estas libertades a las que nos estamos refiriendo. Por ejemplo, la libertad de redistribución proporciona, en la práctica, una canal de distribución de gran eficiencia económica, y de muy bajo coste para el productor. Las posibilidades de modificación y de redistribución de las modificaciones facilitan la evolución y mejora técnica de los programas. Y de la aplicación de todas las libertades simultáneamente se deducen importantes sinergias, que hacen que el software libre se comporte de una forma tan especial.