Algunos proyectos cambian la historia de la informática (y también, de la forma en la que nos relacionamos con los ordenadores y con otras personas) para siempre. Por eso hoy, en nuestra edición semana de Historia del Software, nos vamos a dedicar a contarles un poco sobre el recorrido del GNU Project, un emprendimiento liderado por quien es considerado el "padre" del software libre, Richard Stallman. Este proyecto data de 1983, en plena época de apogeo de Unix, cuando las computadoras personales aún no estaban en su auge y pensar en cosas como internet parecía sacado de una novela de ciencia ficción (al menos, para el resto de los mortales).
El proyecto nace de la mente de Stallman a principios de los años '80. En enero de 1984, este programador de MIT comenzó a trabajar en el desarrollo del sistema operativo GNU, cuyo objetivo principal era desarrollar una masa importante de software libre que sea compatible con el software de pago para ser usado en simultáneo. "GNU's Not Unix", el sistema operativo totalmente libre, recién podría llegar a la realidad a comienzos de los '90. Pero nos estamos adelantando a los hechos.
Para comenzar a trabajar en GNU, Stallman y su equipo contaban con procesadores de texto Emacs, combinados con Lisp para escribir comandos, y otras herramientas. Su kernel inicial necesitaba más actualizaciones, por lo que antes de comenzar a realmente avanzar en el desarrollo del SO, tuvieron que dedicarle mucho trabajo.
GNU recién se pudo usar para desarrollar programas una vez que el kernel y el compilador estaban listos. El objetivo principal, como les adelantamos, era parecerse otras aplicaciones como Unix. Recordemos que Unix (de cuya creación participó el grande Dennis Ritchie) fue un sistema operativo que realmente cambió el rumbo de la historia, pero que no pudo desligarse de sus intereses comerciales. Ahí es donde retoma el camino GNU, con aspiraciones un poco más altruistas pero no por ello menos innovadoras. Si bien no era idéntico a Unix, podía correr sin problemas aplicaciones diseñadas para Unix.
Una vez que esta primera etapa estaba terminada, llegó el momento de incorporar otros colaboradores al proyecto. Stallman buscaba que GNU sea un emprendimiento global y masivo, y que otros programadores del mundo también participaran. También se abrieron a la donación de fondos, repuestos de computadoras y, como no podía ser de otra manera, voluntarios para que colaboraran con la elaboración del código del proyecto. Las ideas principales de GNU fueron plasmadas en un documento, el Manifiesto de GNU, que más tarde se convertiría en la base fundamental del movimiento del software libre.
El Manifiesto de GNU contenía cuatro pilares a través de los cuales se desenvuelve su filosofía. Estos pilares son en realidad "libertades" que cada uno como usuario de una computadora debería tener:
- Libertad para utilizar el programa
- Libertad para acceder al código
- Libertad para distribuir el programa a quien querramos
- Libertad para mejorar el software.
Esto quiere decir que cualquier software que provino (o proviene) de GNU es libre para que los usuarios copien y editen, y también repartan a quien les plazca. Estos programas, sin embargo, también se pueden comprar (por ejemplo, empresas que quieran comprarlo), pero los programadores también pueden repartirlo entre sus amigos y conocidos. Lo importante es que se difunda y que seamos libres de usarlo. El dinero proveniente de estas compras pasará a engrosar las arcas de GNU para seguir financiando proyectos.
Podemos ver cómo GNU no es solamente un sistema operativo, sino que además esconde toda una filosofía detrás. No solamente se puede aplicar a las computadoras, sino que es el punto de partida del concepto del copyleft y tiene profundas implicaciones sociales y políticas. Los programas libres de GNU son además acompañados de una cuantiosa literatura académica, fundamentalmente escrita por Stallman, que respaldan todas estas ideas y ayudan a comprender un poco mejor los objetivos e ideas del proyecto.
Pero volvemos a la historia. Un verdadero hito se produjo cuando el sistema operativo pudo ser finalmente completado. Esto recién se pudo dar en 1992, cuando se habían completado casi todos los elementos del SO con excepción del kernel. Un año antes, en otra parte distante del mundo, el joven Linus Torvalds comenzaba a trabajar en su tesis universitaria. La brecha que separaba a GNU de convertirse en un sistema operativo completo fue llenada por Linux, y juntos formaron el primer sistema operativo libre del mundo.
Igualmente, no debemos confundir Linux con GNU. Son cosas totalmente diferentes, y aunque Linux usó GNU para muchas partes de sus programas, en sí también implementó algunas cosas extrañas a GNU que eran completamente propias (de ahí, también, el éxito bien merecido de Linux como sistema operativo). Pero Linux también sirvió para poner, o volver a poner, a GNU en el mapa.
Alrededor de esta misma época, la bonanza comenzaba a terminarse, y la innovación tecnológica dejaba lugar a estrafalarias batallas legales. La Free Software Foundation fundada por Stallman estaba más dedicada a obtener apoyo político y legal, y se descuidó la generación de nuevos proyectos. Los proyectos anteriores, sin embargo, se siguiendo manteniendo, y los desarrolladores se concentraron ahí.
Uno de los proyectos en los cuales se concentraron fue GNOME. El proyecto GNU estaba especialmente interesado en este desarrollo porque otro sistema de escritorio llamado KDE requería el uso de cierto software de pago. Para poder evitar esto, desde GNU se lanzaron en simultáneo dos proyectos: el Harmony Toolkit, y GNOME. Harmony Toolkit buscaba reemplazar dentro del mismo KDE esos programas que requerían de una licencia de software, mientras que GNOME era un reemplazo de KDE que no necesitaba de nada pago, era puro y duro software libre. Harmony Toolkit fracasó dado que eventualmente los componentes de pago de KDE fueron lanzados como software libre.
Hoy en día, GNU junto con la Free Software Foundation sigue pisando fuerte. La FSF tiene varios proyectos en los que está trabajando actualmente, como GNU Project, licencias GNU, el Free Software Directory (un lugar donde podemos encontrar una lista de todo el software considerado como libre) y más. Las historias más importantes son aquellas que siguen teniendo un impacto hoy en día. Y en lo que se refiere a GNU, fue la motivación para que miles de personas se sumaran al movimiento del software libre y luchen por tener un acceso más justo a herramientas de trabajo, entretenimiento y descubrimiento, además de educación y libertad de expresión.