Download ¿Qué es el software libre?

Document related concepts

Distribución Linux wikipedia , lookup

Historia de Linux wikipedia , lookup

GNU wikipedia , lookup

Richard Stallman wikipedia , lookup

Qt (biblioteca) wikipedia , lookup

Transcript
¿Qué es el software libre?
1. El nacimiento del software libre .................................................... 1
2. La filosofía del software libre ......................................................... 3
3. Licencias de programas ................................................................ 7
4. Programas disponibles ................................................................. 9
5. Cómo podemos conseguir software libre .................................... 12
Elaborado por Tecniber-5
C/ Padilla, 395. 08025 Barcelona. Tel. 93 456 28 87
www.tecniber.cat
julio, 2009
¿Qué es el software libre?
1. Nacimiento del software libre
¿Qué es?
Software que permite al usuario ejecutarlo sin ponerle condiciones,
distribuir copias, modificar el código fuente para perfeccionar el
funcionamiento o adaptarlo a usos concretos, y difundir los resultados de estas modificaciones
ca
es
fr
fr
en
en
programari lliure, m
software libre
logiciel libre
logiciel ouvert
free software
freeware
Al hablar del software libre utilizamos a menudo términos como por ejemplo código ejecutable, código fuente... Definiremos primero estos términos para fijar con1
ceptos que nos resultarán útiles para entender el tema que nos ocupa .
Lenguaje de programación: lenguaje artificial que permite generar y
expresar programas informáticos.
Código fuente: conjunto de instrucciones en un lenguaje de programación que un sistema informático debe procesar para poderlas ejecutar.
Código ejecutable: conjunto de instrucciones en código binario (cadenas de unos y ceros) que sólo el ordenador puede interpretar, ejecutar
y cumplir.
Compilar: convertir un programa de origen (código fuente) en un programa resultante (código ejecutable).
Código fuente abierto: código fuente al cual se puede acceder para
hacer modificaciones que permitan perfeccionar el funcionamiento de
un software, o adaptarlo a usos concretos.
Los programadores escriben las instrucciones que los procesadores de los ordenadores deberán ejecutar. Para escribir estas instrucciones utilizan los llamados
lenguajes de programación. El código fuente de una aplicación informática es el
conjunto de instrucciones complejas que el procesador leerá y ejecutará. Para
que el procesador sea capaz de entender estas instrucciones es necesario compilar el código fuente para convertirlo en código ejecutable, que son series de instrucciones básicas que el procesador interpreta. El resultado de esta compilación
es el código ejecutable.
¿Cómo nació?
Durante los años 60, los sistemas informáticos eran my caros y se destinaban a finalidades científicas. Uno de los centros de investigación más importantes de la época era
el Massachusetts Institute of Technology (el MIT) donde trabajaban personas apasionadas por la informática, con un gran conocimiento de los sistemas informáticos y un
vivo interés para explorar las características y poner a prueba sus habilidades en este
ámbito. Estos informáticos eran llamados hackers2.
Durante esta época (años 60 y 70) los programas se distribuían con su código fuente
de tal manera que los informáticos podían participar en su mejora. El código de conducta de los hackers los llevaba a compartir sus trucos y sus hallazgos.
El sistema operativo más influyente de esta época era el Unix3 propiedad de la empresa AT&T. Esta empresa no facilitaba asistencia técnica sobre el Unix, pero sí una co1
Elaborado a partir de Rosell, Xavier: Programari lliure. Idees i conceptes. http://www.edu365.com
No debe confundirse a los hackers con los crackers. Estos últimos son personas que se introducen ilegalmente en un
sistema informático con la voluntad de producir un perjuicio o obtener un provecho.
3
Un sistema operativo es un programa informático que controla tareas básicas en un ordenador, por ejemplo, la ejecución de programas y de aplicaciones, la asignación de memoria interna y la conexión y desconexión de periféricos.
UNIX fue el primer sistema operativo que podía ser utilizado en diversas plataformas de hardware y que tenía capacidad multiusuario y multiproceso.
2
Espacio Multimedia
1
¿Qué es el software libre?
pia del código fuente que podía ser adquirida por poco dinero. Los centros de computación y las universidades podía así adaptar el sistema a sus necesidades. Pero a
principios de los 80 AT&T decidió cerrar el código y no distribuirlo.
Entre las empresas de software se iría extendiendo un modelo de código cerrado, en
virtud del cual el software se vendía sin código fuente y, cada vez más, las libertades
de los usuarios iban disminuyendo. En este contexto, Richard Stallman, ingeniero del
MIT, empezó a ver con desagrado como dejaba de tener acceso al código fuente. Esta
situación le impide solucionar problemas y adaptar los programas a sus necesidades.
Su ética de hacker no le permitía firmar acuerdos de exclusividad y de no compartición
que su empresa le pedía. Decidió abandonar el MIT e iniciar el proyecto de construir
un sistema de software completo y absolutamente libre.
En 1984, Stallman crea la Free Software Foundation con el objetivo de crear el sistema operativo libre inspirado en Unix, al cual llamaría GNU (que significa GNU no es
UNIX), y la potenciación del software libre.
Tarea
Leer el primer mensaje escrito por Richard Stallman en 1983,
en el que anunciaba su proyecto:
http://www.gnu.org/gnu/initial-announcement.es.html
Leer el “Manifiesto GNU” de Stallman:
http://www.gnu.org/gnu/manifesto.es.html
Durante los años 80, Stallman trabajó en el desarrollo de las herramientas necesarias
para crear un sistema operativo completamente libre.
En 1991, un estudiante finlandés de 21 años llamado Linus Torvalds publicó en la red
su propio núcleo de sistema operativo, inspirado en UNIX que más tarde se llamaría
Linux. Centenares de programadores comenzaron a trabajar en la mejora de este
núcleo que era justamente el “corazón” que le faltaba al sistema GNU que Stallman
estaba diseñando y se ocuparon en integrar a su alrededor todo el software GNU ya
desarrollado y muchos otros programas libres.
Linux se ha convertido en el buque insignia del movimiento del software libre, ya que
es un sistema operativo completamente libre que incluye todo tipo de herramientas
para servidores y usuarios finales.
Espacio Multimedia
2
¿Qué es el software libre?
2. La filosofía del software libre
La Free Software Foundation propone una definición de software libre que está basada en cuatro libertades básicas:
1. Libertad para poder utilizar el programa con cualquier finalidad.
2. Libertad para estudiar cómo funciona el programa; incluye el
acceso a su código fuente.
3. Libertad para redistribuir el programa.
4. Libertad para hacer modificaciones y distribuir las mejoras,
incluye el acceso a su código fuente.
Tarea
Leer la definición de software libre:
http://www.gnu.org/philosophy/free-sw.ca.html
Leer el artículo de Richard Stallman Por qué el software no
debería tener propietarios:
http://www.gnu.org/philosophy/why-free.ca.html
No se debe confundir el software libre con el software gratuito. Un programa, por el
solo hecho de ser gratuito, no tiene porqué ser también libre. Así, por ejemplo, el Adobe Reader es un software gratuito, pero no es libre, ya que no da a sus usuarios la
posibilidad de estudiarlo (incluyendo el acceso a su código fuente), ni mejorarlo, ni
hacer públicas estas mejoras con el código fuente correspondiente para que todo el
mundo se pueda beneficiar. Adobe Reader es, pues, un programa de propiedad en
lo que se refiere a libertades y gratuito en lo que se refiere al coste.
Tipos de software convencional:
Software gratuito: en inglés Freeware. Software que se distribuye de
manera gratuita, cuyo programador conserva los derechos de autor,
pero renuncia a cobrarlos.
Software de prueba: en inglés Shareware. Software que se distribuye
de manera gratuita para que los usuarios lo puedan conocer, con el
compromiso de pagar al autor una cantidad de dinero si, pasado cierto
tiempo, decide comprarlo.
De propiedad: para este tipo de software su propietario determina las
condiciones bajo las cuales el usuario puede ejecutarlo, copiarlo o modificar el código fuente. No es libre ni de código abierto.
Espacio Multimedia
3
¿Qué es el software libre?
E 1998, Eric S. Raymond, Bruce Perens y otros programadores presentaron la Open
Source Initiative, proponiendo el término open source (código abierto) como alternativa a free software (software libre) para hacerlo más atractivo en el mundo empresarial4.
http://www.opensource.org/
Según el Open Source Initiative las condiciones que debe satisfacer un programa
para ser considerado de código abierto son las siguientes:
1. Libre distribución. No se puede impedir la venta o distribución del programa o de
una parte. Así mismo, tampoco no se puede exigir el pago de un canon o tasa a
cambio de su distribución por parte de terceros.
2. Código fuente. El programa debe incluir su código fuente y no se puede restringir
la distribución.
3. Obras derivadas. No se puede impedir realizar modificaciones o trabajos derivados del programa y es necesario permitir que estos trabajos se distribuyan en las
mismas condiciones que el software original.
4. Integridad del código fuente original. Se puede exigir que una versión modificada del programa tenga un nombre y un número de versión diferente que el programa original para poder proteger al autor original de la responsabilidad de estas
versiones.
5. No discriminación contra personas o grupos. Las condiciones de uso de los
programas no pueden ser discriminatorias hacia una persona o grupo de personas.
6. No discriminación contra usos. No se puede negar a nadie hacer uso del programa con una finalidad determinada, como por ejemplo, comercial o militar.
7. Distribución de la licencia. Los derechos del programa se deben aplicar a todo el
mundo a quien se redistribuya el programa y sin ninguna condición adicional.
8. La licencia no debe ser específica de un producto. Los derechos que se garantizan al usuario del programa no deben depender del hecho que un programa forme parte de una distribución o de un paquete de software determinado.
9. La licencia no debe restringir otro software. La licencia no debe poner restricciones a otros programas que se distribuyan junto con el software licenciado.
10. La licencia debe ser tecnológicamente neutra. Ninguna disposición de la licencia obligará al uso de una tecnología concreta.
4
La utilización de la palabra free creaba una situación confusa en lengua inglesa, ya que free es una palabra que tanto
quiere significar “libre” como “gratis”
Espacio Multimedia
4
¿Qué es el software libre?
Ventajas del software libre
Coste
El software libre es una opción muy atractiva para los usuarios individuales ya que no
hace falta preocuparse por el precio. Es también una ventaja clara para empresas y
administraciones públicas.
Innovación tecnológica
En el modelo de software libre es muy importante compartir información y trabajo cooperativo, lo cual permite que el trabajo de unos revierta en beneficio de otros que
pueden continuar avanzando e innovando.
En el ámbito del software de propiedad, las licencias patentes de software se utilizan
para impedir que terceras personas participen de este conocimiento y lo mantienen
como patrimonio exclusivo de la empresa que lo creó y no como conocimiento de dominio público.
Como en el desarrollo del software libre tienen mucha importancia los usuarios, estos
influyen en la dirección en la cual los programas evolucionan: votan los errores que
quieren ver corregidos, proponen nuevas funciones para el programa o contribuyen
personalmente a su desarrollo.
Requisitos de hardware y durabilidad de las soluciones
A menudo el software libre no es tan exigente con los requisitos del hardware y, por lo
tanto, algunas soluciones son más baratas de utilizar. Por ejemplo, los sistemas Linux
que actúan como servidores se pueden utilizar sin la interfaz gráfica y esto representa
una reducción en el hardware necesaria.
Por otro lado, es práctica habitual en el ámbito del software de propiedad que un fabricante decide no continuar un proyecto con una plataforma determinada o con un
hardware que considere obsoleto con lo cual algunas máquinas ya no se podrían utilizar para utilizar el programa. En el ámbito del software libre estas decisiones no las
puede tomar una empresa, sino toda la comunidad, lo que se traduce, generalmente,
en un mejor soporte para las versiones de software antiguas y para las plataformas de
hardware y software más minoritarias.
Escrutinio público
El software libre es escrito de manera cooperativa por programadores, generalmente
voluntarios, que trabajan en Internet de manera coordinada. El código fuente del programa es visible para todos, lo que hace que los errores puedan ser descubiertos de
manera más rápida y que las correcciones se hagan de manera más ágil y dinámica.
Adaptación del software
El software de propiedad se vende en forma de paquete estándar difícilmente adaptable a la realidad de empresas y administraciones. En el caso del software libre, como
se dispone del código fuente, el programa se puede personalizar para ajustarlo a las
necesidades de las organizaciones.
Lengua
Las lenguas minoritarias, por ejemplo el catalán o el gallego, han tenido pocas posibilidades de desarrollarse en el mundo del software de propiedad ya que el fabricante es
el único que puede realizar o autorizar la traducción. En el mundo del software libre las
traducciones a las lenguas minoritarias son una práctica habitual ya que no es necesaria la autorización de ningún propietario o institución.
Espacio Multimedia
5
¿Qué es el software libre?
Tarea
gnuLinex es una iniciativa de la Junta de Extremadura para
promover la creación de una distribución basada en
GNU/Linux que es utilizada en los miles de centros educativos
de la región.
Leer en qué consiste este proyecto:
http://www.linex.org/linex2/linex/index.html
LaFarga.org es un espacio promovido por la Generalitat de
Catalunya. Su objetivo es la promoción del software libre en
catalán.
Navegar por este sitio web para conocer la iniciativa:
http://www.lafarga.org
¿Qué es una distribución de Linux?
Una distribución Linux, o distribución GNU/Linux es un conjunto de aplicaciones reunidas por un grupo, empresa o persona para permitir instalar fácilmente un sistema Linux.
Hay numerosas distribuciones Linux. Cada una de ellas puede incluir
una cantidad de software adicional (libre o no), por ejemplo, algunos tipos de software que facilite la instalación del sistema y una gran variedad de aplicaciones, entre otras, entornos gráficos, paquetes ofimáticos, servidores web, servidores de correo, servidores de FTP, etc.
Algunas distribuciones de GNU/Linux son las siguientes:
Slackware
http://www.slackware.com
Debian GNU/Linux
http://www.debian.org
RedHat Linux
http://www.redhat.com
SuSE Linux
http://es.opensuse.org
Knoppix
http://www.knoppix.org/
Espacio Multimedia
6
¿Qué es el software libre?
3. Licencias de programas
El software es fruto del esfuerzo, valor intelectual e inversión del autor y representa su
creatividad. Así mismo, en la gran mayoría de casos, tiene un uso industrial en el sentido amplio: en las diferentes actividades comerciales, industriales o recreativas del
hombre. Por lo tanto, se ha estimado que el software merece una protección legal como cualquier otra creación humana, con la diferencia de que se trata de una creación
intelectual. Se recurre a la protección que ofrece el derecho de la propiedad intelectual
e industrial, que otorga a los autores ciertos derechos monopolísticos de explotación
de su obra y de control sobre diversas actividades relacionadas: la copia, la modificación, la distribución, la comercialización, e incluso su uso en los procesos y la producción industriales.
Tradicionalmente, en el mundo del software de propiedad se ha utilizado este marco
legal para garantizar que el fabricante del software –que tiene derechos exclusivos
sobre el programa informático– puede bloquear el acceso al código fuente de sus programas, impedir a la competencia que desarrolle productos similares, y limitar los derechos que los usuarios tienen sobre el programa, como por ejemplo, la copia o la modificación.
Por el contrario, en el mundo del software libre se utiliza el marco legal de los derechos de autor para colectivizar los derechos que el autor tiene sobre el software, incluyendo los derechos a copia, uso y modificación.
Ya que la ley no estipula una fórmula legal específica para la cesión de los derechos
de autor a terceros, el autor de un programa informático y titular de los derechos utiliza
habitualmente un contrato que determina la manera en que el autor cede –
normalmente de manera no exclusiva– parte des sus derechos al usuario (copia, modificación, distribución, etc.), determinando también las condiciones en que puede utilizarlo y detallando el ámbito de los derechos y obligaciones asociados. Este contrato
recibe el nombre de licencia de software.
En el mundo del software de propiedad, prácticamente cada fabricante de software ha
creado su propia licencia adecuada al software en cuestión y al modelo de negocio del
fabricante. En el mundo del software libre existe también una gran diversidad de licencias; mencionaremos a continuación algunas de las más habituales:
GNU GPL
La Licencia Pública General del proyecto GNU (conocida por licencia GNU GPL) fue
creada por la Free Software Foundation. Esta licencia, la más utilizada en el mundo
del software libre, permite la distribución del código ejecutable y del código fuente.
Permite hacer modificaciones del código fuente sin restricciones, pero cualquiera de
estas modificaciones ha de estar también bajo una licencia GPL, con lo que se pretende garantizar que un programa publicado bajo sus condiciones nunca podrá hacerse
propietario. En la dirección http://ca.dodds.net/gnu/gpl.ca.html encontramos una traducción (no oficial) de esta licencia.
GNU LGPL
La Licencia Pública General Menor del proyecto GNU (conocida por sus iniciales en
inglés LGPL) es la otra licencia de la Free Software Foundation. Esta licencia permite
el uso de aplicaciones libres con aplicaciones de propiedad. El programa se redistribu-
Espacio Multimedia
7
¿Qué es el software libre?
ye como si estuviese bajo la licencia GPL, pero se permite la integración con cualquier
otro software sin prácticamente limitaciones.
MPL
La Licencia Pública de Mozilla (MPL) es una licencia desarrollada originalmente por la
empresa Netscape Communications Corporation y más tarde su control fue traspasado
en la Fundación Mozilla. Esta licencia cumple completamente con la definición de
software de código abierto de la Open Source Initiative y con las cuatro libertades del
software libre enunciadas por la Free Software Foundation. A pesar de ello la MPL
deja abierta la puerta a una posible reutilización comercial no libre del software , si el
usuario así lo desea, sin restringir la reutilización del código ni el relicenciamiento bajo
la misma licencia.
Tarea
Algunas de las ideas del software libre han inspirado movimientos parecidos entre autores de libros, artículos periodísticos, música o vídeo.
Una de las iniciativas más populares es Creative Commons.
El objetivo de esta organización sin ánimo de lucro es crear
un ecosistema de contenido digital abierto donde los autores
puedan ceder parte de los derechos de autor sobre sus obras.
Leer en que consisten las licencias de Creative Commons:
http://es.creativecommons.org/licencia/
Espacio Multimedia
8
¿Qué es el software libre?
4. Software libre disponible
El software es el conjunto de herramientas que permiten al ordenado almacenar,
procesar y recuperar información.
Podemos hablar de dos tipos de software:
1. software de sistema que controla las operaciones del ordenador en sí, y
2. software de aplicación que resuelve las necesidades de los usuarios del ordenador.
El sistema operativo pertenece al primer grupo y es el más importante de todos
los programas de sistema ya que controla todos los recursos del ordenador: interpreta los comandos que hacen que el usuario se comunique con el ordenador,
coordina la conexión y la desconexión de los periféricos, organiza los archivos
que se encuentran en los dispositivos de almacenamiento, gestiona errores de
hardware...
Entre el software de aplicación, y a modo de ejemplo, encontramos:
— Procesadores de textos: ayudan al usuario a hacer funciones tales como
la entrada y edición de texto, el formato, la revisión y el almacenamiento
del documento en disco y su impresión.
— Gestores de hojas de cálculo: que permite el procesamiento de datos
numéricos.
— Programas de tratamiento de imágenes: para el retoque de fotografías.
— Gestores de sitios web: para la creación y el mantenimiento de sitios
web.
— Navegadores: para acceder a las páginas de hipertexto que hay en la
web.
— etc.
En este apartado mencionaremos algunos de los proyectos libres más conocidos:
Linux
El sistema operativo Linux es el programa más significativo del movimiento
de software libre.
Las primeras distribuciones Linux incluyen el núcleo desarrollado por Linus
Torvalds además de un conjunto de herramientas GNU. Hoy hay distribuciones enfocadas a usos concretos, tales como hacer de cortafuegos en una red o de
servidores de Internet, para ámbitos específicos como por ejemplo, la educación (LinEX, por ejemplo), o de uso general.
Entre las distribuciones comerciales de Linux más conocidas se encuentran Red Hat O
Suse. Otra distribución es Debian que no tiene ninguna empresa detrás de su organización que está formada por voluntarios.
Otros tipos de distribuciones también muy populares son las de los liveCD. Se trata de
distribuciones que se ejecutan directamente desde un CD-ROM y que no requieren
ninguna instalación en el disco duro; es suficiente con introducir el CD-ROM en el PC y
se ejecutan automáticamente.
Se pueden descargar distribuciones de Linux desde la página de la Associació d’Usuaris i Usuàries de GNU/Linux en Llengua Catalana (CALIU):
http://www.caliu.info.
Espacio Multimedia
9
¿Qué es el software libre?
Firefox
Mozilla Firefox es un navegador basado en el código desarrollado dentro
del proyecto Mozilla.org.
El proyecto Mozilla nació en 1998 cuando Netscape Communications
anunciaba la distribución gratuita de su navegador web Netscape Communicator 4, hasta entonces un programa de propiedad, así como la publicación de su
código fuente con el nombre de Mozilla.
Sus características principales son la rapidez así como la facilidad de instalación y
utilización. Firefox es una aplicación muy ligera y rápida, a la vez que cumple con los
principales estándares de Internet.
Firefox incorpora una gran cantidad de funciones que facilitan su utilización: plenamente funcional sólo con el teclado, barra de herramientas personalizable, administrador
de marcadores, integración con buscadores de Internet (por ejemplo, con Google),
bloqueo de las ventanas emergentes no solicitadas, navegación rápida en pestañas
separadas para cada web que se visita, administrador de contraseñas, descarga automática y simple de ficheros.
Puede descargarse el programa, en su versión catalana, desde la página de Softcatalà:
http://www.softcatala.org
La página del proyecto es:
http://www.mozilla.org
OpenOffice.org
OpenOffice es un paquete ofimático disponible en más de 30 idiomas.
OpenOffice está compuesto por 6 módulos:
1. Writer, para el procesamiento de textos.
2. Calc, para la gestión de hojas de cálculo.
3. Impress, para la creación de presentaciones multimedia.
4. Draw, para la creación de dibujos.
5. Math, para escribir ecuaciones.
6. Base, para gestionar bases de datos.
La última versión de OpenOffice se puede descargar desde la página oficial del proyecto:
http://www.openoffice.org
La última versión traducida al castellano se puede descargar desde la dirección:
http://es.openoffice.org
La versión en catalán se puede descargar desde la página de Softcatalà
http://www.softcatala.org
Espacio Multimedia
10
¿Qué es el software libre?
Gimp
Se trata de un programa adecuado para tareas como el retoque fotográfico o creación
y diseño de imágenes.
La página oficial del proyecto es:
http://www.gimp.org
Podemos descargar la versión en catalán del programa desde la página
de Softcatalà:
http://www.softcatala.org
Audacity
Audacity es un programa de edición de audio. Permite grabar
sonidos, reproducirlos, importar o exportar ficheros de los formatos más comunes (por ejemplo, wav, mp3, ogg, o aiff).
Podemos utilizarlo para editar con facilidad sonidos, utilizando las herramientas de
recortar, copiar y pegar, mezclar pistas o aplicar efectos a las grabaciones.
La página oficial del proyecto es:
http://audacity.sourceforge.net/
Espacio Multimedia
11
¿Qué es el software libre?
5. Cómo podemos conseguir software libre
El software libre se puede conseguir desde las páginas web oficiales de los programas
donde encontraremos las últimas versiones así como las instrucciones necesarias para instalación.
A disposición de los usuarios hay una gran cantidad de programas para aplicaciones
muy diversas.
Un listado de software libre lo encontramos en la dirección:
http://directory.fsf.org
Instalación
Los programas de código abierto que podemos encontrar en Internet o distribuidos en
CD están normalmente disponibles para las principales plataformas: Linux, Windows,
Mac OS X.
Para proceder a su instalación en nuestros ordenadores deberemos seguir las instrucciones que encontraremos en los sitios web desde donde realizaremos la descarga.
Créditos
Para la elaboración de parte de estos apuntes hemos utilizado el libro:
Mas i Hernández, Jordi (2005). «Programari lliure: tècnicament viable, econòmicament sostenible i socialment just». [Fecha de consulta: 06/03/06]. <http://www.softcatala.org/~jmas/swl/>
Recomendamos su lectura.
Espacio Multimedia
12