
La importancia del software.
La transición que estamos viviendo actualmente hacia una sociedad del conocimiento ha modificado
profundamente las relaciones entre las personas, empresas y gobiernos: las empresas usan la Red
para relacionarse con clientes y proveedores, utilizan también herramientas de gestión del conocimiento
para ser más eficientes, los gobiernos mejoran su presencia en Internet y los servicios a
los ciudadanos a través de la Red, los usuarios usan las herramientas para mejorar sus relaciones
personales. Vamos hacia una sociedad altamente interconectada donde el eje fundamental es la
información. El software es cada vez más el gran intermediario entre la información y la inteligencia
humana. De forma similar, nos preocupa la libertad para poder acceder a la información y, si existe
censura, nos debe preocupar con igual intensidad quien controla este intermediario y que garantías
tenemos de su transparencia y fiabilidad. En principio, el software es un programa o un conjunto de
programas informáticos que tienen una tarea determinada. Es el procesador de textos que usamos,
el controlador de grabación de nuestros espacios televisivos favoritos o las aplicaciones que permiten
operar un teléfono móvil. El software está compuesto por un conjunto de instrucciones que un ordenador
ejecuta para poder realizar una función específica. Normalmente los programadores escriben
en un lenguaje que los humanos podemos entender y que posteriormente es traducido a secuencias
de unos y ceros que es el ´único lenguaje que las máquinas entienden. El conjunto de ´ordenes en
el lenguaje que los humanos trabajamos se llama código fuente. Sin acceso al código sólo podemos
usar el programa, no podemos ver cómo esta hecho o introducir mejoras. Un símil muy utilizado
es el de la receta de cocina, en que el código fuente sería las instrucciones que permite confeccionar
un plato. Sin la receta sólo se puede degustar el plato, pero no sabemos si, al añadirle algo, vamos
en contra de alguno de sus ingredientes, ya que se desconoce su composición y la proporción. En
este sentido, el código fuente juega un papel fundamental en cómo entendemos las libertades del
software. Para entender la importancia del software se podían poner varios ejemplos. A finales de
los 90 pudimos ver en todo el mundo la preocupación por parte de empresas y gobiernos por las
repercusiones que podía tener el llamado efecto 2000. El ya famoso error informático era causado
por el hecho de que muchos programas almacenaban la parte de la fecha correspondiente al año
usando ´únicamente dos dígitos, de tal forma, que después del año 99 (el 1999) podíamos pasar al
año 00 (¿año 2000 o año 1900?) causando todo tipo de errores en el cálculo de periodos de tiempo.
Los ordenadores de empresas eléctricas, centrales nucleares, sistemas de control de aviación, bancos
y, en general, todo el software de uso cotidiano, tuvieron que ser revisados. Finalmente, algunas
aplicaciones fueron corregidas, otras ya funcionaban correctamente y no hubo que lamentar ninguna
catástrofe, pero hubo miles de predicciones apocalípticos sobre las consecuencias que podía llegar a
tener este error. Y así podría haber sido si no se hubiera reparado a tiempo. Cuando los ingenieros
de software se encuentran ante un programa que no da acceso al código fuente -es decir, que no es
libre - no lo pueden entender, y por tanto que no lo pueden arreglar aunque hubieran descubierto un
9
Capítulo 2
error y conocieran su solución. Es decir, aunque conocieran la solución se encuentran incapacitados
para aplicarlo. El software tiene un papel muy destacado en la sociedad y es importante garantizar
métodos transparentes en sus diferentes fases de producción y explotación. El software libre, al dar
acceso al código, es el ´único que puede garantizar esta transparencia.
Incursión de los hackers.
Durante los años 60, los sistemas informáticos medianos se popularizaron en algunas universidades.
Eran todavía muy caros y estaban básicamente destinados a un uso científico. Uno de los centros
de investigación más importantes de aquella ´época era el Massachusetts Instituto of Tecnología
(Instituto de Tecnología de Massachusetts), popularmente conocido por sus siglas MIT, donde
se realizaban destacados proyectos de investigación. Los sistemas informáticos eran en modo de
texto y las interfaces gráficas todavía no existían. De hecho, no existían ni siquiera los estudios
de informática como disciplina. Alrededor de los centros de cálculo se fueron formando grupos de
expertos que eran capaces de llevar estas máquinas hasta límites insospechados y que eran, por
encima de todo, entusiastas de la tecnología. Estas personas se denominaron hackers, en el sentido
de que eran capaces de encontrar soluciones ingeniosas a problemas complejos. Desgraciadamente,
años más tarde, esta palabra se empezó a utilizar para nombrar a los intrusos informáticos que
robaban datos o programadores que escribían virus, a quienes realmente se debe llamar crackers.
Durante los años 60 y parte de los 70 era habitual distribuir las aplicaciones junto con su código
fuente. De esta manera, todo el mundo podía participar en el proceso de mejora del software, el
intercambio de trucos y compartir un espíritu muy extendido de ayuda entre usuarios que queda
reflejado en los mensajes que circulaban en aquella ´época en redes como UUNET o Fidonet.
La cultura Unix.
El sistema operativo es el programa que interacciona entre el hardware, el usuario y las aplicaciones.
Sin sistema operativo, un ordenador es sólo un amasijo de cables y hierro. Unix ha sido el sistema
operativo que más influencia ha tenido en la historia de la microinformática y constituye los fundamentos
técnicos y, en parte filosóficos, sobre los cuales se desarrollo el software libre a principios
de la década de los 80. Actualmente existen en el mercado desde organizadores personales hasta
supercomputadores que usan sistemas basados en Unix. Linux es un familiar cercano de los sistemas
Unix. A finales de los años 60, la empresa AT&T se enfrentaba a los crecientes problemas de interoperabilidad
que representaba tener diferentes ordenadores de diferentes fabricantes con distintos
sistemas operativos.
GNU.
Con la explosión de la microinformática, el descenso de precio de los sistemas informáticos y su
popularización entre las empresas, aparecieron las primeras compañías de software. Muchas de ellas
empezaron contratando hackers que estaban alrededor de los centros de cálculo de las universidades,
de forma que ´estas se fueron despoblando de aquellos pioneros. Pero, además, muchas de estas
empresas creyeron que si denegaban el acceso a los usuarios y a otros desarrolladores al código
fuente de las aplicaciones que mejoraban o desarrollaban, podrían realmente conseguir una ventaja
competitiva. ´Este fue un punto de inflexión importante, ya que se rompió con la tradición de
compartir el código que había imperado hasta entonces y consecuentemente con la propia ´ética
hacker.
Libertad y costo.
Es habitual que los usuarios confundan el software libre con el software gratuito. Es importante
distinguir entre las libertades que nos proporciona un software y el coste del mismo. Un programa,
por el simple hecho de ser gratuito, no es ni mucho menos libre. Por ejemplo, Internet Explorer
de Microsoft es un programa 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 de mejorarlo, ni de hacer públicas estas
mejoras con el código fuente correspondiente, de manera que todo el mundo se pueda beneficiar.
Internet Explorer es un programa propietario - en cuanto a las libertades - y gratuito - en cuanto
a su costo -.Existe una distinción fundamental entre los programas que garantizan los derechos
de distribución y modificación, el software libre, y los que no los garantizan que consideramos
propietarios. Respecto al coste, cualquier software libre se puede vender, siempre y cuando se
respeten las libertades originales que lo definen. Por ejemplo, la empresa francesa Mandrake o la
norteamericana Novell venden distribuciones de GNU/Linux, y se trata de software libre porque
conserva las libertades que lo definen.
Linux.
Durante los años 80, Stallman continuó trabajando en el desarrollo de las herramientas necesarias
para crear un sistema operativo completamente libre. Público una versión del editor GNU Emacs
y trabajó en herramientas que son fundamentales para el movimiento del software libre.
Open Source (código abierto).
Durante el año 1998, Eric S. Raymond, Bruce Pernees y otros hackers involucrados en el desarrollo
de software libre lanzaron la Open Software Initiative y propusieron el uso de terminó open source
(código abierto) en contraposición al término free software (software libre) como terminó más
atractivo al entorno empresarial.
El papel del software libre en el crecimiento de Internet.
El software libre ha tenido un papel fundamental en el crecimiento y extensión de la Red, porque la
mayor parte de la infraestructura de Internet se basa en protocolos abiertos. Aproximadamente el
67% de servidores web emplean Apache, otro gran numero usan SendMail para gestionar el envió
de correo electrónico y prácticamente la totalidad de los servidores de nombres (DNS), esenciales
14
Visión histórica del software.
en el funcionamiento de la Red, utilizan el programa BIND o derivados de su código fuente. Tim
Berners-Lee, creador de la web, describe cómo en el año 1993 decidió presionar al CERN, donde
trabajaba, para que cediera bajo la licencia GPL, creada por la Free Software Foundation, todo el
software que había creado para realizar la infraestructura de la web hasta entonces. Finalmente, en
abril de ese mismo año el CERN accedió a permitir Es indiscutible la importancia que ha tenido
el software libre en la extensión y el desarrollo de Internet desde sus inicios. Sin la existencia del
software libre Internet hoy en día probablemente no existirá. Ha sido igualmente importante el
hecho de que los protocolos que definen la arquitectura de Internet sean abiertos y que no hayan
sido controlados por una o varias empresas.
Formatos abiertos.
A menudo nos encontramos con creadores de sitios que sólo prueban sus páginas con Microsoft
Internet Explorer, muchas veces por desconocimiento de la existencia y del grado de implantación
de otros navegadores o, en ocasiones, simplemente porque no consideran la compatibilidad como un
tema importante. Internet ha creado sus propios mecanismos para evitar este tipo de situaciones.
En 1994 se creó el World Wide Consortium (W3), que agrupa a los principales fabricantes de
software de Internet, con la misión principal de definir y promover la creación de estándares para la
representa una discriminación contra los usuarios de los otros navegadores o aplicaciones y es un
hecho que afecta y preocupa especialmente al mundo del software libre.1
Visión histórica del Software propietario (Microsoft).
Con la explosión de la microinformática y con el descenso de precio de los sistemas informatices y
su popularización entre las empresas, aparecieron las primeras compañías de software. Muchas de
ellas empezaron contratando hackers que estaban alrededor de los centros de cálculo de las universidades,
de forma que ´estas se fueron despoblando de aquellos pioneros. Estas empresas al negar el
acceso a los usuarios y a otros desarrolladores al código fuente de las aplicaciones que mejoraban o
desarrollaban, comenzaron a conseguir una ventaja competitiva. En ese momento se rompió la tradición de compartir el código que haba imperado hasta entonces y consecuentemente con la propia ética hacker.