sábado, 7 de junio de 2014

Procedencia del Software Libre

La primera generación de computadoras aparece a finales de la década de 1940. Eran de enormes dimensiones y muy costosas. El poder computacional era muy pobre comparado con las computadoras de la actualidad. La relación entre el hardware y el software era demasiado estrecha, los programas se escribían de una manera bastante especializada (lenguaje de máquina) y por lo tanto, el concepto de software como una parte “independiente” del hardware se veía todavía muy lejano. Debido precisamente a esta relación entre hardware-software, las personas que operaban las computadoras debían de poseer cierto nivel de conocimientos sobre el funcionamiento de las mismas, así como de los programas que necesitaban para hacerlas funcionar. En ese entonces no existían los usuarios convencionales, todos eran usuarios especializados, en su gran mayoría científicos o ingenieros.
Entre esos usuarios expertos, era muy común que se diera el intercambio de programas así como el compartir mejoras hechas a los mismos. A estas mejoras en el software se les conoce como hacks y a estos primeros expertos o gurus de la programación se les empezó a llamar hackers. Término que en la actualidad se ha ido desvirtuando, confundiéndolos con delincuentes informáticos. En general a los hackers les interesa conocer el funcionamiento detallado de los sistemas informáticos y de su seguridad, manteniendo una actitud ética. Algunos traspasan esta línea y se convierten en lo que la comunidad hacker ha denominado cracker.
En los inicios de la computación, 40s y 50s, no existían las licencias de software. El software era libre y los programas se intercambiaban como se hace con las recetas de cocina. Este espíritu perduró en la comunidad de programadores durante años como algo natural, hasta que con el tiempo las restricciones derivadas de licencias de uso, implementadas por desarrolladores de software y las grandes compañías, plantearon la necesidad de fijar una línea divisora entre el software libre y el software propietario.
Posteriormente, el software se empezó a ver más como una gran colección de pequeños fragmentos de código, susceptible de ser modificado y adaptado. Las computadoras de escritorio empezaban a volverse cada vez más populares y accesibles a un número mayor de personas. Había también una mayor cantidad de programadores probando cosas nuevas, escribiendo sus propias aplicaciones e iniciando una gran variedad de proyectos. Sin embargo, había una importante limitante, la gran mayoría del software que se utilizaban en ese momento era propietario y venía protegido por licencias que regulaban su uso y distribución.
Con el surgimiento del ARPANET (precursor del Internet) a finales de la década de los 60s --la cual permitía la interconexión entre redes de computadoras de las diversas universidades-- empezó el surgimiento de la primera comunidad global que se alzaba sobre los valores y principios del software libre. Los grupos hasta entonces dispersos de hackers, pudieron a través de la red, sumar esfuerzos, intercambiar conocimientos y colaborar entre sí. Los proyectos involucraban cada vez más desarrolladores de software, quienes estaban dispersos geográficamente alrededor del mundo y utilizaban el correo electrónico como medio de comunicación para hacer llegar sus aportaciones.
La aportación de UNIX al software libre
Los origenes del sistema operativo UNIX se remontan a finales de los años 60s. UNIX en sus inicios fue un proyecto de investigación por parte de los laboratorios Bell de AT&T. El propósito era desarrollar un sistema operativo simple y elegante, además se quería evitar que estuviera completamente escrito en ensamblador, lo que motivó el nacimiento del lenguaje de programación C.
Con el transcurrir de los años el sistema operativo fue ganando adeptos y aumentando su popularidad entre los usuarios. A finales de los años 70s, AT&T creó un grupo con la misión de comercializar el sistema operativo: el UNIX Support Group (USG). El problema que surgió fue que las licencias, que un principio habían sido libres de cualquier costo, o a precios relativamente bajos, se fueron encareciendo. Éstas incluían cada vez más restricciones, limitando el uso y las posibles mejoras que se pudieran hacer al sistema operativo. Además, estas políticas provocaron que prácticamente cualquier empresa grande de software de aquel entonces, dispusiera de su propia versión de UNIX. Esto provocó que las mismas fueran hasta cierto punto incompatibles y se entorpeciera la posibilidad de aprovechar el conocimiento sobre UNIX de otro fabricante.
Algunas de las versiones de UNIX y sus empresas comercializadoras eran: AIX de IBM, HP-UX de Hewlett-Packard, Solaris y SunOS de Sun Microsystems, IRIX de Silicon Graphics, entre otras. El principal elemento en contra de los sistemas operativos UNIX (no libres) es el costo de propiedad intelectual que puede variar según el proveedor y según la plataforma de equipo de cómputo a instalar. Asimismo, el licenciamiento es generalmente por usuario, cayendo así en un esquema de incrementos de costos cada vez que la empresa crece en personal y en requerimientos.
Al mismo tiempo que UNIX se licenciara comercialmente a diversas empresas, empezaron a emerger sistemas operativos (basados en UNIX) gratuitos, pero con algunas restricciones. En esta categoría caen los BSD (Berkeley System Distribution). La rama BSD (NetBSD, FreeBSD y OpenBSD) se origina cuando At&T licenció el código original de UNIX a la Universidad de Berkeley en California. Ingenieros de Berkeley hicieron mejoras significativas a UNIX generando su propia versión. Se creó entonces una condición divergente entre la versión original de AT&T (denominada ya en ese momento "UNIX System V") y la versión de Berkeley: BSD.
El grupo que llevaba el desarrollo de BSD, por su parte, decidió eliminar todo el código de AT&T de su sistema, reemplazándolo por otro que no estuviera sujeto a pago de licencias, esto derivó en el 4.4BSD-Lite, un sistema libre de las restricciones impuestas por el USG. Posteriormente originó el desarrollo de FreeBSD: UNIX BSD, OpenBSD, NetBSD y Darwin (base del sistema operativo MacOS X). BSD tiene una licencia que permite realizar modificaciones y no redistribuir su código, lo cual genera ciertas restricciones para utilizarla en proyectos libres.
Richard Stallman y el proyecto GNU/Linux
"Necesitamos reforzar el espíritu de colaboración de la gente, respetando su libertad para cooperar y evitando imponer esquemas para dividirlos y dominarlos." Richard Stallman.
Si sé está hablando de software libre es prácticamente imposible no mencionar a Richard Stallman, un personaje genial y controvertido, imprescindible para comprender la verdadera esencia del software libre. Físico de carrera, graduado en la Universidad de Harvard. Trabajó en el laboratorio de inteligencia artificial del Instituto Tecnológico de Massachussetts (MIT) desde 1971.
Una de las anécdotas que se cuentan entorno a Richard Stallman, narra que en cierto lugar donde él trabajaba, tenían una impresora que atoraba continuamente el papel. La única manera de verificar que se atoraba el papel, era trasladarse físicamente hasta el lugar donde estaba dicho dispositivo. Stallman tuvo la idea de modificar el código que controlaba la impresora, para que ésta mandara un aviso cuando se atascara el papel y evitarse estar revisándola a cada rato. Para ello se comunicó con las personas que distribuían el software de la impresora y les planteó lo que quería hacer. Lo único que obtuvo como respuesta, fue que era imposible que le dieran acceso al código fuente del programa que controlaba la impresora, y por lo tanto no podía modificarlo. Stallman se hizo la siguiente pregunta. ¿Cómo es posible que no pueda hacer una mejora a un software por el que pagué?
En 1984 movido por el deseo de lograr que el código fuente del software esté disponible para cualquiera, abandonó el MIT para iniciar el proyecto conocido como GNU. El proyecto GNU tenia la finalidad de crear un sistema operativo completamente libre. En 1985 publicó su manifiesto GNU, en el cual expone sus intenciones y motivaciones para crear una alternativa libre al Unix a la cual llamó GNU (GNU No es UNIX). Poco tiempo después se integró a la Free Software Foundation (FSF) para coordinar el esfuerzo del software libre. La influencia y liderazgo de Stallman para establecer un marco de referencia moral, político y legal del movimiento de software libre, como alternativa al software propietario.
Una contribución de Richard Stallman al movimiento del software libre es inventar el concepto de copyleft (contrario a copyright). Elemento clave en la propuesta de la Licencia Pública General de GNU, conocida por sus siglas en inglés, GPL/GNU.
En 1990 el sistema operativo GNU estaba casi completo, el único componente que faltaba era el núcleo (kernel), también llamado Hurd. Un año después, en 1991, Linus Torvalds, un estudiante finlandés frustrado por tener que usar MS-DOS y queriendo evitar las limitaciones de MINIX, envió un mensaje por Internet al grupo de noticias comp.os.minix en el cual mencionaba que estaba trabajando en un versión libre similar a MINIX. Éste era un sistema operativo bastante reducido creado por Andrew Tanenbaum con fines didácticos, el sistema era bastante simple y con pocas funcionalidades.
Torvalds ponía a disposición (en la red Internet) esta versión de Minix, para quien la quisiera usar y a su vez invitaba a realizar aportaciones que sirvieran para mejorarla. A partir de ese momento y empleando los componentes desarrollados por el proyecto GNU y la Internet como vehículo de comunicación, Linus consiguió convertirse en el líder de una comunidad de desarrolladores diseminada por todo el mundo. Al sistema operativo desarrollado por Linus con ayuda de la comunidad, se le designó el nombre de Linux, en honor al esfuerzo de Torvalds. Con el núcleo de Linux y con la mayor parte del sistema GNU completada, y respaldado por la licencia GPL (General Public License), la cual se sustenta sobre el concepto de "copyleft", la primera versión del sistema operativo GNU/Linux se libera en septiembre de 1991.
Lo interesante del sistema operativo Linux, no era ni su diseño ni tampoco su filosofía, sino su metodología de desarrollo de software. En ese entonces el software se escribía en grupos cerrados, mientras que Linus Torvalds proponía un modelo distribuido, abierto, y cualquier persona interesada en contribuir al software podría participar. A este modelo en el cual se desarrolla Linux y la mayoría del software libre se le conoce como bazar. Al modelo tradicional empleado por las compañías desarrolladoras de software propietario se le conoce como catedral. Este concepto lo explica más detalladamente Eric S. Raymond en un ensayo titulado La Catedral y El Bazar, el cual pueden encontrar en la red. Eric S. Raymond es también uno de los personajes importantes del movimiento software libre y Open Source. Con el transcurrir del tiempo surgieron pequeñas compañías que empezaron a empaquetar en un conjunto de disquettes (hoy CDs/DVDs) el núcleo de Linux provisto con una interfase gráfica, acompañado con programas de GNU y utilerías de software libre, con lo que se facilitaba su instalación. A estos conjuntos de CD/DVD se les denomina Distribuciones de GNU/Linux. Estas distribuciones de software libre bajo licencia GPL/GNU son desarrolladas por empresas de software como Red Hat y SuSE. Otras distribuciones son desarrolladas por organizaciones de programadores voluntarios, tales como Debian, Ubuntu, Gentoo, entre otras.
El Software libre a lo largo de estos años no ha dejado de crecer y multiplicarse. Existen en la red de Internet miles de desarrolladores de software dispuestos a contribuir para la causa de este movimiento.

Principales Softwares Libres Educativos

El uso y la selección de software debe realizarse teniendo en cuenta diferentes factores como: su pertinencia en función de las necesidades del curriculum, la adecuación a los objetivos propuestos, la forma de combinarlo con la utilización de otros recursos más tradicionales y empleando una metodología apropiada al tipo de actividad.
Todas provienen del sistema Edubuntu.
- Colecciones de software educativos
Se puede trabajar más de un área curricular: abc-blocks, ATNAG, Childsplay, Jclic, Gcompris, Le Terrier de AbulÉdu...
- Software libre para la enseñanza de la lengua y los idiomas
AbiWord, Kanagram, KHangMan, KLettres, KVerbos...
- Software libre para la enseñanza de las matemáticas
CaRMetal, Gnumeric, GeoGebra, Kalgebra...
- Software libre para la enseñanza de ciencias
Algodoo, Cartes du Ciel, Celestia, GPeriodic, Kalzium...
- Software libre para la enseñanza de la geografía
KGeography, Marble.
- Software libre para la enseñanza de la educación artística y musical
Gimp, KolourPaint, Denemo, Solfege...

Distribuciones educativas de Software Libre en los centros educativos españoles






Sistemas Operativos Libres en el ámbito educativo

- Edubuntu
Derivado de la distribución Linux Ubuntu, creada para trabajar en entornos educativos. El objetivo es un sistema operativo que contenga el mejor software libre disponible en educación y que sea fácil de instalar y mantener.
http://www.edubuntu.org/

- Skolelinux (Debian Edu)
Es una distribución Linux basada en Debian desarrollada para grupos de estudiantes para grupos de estudiantes de 6 a 16 años.
http://www.skolelinux.org/

- OpenSUSE: Education Li-f-e
Trata de apoyar a las escuelas que utilizan OpenSUSE. Incluye un software que ha sido cuidadosamente seleccionado para el uso educativo de alumnos, profesores y padres, e incorpora todo lo necesario para utilizarlo sin tener que instalar nada adicional.
https://es.opensuse.org/Bienvenidos_a_openSUSE.org

- Fedora Edu Spin
Ha desarrollado un entorno para que profesores y alumnos lo utilicen en los contextos educativos. La diferencia es el contenido y las herramientas que proporciona a los usuarios. El objetivo principal es proporcionar una herramienta fácil de usar por estudiantes de todas las edades
.https://spins.fedoraproject.org/es/edu/

- Tuquito
Distribución de GNU/Linux desarrollada por estudiantes. Diseñado para su uso desde todos los ámbitos de la sociedad, contiene todas las aplicaciones que se necesiten en cualquier ordenador: un navegador, etc.
http://www.tuquito.org.ar/

- Quimo for Kids
Es un sistema operativo diseñado para niños y desarrollado en software libre a partir de Xubuntu. Preinstala juegos educativos para niños a partir de 3 años. La interfaz del escritorio es muy intuitiva y
amigable y utiliza grandes y coloridos iconos y menús fáciles de usar para que los niños naveguen libremente.
http://www.qimo4kids.com/

- Puppy Linux
Es una versión del sistema operativo Linux para niños. Distribución pequeña y rápida de ejecutar gracias a la eliminación de componentes superfluos, muy eficaz en ordenadores antiguos.
http://puppylinux.org/main/Overview%20and%20Getting%20Started.htm

- Uberstudent
Distribución educativa basada en Ubuntu que tiene como objetivo la educación secundaria y superior.
http://uberstudent.com/

¿Software Libre o Gratis?

Las cosas están cambiando, las computadoras para las que han estado creando un sistema operativo, van a ser sustituidas por otras que ya vienen con su propio sistema operativo. Se crea un sistema operativo similar a Unix. GNU crea la Free Software Fundation con la pretensión de que el sistema sea libre, que se pueda modificar, compartir y distribuir libremente. Se basa en 4 libertades:
- Libertad 0: Libertad de uso, poder usar el programa para cualquier propósito.
- Libertad 1: Libertad de estudiar y modificar el programa adaptándolo a tus necesidades.
- Libertad 2: Libertad de distribuir copias.
- Libertad 3: Libertad de realizar mejoras y hacer públicas.

La llegada de Internet modificará hábitos de trabajo y formas de comunicación. De la unión de GNU con el núcleo Linux surgirá un sistema operativo que ya puede ser competitivo con otros sistemas y  que está licenciado con GPL.
Aparece la Open Source Iniciative, que denomina fuente abierta lo que Stallman llama software libre.
Surgen diferentes tipos de licencias que restringen de diferentes formas las libertades del software:
Los tipos de software que podemos encontrar, Temprano presenta: de fuente abierta, de dominio público, protegido por copyleft, software libre protegido con copyleft, software GNU, semilibre, privativo, freeware, shareware.

Cabero desgrana las ventajas y desventajas del software propietario y del software libre.



jueves, 5 de junio de 2014

¿Qué es el Software Libre?

El Software Libre son programas de ordenador que pueden ser utilizados, copiados, modificados y redistribuidos libremente por sus usuarios.La penetración del software libre entre los usuarios ha sido cada vez mayor. Su difusión parte de la necesidad de los usuarios y del boca a boca. Aparecen diversos campos, el técnico, el filosófico, la historia de cómo surge e incluso las necesidades personales de aquellos que lo desarrollaron.
En los primeros ordenadores no se diferenciaba el software del hardware.
En los años setenta IBM vende de forma separada el software del hardware. En los ochenta esta misma empresa empieza a vender ordenadores accesibles a más personas y entidades con un menor coste. Son los primeros pasos hacia ordenadores más baratos y sistemas operativos más eficientes. Los noventa nos trajeron el sistema operativo Windows.
El software libre parece desaparecer. Se comienza a implantar un software privativo asequible. Uso de software privativo por encima del libre, situación que comienza a cambiar con la aparición de la informática de Richard Stallman.