Chapter 1. Inicios del software

En los inicios del software, cuando los hackers originales empezaron a crear programas, todo era libre y compartido. Cada programador presentaba sus códigos al resto de la gente, y todos podían mirarlo, modificarlo, presentar mejoras, etc.

Esta forma de hacer software es muy similar a la forma de hacer ciencia: los científicos presentan publicaciones e investigaciones, y otros científicos las estudian, las refutan o confirman, y si todo está bien hacen nuevas investigaciones basadas en las anteriores.

Todo esto se consideraba muy natural; los programadores conformaban especies de comunidades y cada comunidad compartía también con el resto.

En algún momento, alguien con ideas millonarias descubrió que si mantenía secreto el código de algún programa, podía ganar mucha plata vendiéndolo a la gente que lo necesitara. Por supuesto, el código tenía que permanecer secreto, así que para que algún otro programador pudiera hacer un programa equivalente tenía que empezar de cero.

Eventualmente, las compañías de software fueron contratando a todos los programadores competentes, ofreciéndoles enormes sueldos a cambio de conservar secreto el software que escribían.

Las compañías de software inventaron la idea de que el software es más bien como un libro que como una receta de cocina: ellas pueden ganar dinero por cada copia vendida; nadie puede simplemente copiarla, utilizarla para sus propios fines, modificarla.

La idea de que el software es como una receta de cocina es afortunada: Imagínense que la persona que inventó el plato que ustedes piensan cocinar tiene derecho a controlar cómo pueden cocinarlo. Por ejemplo, ustedes no quieren ponerle sal, pero él dice "Yo diseñé el plato, y tiene que tener esta cantidad de sal!". Pero el doctor les dijo que no pueden comer sal. ¿Qué van a hacer?

Ciertamente, la persona que usa el programa está mucho más internalizada con los detalles que necesita. Para dar a la gente el mayor control posible sobre cómo vive su vida, el usuario tiene que tener libertad sobre el programa. Restringir esta libertad es como impedir que se varíe la cantidad de sal en el plato.

En las conciencias de todos nosotros hoy en día es muy frecuente encontrarse con el dilema del pirateo de software, impuesto por esa idea de los derechos de alguien sobre el software: cuando un amigo te pide que le copies un programa, te mete en un problema: te ajustas a la legalidad o sigues la amistad.

La mayoría de la gente se fastidia por eso, y copia el software de todas maneras. Se invocan muchas razones, más que nada para calmar la conciencia: "si fuera más barato lo compraría", "si lo usara con más frecuencia valdría la pena pagar el precio oficial", etc. Frases que todos hemos usado y oído seguramente muchas veces.

Lo cierto es que la misma idea de que el software tenga un dueño que pueda decidir qué hacer con él es lo nocivo de este asunto.

Una persona no pudo soportar esta idea. Esta persona estaba acostumbrada a los días antiguos y a la tradición de compartir el software. Richard Stallman, que había trabajado en el laboratorio de Inteligencia Artificial del MIT imaginó un sistema completamente libre, conceptualizado bajo el nombre de "Software Libre" (Free Software), que sería un sistema compatible con Unix, y fue bautizado GNU, que significa "GNU's Not Unix" (GNU no es Unix). Parece que en ese tiempo tenían gran popularidad los acrónimos recursivos.

RMS reunió más gente que compartía su ambición de un sistema libre y con ellos creó la Fundación para el Software Libre, de la que es todavía presidente.

La FSF trabajó duro en la implementación de los componentes necesarios para GNU, y a principios de los noventa GNU estaba completo, con excepción del kernel.

Por suerte en ese momento Linus Torvalds tenía su kernel en fase de pruebas, y el conjunto GNU/Linux es lo que hoy en día muchos de nosotros conocemos.

El resto de la historia es bien conocida por nosotros.