Still working to recover. Please don't edit quite yet.
Cooperación sin mando
en construcción
Miquel Vidal miquel@sindominio.net Agosto del 2000
Resumen:
En las siguientes lÃneas explicaré algunos de los rasgos del movimiento del software libre, su modelo de desarrollo y el alcance polÃtico, ético y económico de su apuesta. Trataré de hacer una breve genealogÃa del movimiento, destacando sus rasgos singulares y lo que puede haber más allá del mismo, proponiendo algunas lÃneas de debate y señalando algunos de sus interrogantes.
Si bien el software libre no es un fenómeno nuevo ya que existe desde los orÃgenes de la informática, sà es relativamente reciente su modelo cooperativo de producción en red --el llamado modelo bazar-- y el movimiento social que lo avala --la comunidad del software libre--. No ha sido hasta los últimos cinco años en que, ligado a la extensión de Internet y a la popularización de los ordenadores personales, el movimiento del software libre ha alcanzado su masa crÃtica, ha dejado de ser sólo cosa de algunos programadores y se ha convertido en un fenómeno de cooperación social liberada. En la época de la subsunción real de la totalidad de las fuerzas productivas bajo el capital, en la cual todo acaba valorizado en términos mercantiles, las empresas han tardado en advertirlo pero finalmente se han lanzado a la caza y captura de esta increÃble máquina productiva, tal vez la mayor empresa colectiva que existe hoy dÃa. ¿Qué es pues el software libre, que tanto interés está empezando a despertar?
Contents
¿Qué es el software?
El software es una producción inmaterial del cerebro humano y tal vez una de las estructuras más complicadas que la humanidad conoce. De hecho, los expertos en computación aún no entienden del todo cómo funciona, su comportamiento, sus paradojas y sus lÃmites.1 Básicamente, el software es un plan de funcionamiento para un tipo especial de máquina, una máquina ``virtual o ``abstracta. Una vez escrito mediante algún lenguaje de programación, el software se hace funcionar en ordenadores, que temporalmente se convierten en esa máquina para la que el programa sirve de plan. El software permite poner en relación al ser humano y a la máquina y también a las máquinas entre sÃ. Sin ese conjunto de instrucciones programadas, los ordenadores serÃan objetos inertes, como cajas de zapatos, sin capacidad siquiera para mostrar algo en la pantalla.
Los ordenadores sólo procesan lenguaje binario,2 pero para las personas este no es un modo válido de comunicarse (salvo a nivel sináptico :-). Si bien en los tiempos heroicos de los primeros ordenadores no les quedaba otro remedio que hacerlo, los programadores hace mucho que no escriben su código en lenguaje binario (denominado técnicamente ``código-máquina), pues es terriblemente tedioso, improductivo y muy sujeto a errores. Hace tiempo que los programadores escriben las instrucciones que ha de ejecutar el procesador de la máquina mediante lenguajes formales, llamados ``de alto nivel, bastante cercanos al inglés, si bien con rÃgidas reglas sintácticas que lo asemejan a los lenguajes lógico-formales. Esto facilita enormemente la tarea de escribir programas pero, para que esas instrucciones sean comprensibles para el procesador, deben ser convertidas antes a código-máquina. Esa conversión se realiza cómodamente con programas especiales, llamados compiladores. A lo que escribe el programador se le denomina ``código-fuente. Al resultado de la ``conversión (compilación) en lenguaje-máquina, se le denomina ``código-objeto, ``binarios o ``ficheros ejecutables. En principio, al usuario común sólo le importa este último nivel, los ``binarios, pero conviene tener clara la distinción entre fuentes y binarios pues es clave para entender el empeño de los partidarios del software libre en disponer de las fuentes.
Pero el software libre es mucho más que el derecho de los programadores y de los hackers3 a disponer de las fuentes del código: significa también la libertad de copiar y redistribuir esos programas. Esos derechos, o su ausencia, condicionan a cualquiera que use un ordenador y han configurado la industria del software y de la informática tal y como la conocemos hoy dÃa. También ha dado lugar a un movimiento social --el del software libre-- cuya historia reconstruiremos brevemente en las próximas lÃneas.
Los inicios
En la informática de los años sesenta y setenta y en la cultura hacker que surgió en torno a ella, se disponÃa libremente de las herramientas necesarias y del código fuente de la gran mayorÃa de los programas. La colaboración forma parte desde antiguo de los hábitos de la comunidad cientÃfica y además, ante la diversidad de plataformas, era necesario disponer del código cuando se adquirÃa el programa para poder portarlo al hardware de cada cual. Era tan normal como compartir recetas de cocina y ni siquiera se hablaba de ``software libre, pues todo el que querÃa programar se beneficiaba de ello y veÃa lógico que los demás se pudiesen beneficiar a su vez. Los hackers copiaban los programas, intercambiaban sus fuentes, podÃan estudiarlas, evaluarlas, adaptarlas a sus necesidades y a su hardware, reutilizaban una parte del código para hacer nuevos programas...El desarrollo de bienes públicos basados en ese modelo fue exponencial hasta el punto de que gran parte de la tecnologÃa en la que se basa hoy Internet --desde el sistema operativo UNIX hasta los protocolos de red-- procede de esos años.
Pero, a principios de los años ochenta, ese modelo entra en crisis, y rápidamente comienza a emerger un modelo privatizador y mercantilista. Los ordenadores, hasta entonces escasos, caros y poco potentes, se hacen asequibles, cada vez más baratos y potentes y aparece un nuevo negocio, el de los productores de software. Los programas se empezaron a vender como productos comerciales independientes de las máquinas y sólo con el código binario, para ocultar las técnicas de programación a la competencia. La nueva industria del software comienza a apoyarse en la legislación sobre propiedad intelectual. El mundo UNIX se fragmenta en diversas versiones privatizadas y progresivamente incompatibles entre sÃ, que los programadores no pueden modificar. Lo que era práctica habitual, se convirtió en un delito: el hacker que compartÃa el código y cooperaba con otras personas pasó a ser considerado un ``pirata.
Al tiempo que los sistemas van haciéndose incompatibles entre sÃ, la comunidad de investigadores se va desmembrando poco a poco. Muchos hackers ficharon por empresas y firmaron contratos en los que se comprometÃan a no compartir con nadie de fuera los ``secretos de fabricación (el código fuente). Por su parte, los laboratorios de investigación comenzaron a hacer lo mismo y obligaban a sus hackers a suscribir el mismo tipo de cláusulas. Para cerrar el cÃrculo, los compiladores, los depuradores, los editores y demás herramientas imprescindibles para programar eran propietarios y se vendÃan a precios respetables: se trataba de que la programación ``de verdad sólo estuviese en manos de la naciente industria de software.
Hubo hackers que no aceptaron esta nueva situación y continuaron con sus prácticas pero parecÃa solo una cuestión de tiempo que la industria del software propietario arrinconara y dejara definitivamente fuera de la ley la cultura cooperativa y confiada de las primeras comunidades de hackers.4 Este contexto sirve de base y explica el auge posterior del imperio Microsoft y similares: estaba naciendo el negocio del software propietario y la próspera industria de los ordenadores personales.
El proyecto GNU
Son los primeros años ochenta y seguiré la pista de algunos de esos programadores que habÃan conocido la vieja cultura hacker de los años setenta y que no se plegaron a los designios privatizadores de la industria del software.5 De hecho, consideraron la privatización un verdadero atentado a los mismos cimientos del proceso de conocimiento. Se cuestiona que la propiedad intelectual sea un derecho natural, y se percibe como una práctica socialmente indeseable.6
Con ese planteamiento nace el Proyecto GNU (acrónimo recursivo que significa GNU's Not UNIX, o sea, ``GNU No es UNIX) de la mano de Richard M. Stallman, un hacker del emblemático Laboratorio de Inteligencia Artificial del Massachussets Institute Technology (MIT). Era el año 1984, Stallman abandona el MIT para que no interfiera en sus planes y, junto a otros hackers interesados en el proyecto GNU, crea la Free Software Foundation (FSF) en 1985: comienza una labor metódica y discreta, guiada por una asombrosa visión estratégica.7
El proyecto GNU se propuso a la sazón una tarea titánica: construir un sistema operativo libre completo. No es sencillo expresar en pocas palabras la enorme dificultad que comporta un proyecto asÃ, sólo al alcance de unas cuantas empresas con miles de programadores a sueldo. No digamos ya si no se dispone de herramientas para hacerlo. Stallman tuvo que empezar casi desde cero, sin modelo bazar, pues no existÃa la universalizada red Internet tal y como hoy la conocemos; tampoco existÃa una comunidad de desarrolladores lo suficientemente grande y ni siquiera se disponÃa de un compilador libre para empezar el trabajo. Una analogÃa es construir una casa sin disponer apenas de herramientas, por lo que primero hay que fabricarlas: desde picos y palas hasta ladrillos y cemento. Eso sÃ, contaba con algún material reciclable de ``otras casas --grandes fragmentos de código UNIX y una cultura de reutilizar código--. Stallman y la FSF merecen por tanto un reconocimiento especial en esta historia, pues sin compilador, depurador y editor libres no habrÃa sido posible lo que vino después, incluyendo el propio Linux.
Con todo lo importante que eran esas herramientas, no fue ni mucho menos la principal aportación de la FSF. Y es que los hackers que impulsaron el Proyecto GNU en aquellos años no se conformaron con su trabajo de desarrolladores, ya de por sà formidable. Se dieron cuenta de que necesitaban algo más que crear herramientas de software que dieran libertad a los programadores. Para que el trabajo no fuera estéril y fácilmente reapropiable por intereses privados, precisaban además defender esa libertad en el terreno polÃtico y jurÃdico. El Manifiesto GNU (1985), escrito por el propio Richard Stallman, es la declaración de principios e intenciones del proyecto; inspirada en sus principios, se lanza en 1989 la primera versión de lo que fue posiblemente el mejor logro de la FSF y significativamente no en el terreno informático, sino en el ámbito jurÃdico: la GPL (General Public License) o Licencia Pública General.8