FUNDAMENTOS
ETICOS, POLITICOS Y ECONOMICOS DEL SOFTWARE LIBRE
Los usuarios de
ordenadores están acostumbrados a pensar que un programa sólo es una
herramienta y únicamente piensan en la comodidad de su uso, si es capaz, si
resulta eficiente, etc., pero ignorando los valores sociales y éticos. De este
modo los usuarios buscan un programa, seguramente, sólo guiados por los valores
prácticos, pero haciendo caso omiso de la cuestión clave, la más importante de
todas: ¿Respeta este programa mi libertad? Actuando así no son conscientes de
que exista la cuestión de libertad. Sin embargo, el software libre es el
software que respeta la libertad del usuario. La diferencia entre software
libre y software privativo no es una cuestión técnica, no tiene nada que
ver con la carrera que haga el programa, sino con el sistema social de su
distribución y uso.
Un programa es libre si el usuario
tiene cuatro libertades esenciales:
·
La libertad 0 es la libertad de ejecutar el programa como queráis.
·
La libertad 1 es la posibilidad de estudiar el código fuente del
programa y cambiarlo para que el programa haga lo que queráis.
·
La libertad 2 es la libertad de ayudar a vuestro prójimo, es decir la
libertad de distribuir copias exactas del programa cuando queráis.
·
La libertad 3 es la libertad de contribuir a vuestra comunidad, es
decir, la libertad de distribuir copias de vuestras versiones cambiadas cuando
queráis.
Con estas cuatro libertades los
usuarios pueden elegir y tienen el control de su propia computación. El sistema
social de la distribución y uso del programa es justo y el programa, por lo
menos en cuanto a su distribución y uso, es ético. Pero si falta una de estas
cuatro libertades, entonces el programa es privativo: priva de libertad a sus
usuarios. Un programa privativo mantiene a los usuarios en un estado de
división e impotencia. División porque cada uno tiene
prohibido compartirlo con los demás. E impotencia porque los
usuarios no tienen el código fuente y no pueden cambiar nada, ni siquiera
pueden averiguar de manera independiente qué hace de verdad este programa.
Entonces el sistema social de su distribución y uso es injusto. Por lo tanto,
un programa privativo no se debe usar; no es una contribución al desarrollo
social, sino un ataque a la gente que potencialmente pueda usarlo.
¿Pero por qué estas cuatro libertades
son esenciales? La libertad número 2 es esencial para poder vivir una vida
ética dentro de una comunidad como buen miembro de la comunidad, porque si se
usa un programa sin la libertad número 2 se está en el peligro de caer en un
dilema moral. En cualquier momento, cuando un amigo os pida una copia del
programa, deberéis elegir entre dos males. Un mal será la copia y la
consiguiente ruptura de la licencia del programa. El otro mal será negarle la
copia por cumplir con la licencia del programa. En este dilema se debe elegir
el menor mal posible: darle una copia y romper la licencia del programa. Ese
mal es el menor, pues si es inevitable
perjudicar a alguien, es mejor que se perjudique alguien culpable. Es de suponer que vuestro amigo es un buen amigo, un miembro de la comunidad, y merece vuestra colaboración, mientras que en el desarrollador del programa privativo habrá atacado deliberadamente la solidaridad social de tu comunidad. Entonces es mejor perjudicarle a él que a vuestro amigo. De todos modos, incluso el menor mal tampoco es bueno; nunca es bueno hacer un acuerdo y después romperlo.
perjudicar a alguien, es mejor que se perjudique alguien culpable. Es de suponer que vuestro amigo es un buen amigo, un miembro de la comunidad, y merece vuestra colaboración, mientras que en el desarrollador del programa privativo habrá atacado deliberadamente la solidaridad social de tu comunidad. Entonces es mejor perjudicarle a él que a vuestro amigo. De todos modos, incluso el menor mal tampoco es bueno; nunca es bueno hacer un acuerdo y después romperlo.
Hay acuerdos esencialmente malévolos
que es mejor romper que cumplir, pero esto no llega a ser bueno. Y si le dáis
una copia a vuestro amigo, éste tendrá una copia no autorizada de un programa
privativo, lo cual es bastante malo; de hecho, casi tan malo como una copia
autorizada. La única diferencia ética es que la copia autorizada premia al
culpable, lo cual es aún peor, si cabe, pero salvo ésta diferencia las dos
copias son igualmente injustas e inmorales.
Por lo tanto, enfocar este dilema de
forma adecuada requiere resolver en este dilema. ¿Y cómo hacerlo? Hay dos
maneras posibles de solucionarlo. La primera es no tener amigos; ésta es la
manera sugerida por los desarrolladores de software privativo. La segunda es
rechazar el software privativo. Si no tenéis una copia no estáis en peligro de
caer en el dilema. Ésta es mi solución: no acepto programas privativos. Si
alguien me ofrece una copia de un programa privativo, por atractivo que sea,
bajo la condición de prometer no compartirlo con ustedes, lo rechazo; digo que
mi conciencia no me permite estar de acuerdo con esta condición y no la acepto,
que es lo que todos deben hacer, y sobre todo lo que esta universidad debe
hacer.
Es esencial, además, para tener el
control de vuestra propia computación. Hay programas privativos que incluso
restringen la ejecución de las copias autorizadas. Obviamente, si esto sucede
no se tiene el control de la computación, por lo tanto, la libertad 0 es
esencial. Pero no basta porque el desarrollador tiene el poder. La única
diferencia es que tiene que ejercitar su poder escribiendo el código en lugar
de hacerlo con la licencia del programa. Por ello se necesita también la
libertad 1, la libertad de estudiar el código fuente del programa y de
cambiarlo para que haga lo que uno quiera, así decidís vosotros y no el
desarrollador por vosotros. Si no se tiene esta libertad 1, ni siquiera se
puede averiguar qué hace este programa. Muchos programas privativos contienen
funcionalidades malévolas, dirigidas a espiar al usuario, limitarlo e incluso
atacarlo. En este sentido, las funcionalidades de vigilancia son muy comunes.
Por ejemplo, hay un programa
privativo, cuyo nombre quizás conozcáis, que vigila al usuario: se llama
Microsoft Windows. Cuando el usuario de Windows usa la funcionalidad del menú
para buscar una palabra en sus propios archivos, Windows envía a Microsoft un
mensaje diciendo qué palabra se ha buscado. Es una funcionalidad de vigilancia,
pero hay otra: cuando Windows XP pide una actualización, envía a Microsoft una
lista de todos los programas instalados en la máquina. Estas funcionalidades de
vigilancia tal vez no son las únicas porque Microsoft nunca anunció estas dos;
se descubrieron con la investigación y quizás otras funcionalidades de
vigilancia quedan por descubrirse. Pero no sólo Windows lo hace, muchos
programas que permiten mirar archivos o sitios lo hacen, como Windows Media
Player que delata todos los sitios que el usuario mira. También hacen
vigilancia.
Pero hay algo peor que la vigilancia:
la funcionalidad de no funcionar cuando el programa dice "no quiero
mostrarte este fichero en tu máquina", "no quiero permitirte copiar
una parte de este fichero" o "no quiero imprimir este fichero por
ti" porque no te amo. Esta funcionalidad se llama DRM, es decir, Gestión
Digital de Restricciones. Es la funcionalidad deliberada de no funcionar;
el programa sirve a otro antes que a ti. Y también hay funcionalidades para
atacar al usuario: las puertas traseras. Un programa privativo cuyo nombre
quizá conozcáis contiene una puerta trasera: se llama Microsoft Windows. Cuando
pide una actualización, Microsoft conoce, más o menos, la identidad del usuario
y puede entregarle una actualización especifica para él, es decir Microsoft
puede tomar el control absoluto de su ordenador y el usuario casi no tiene
recursos. Esta puerta trasera conocida la podemos deducir de los hechos conocidos.
¿Hay otras? Hace unos años me dijeron
que en la India habían arrestado a algunos desarrolladores de Windows acusados
también de trabajar para Al-Qaeda intentando introducir otra puerta trasera que
Microsoft no debería conocer. Según parece, ese intento fracasó; pudo haber
otros que lo lograron, pero no lo podemos saber. En 1999 se descubrió que
Microsoft había introducido en un programa de servidor una puerta trasera para
el uso de otra organización terrorista, aún más violenta que Al-Qaeda: los Estados
Unidos.
Todo esto nos muestra cómo nunca se
puede confiar en un programa privativo. Cada programa privativo exige a sus
usuarios una fe ciega que no puede justificar. Si bien hay algunos programas
privativos en los que hemos descubierto funcionalidades malévolas, hay otros en
los que no; quizás no las tienen, quizás sí. Nunca podemos estar seguros de si
contienen funcionalidades malévolas si no podemos estudiar y compilar el código
fuente.
Supongo que hay desarrolladores de
software privativo que no introducen funcionalidades malévolas. No podemos
saber quiénes son, pero los hay. Todavía son humanos y, por lo tanto, cometen
errores y su código contiene errores. Así, el usuario de un programa sin la
libertad 1, la libertad de estudiar y cambiar el código fuente, es tan
impotente ante un error accidental como ante una funcionalidad malévola
deliberada. Si usáis un programa sin la libertad 1, sois prisioneros de vuestro
software.
Nosotros, los desarrolladores de
software libre, también somos humanos, también cometemos errores y nuestro
código también contiene errores. La diferencia es que si encontráis errores en
nuestro código podéis corregirlos. De hecho, podéis corregir cualquier cosa del
código que no os guste. No podemos ser perfectos, pero sí podemos respetar
vuestra libertad y aquí está la diferencia.
Conviene observar que la nueva
versión de Windows, llamada Windows Vista, tiene como misión principal avanzar
en la restricción del usuario, tiene muchos sistemas nuevos para limitar al
usuario y también opciones nuevas para atacarlo. Por ejemplo, Microsoft tiene
la capacidad de enviar un mensaje, en todas partes por la red de manera que
cada computadora que reciba este mensaje dejará de funcionar con algún
dispositivo físico. Entonces todos los que tienen este modelo descubrirán que
ya no funciona, que no hay manera de corregirlo, y tendrán que comprar otro
dispositivo. ¿Y por qué quieren hacerlo? El propósito de estos dispositivos es
restringir al usuario, concretamente para evitar que el usuario pueda copiar
obras. Este es el propósito de todo: diseñan toda la informática de manera que
puedan limitarnos. Y cuando alguien ha descubierto una manera de usar un
dispositivo para copiar la intención de Microsoft, responden ordenando que
todos estos dispositivos no funcionen más para nadie. Tenemos un sitio
llamado BadVista.org que organiza una campaña que tiene como
objetivo no adoptar Windows Vista. Seguir con una versión antigua de Windows no
es vivir en libertad, pero al menos no empeora las cosas.
La libertad 1 es esencial, pero no
basta porque es la libertad personal de estudiar y cambiar el código fuente, no
basta porque millones de usuarios de ordenadores no saben programar, no son
capaces de ejecutar directamente esta libertad. Pero ni siquiera para programadores
como yo esta libertad es suficiente porque hay demasiado software, incluso
software libre. Nadie puede estudiar el código fuente de todos los programas
que usa y hacer personalmente todos los cambios que desea; es una carga
excesiva. Por lo tanto, para tener el control completo de nuestra propia
computación debemos cooperar. Y para ello necesitamos la libertad 3, la
libertad de distribuir y publicar copias de tus versiones cambiadas cuando
quieras. Con esta libertad podemos colaborar, ajustando el software a nuestras
necesidades y a nuestros deseos.
Si hay un millón de usuarios de un
programa libre que desean algún cambio es de suponer que habrá entre ellos unos
miles que saben programar y algún día algunos entre ellos harán este cambio y
publicarán su versión cambiada. Luego todo el millón podrá adoptar esta versión
y tendrá el cambio que habrán deseado sin tener que escribirlo por sí mismos.
Sólo unos pocos han de escribirlo y todo el resto puede tenerlo. Por lo tanto,
si muchos desean que el software libre progrese en esta dirección, muchos harán
cambios en esta dirección y habrá tal progreso. Y si nadie quiere el progreso
en esa dirección, sencillamente no se hará porque nadie tiene el poder de
imponer cambios a los demás si no les gustan. Ello nos muestra que las cuatro
libertades conjuntas logran que un programa libre sea desarrollado
democráticamente bajo el control de sus usuarios.
En cambio, en el software privativo
sí hay imposiciones. El desarrollador tiene todo el poder y puede imponer
cualquier cosa a los usuarios porque la única opción de los usuarios es escapar
completamente. El programa privativo se desarrolla bajo el control del
desarrollador, es como una dictadura o un dominio feudal que tiene su señor; no
es una sociedad de libertad. Algunos piensan que las libertades 1 y 3 no tienen
valor para los usuarios normales, pero no es verdad. Es verdad que los usuarios
normales que no saben programar sólo pueden ejercitar directamente las
libertades 0 y 2, la libertad de ejecutar el programa como quieran y de
distribuir copias exactas. Ambas no exigen programar, por lo tanto quienes no
saben programar todavía pueden ejercer estas libertades. Las libertades 1 y 3
de gestionar y cambiar el código fuente y distribuir la versión cambiada sí
implica saber programar. Cada uno puede ejercitar directamente estas libertades
hasta el punto que sepa programar, pero cuando los programadores lo hacen y
publican sus versiones cambiadas todo el mundo puede instalarlas, por lo tanto
los beneficios llegan a todos. Es como la libertad de la prensa: no todo el
mundo sabe escribir artículos de la calidad necesaria para publicarse y no todo
el mundo tiene ganas, pero es igualmente muy importante la libertad de prensa
para que toda opinión pueda ser publicada por alguien; si yo no lo publico
existe la posibilidad que otro lo haga. Entonces se podría argumentar que esa
libertad no tiene importancia por ser tan difícil de ejercer y porque la
mayoría no tiene la capacidad de ejercerla. Obviamente es un error, y el mismo error
se ve cuando este mismo argumento se aplica a las libertades 1 y 3.
Así pues, se da la circunstancia de
que hay empresas muy grandes acostumbradas a ejercer el poder social a través
del software propietario y nos acusan de que somos comunistas, a pesar de que
el software libre ha existido siempre en el marco de una sociedad capitalista.
Sin embargo, hay una diferencia entre el capitalismo que llamaríamos normal y
el capitalismo extremo que hoy en día presenciamos. El
capitalismo normal es de la opinión de que dentro de una sociedad de derechos
uno puede desarrollar su negocio. El capitalismo extremo, por su parte, opina
que es el negocio lo que debe primar por encima de todo, que el negocio tiene
derecho a ordenar la sociedad como quiera y que todo debe ser sacrificado por
la ganancia. Ninguna libertad tiene importancia suficiente para supeditarse a
la ganancia de las grandes empresas. Yo estoy en contra de este capitalismo
extremo y apoyo sin embargo el capitalismo normal. Soy de la opinión de que las
empresas no deben detentar todo el poder en la sociedad porque este hecho va
contra la democracia.
El principal reto político de nuestra
época es quitar poder político a las empresas. Son nuestro adversario, dicen
que no respetamos la propiedad privada, pero se trata de todo lo contrario.
Estas empresas afirman que vuestra copia no es de vuestra propiedad, que todas
las copias le pertenecen, mientras que con el software libre vuestra copia sí
que es de vuestra propiedad y podéis hacer con ella todas las cosas socialmente
útiles que consideres oportuno. Las empresas de estas características afirman
que no respetamos el mercado libre, pero vuelve a tratarse de la situación
contraria ya que el software libre comporta un mercado libre para todos los
tipos de soporte, mientras que en el caso del software propietario normalmente
éste provoca y conlleva una situación de monopolio. Únicamente la empresa
productora del programa tiene el código fuente, únicamente ella puede realizar
cualquier tipo de cambio. El usuario que desee alguna modificación tiene que
rogarle a la empresa que produce y desarrolla el software: "¡Oh, productor
omnipotente haga este cambio por mí!" Puede sonar gracioso, pero realmente
es muy triste. A veces la empresa responde a los usuarios diciendo:
"Páguenos por escuchar su problema". Si el usuario accede, la empresa
le responde: "Muchas gracias. En seis meses tendrá una actualización.
Compre la actualización y ya comprobará si hemos corregido su problema y verá
además qué problemas nuevos le proporcionaremos."
Con el software libre, sin embargo,
quien disponga de una copia del programa puede estudiar el código fuente,
hacerse experto en este código y ofrecer su servicio técnico. Por consiguiente,
los usuarios que aprecian una buena ayuda y desean un mejor servicio por su
dinero deben exigir el software libre y deben hacerlo sólo por este motivo:
para poder conseguir un servicio y apoyo técnicos a través de un mercado libre
con competencia.
Normalmente afirmamos que no hay
monopolio cuando es posible una elección entre productos, sin embargo cuando la
elección se produce entre programas propietarios sí hay monopolio. El usuario
que elige cualquiera de estos programas propietarios, cae automáticamente en el
monopolio de la asistencia técnica, ya sea de uno o de otro; sólo tiene
elección entre monopolios. La única manera de escapar del monopolio es escapar
del software propietario, y ésta es la meta del movimiento a favor del software
libre. Pero para empezar tuvimos que construir un lugar a donde pudiéramos
escapar, porque hace 24 años, cuando lancé este movimiento, no había ningún
lugar, ninguna tierra libre en el ciberespacio. No había posibilidad de usar
ordenadores en libertad porque los ordenadores no funcionan sin el sistema
operativo y en 1983 todos los sistemas operativos para los ordenadores de la
época eran sistemas propietarios. Era imposible comprar y usar un ordenador en
libertad. Decidí cambiar algo, quería vivir en libertad cuando usara el
ordenador. ¿Pero cómo hacerlo siendo una persona sin influencia política ni
demasiada fama? Teniendo además una idea completamente inusual, no pensaba
poder convencer a los gobiernos que cambiaran sus políticas ni a las empresas
que cambiaran sus prácticas. Sin embargo, sabía hacer muy bien una cosa: desarrollar
sistemas operativos. Por lo tanto reconocí la posibilidad de corregir este
problema social con un trabajo técnico de desarrollo.
Si desarrollaba un sistema operativo,
como autor, podría liberarlo y luego todo el mundo podría usar sus ordenadores
en libertad. Entonces era consciente de un problema social creciente y que la
mayoría no reconocía como tal. Tenía la capacidad de intentar corregirlo y, si
no lo hacía yo, tal vez nadie más lo haría. Por lo tanto, las circunstancias me
eligieron con el deber de hacer este trabajo. En este caso no fue cuestión de
nadar, sino de escribir el código. Sentí que era mi deber, decidí desarrollar
un sistema operativo libre o morir intentándolo (de vejez, es de suponer)
porque en aquella época el movimiento del software libre no tenía enemigos
activos. Muchos no estaban de acuerdo, pero sólo se reían un poco y muchos se
marcharon. Por lo tanto, el obstáculo no era la oposición; lo que tenía frente
a mí eran un montón de programas que desarrollar para obtener un sistema operativo.
Y no podía saber al comienzo si algún día llegaríamos a tener un sistema
operativo libre, pero cuando se supo que se trataba de luchar por la libertad
había que comenzar… No se debe esperar a que la victoria esté a la vista porque
sería esperar demasiado y perder con ello la mayoría de las oportunidades.
Entonces, sin poder vislumbrar el
futuro, decidí hacerlo lo mejor posible. Decidí crear un sistema compatible con
Unix para que los muchos usuarios de este sistema pudieran fácilmente migrar, y
para que fuera portátil, es decir, capaz de usarse en varios tipos de
ordenadores. Esta decisión determinó casi todas las decisiones iniciales
técnicas y anoté el nombre "GNU", es decir, "ñu" en
castellano, que dicen es más fácil de pronunciar. En inglés quiere decir
"GNU no es Unix". Es un acrónimo recursivo, una manera graciosa de
reconocer la contribución técnica de Unix, de sus ideas, pero al mismo tiempo
afirmar que el punto más importante consiste en afirmar que no es Unix, porque
Unix era un sistema propietario y sigue siéndolo; Unix no se puede usar en
libertad. Para que este sistema se pudiera usar en libertad debía ser
completamente diferente, debía desarrollarse de nuevo desde cero. Y eso
hicimos, comenzando en enero de 1984. Mi primera decisión en este sentido fue
reclutar a otros programadores para colaborar en el desarrollo del sistema. No
era necesario que fuera yo el único programador; sería mucho mejor acabarlo lo
antes posible con muchas personas trabajando cada una en una parte del sistema.
Durante los años 80, desarrollé yo
mismo algunos componentes importantes y además recluté a otros colaboradores
que desarrollaron sus componentes. En el año 1990 teníamos casi todo el
sistema, pero faltaba un componente esencial, el núcleo. En 1991 un estudiante
finlandés, Linus Torvalds, desarrolló un núcleo. Al comienzo este núcleo Linux
no era libre, pero en 1992 él lo liberó adoptando la licencia pública general
de GNU o GPR, que es la licencia que había escrito yo para usarla en los
componentes de GNU. Es una de las licencias libres, pero hay muchas más. ¿Qué
quiere decir una licencia libre? ¿Por qué licencia?
Según la ley actual de derechos de autor, todo programa es una obra literaria.
Únicamente por una declaración del autor o del poseedor de los derechos
autorizando las cuatro libertades, el programa o sistema se convierte en una
licencia libre, pero es mejor no desarrollar una licencia nueva porque la
cantidad de licencias que ya tenemos y resulta incómoda, sería mejor no tener
más licencias diferentes. En principio, cada uno de los programas libres
utiliza esta licencia. Cuando Linux se publicó bajo esta licencia también se
convirtió en libre. Y la combinación del sistema casi completo GNU y del núcleo
Linux dio a luz por primera vez un sistema completo y libre.
El sistema GNU con Linux, que cuenta
hoy en día con millones de usuarios. Pero lo fundamental no es que la gente use
este sistema. De hecho, hay otro sistema libre, el sistema BSD, pero la
elección entre programas libres no es una cuestión importante o ética. Se puede
decidir según la comodidad, pero la elección entre software libre y software
propietario sí que es un asunto ético. El software propietario es un problema
social que no hemos corregido y sobre todo las escuelas deben usar y enseñar
solamente el software libre. Hay cuatro razones para ello. La más obvia y
superficial es para economizar: las escuelas no tienen suficiente dinero en
ningún país y no deben desperdiciar su dinero pagando licencias de software
propietario, pero esto resulta trivial y algunas empresas de software
propietario suelen eliminar dicha razón regalando, o casi, copias a las
escuelas. ¿Por qué motivo lo hacen? ¿Por su idealista deseo de fomentar la
educación? No lo creo. Su deseo es convertir a las escuelas en instrumentos con
los que imponer a los alumnos la dependencia permanente a su software
propietario. Al terminar sus estudios ya no recibirán ofertas de copias
gratuitas y menos aún las empresas en las cuales trabajen. Entonces, si la
escuela crea y genera una dependencia que puede ser de por vida, puede al mismo
tiempo imponer una dependencia a toda la sociedad en su conjunto.
Es su táctica. Es como regalar drogas
a las escuelas para que las inyecten a sus alumnos, de este modo se gradúan
bajo la dependencia de la droga. La primera dosis es gratis, por esto regalan
copias gratuitas de su software no libre. Pero la escuela tiene una misión
social: formar la próxima generación como buenos ciudadanos de una sociedad
capaz, libre e independiente, es decir, formar a los alumnos como usuarios de
software libre. Cuando esta gran misión se interpreta en el campo informático,
es decir enseñar el software libre y no el software propietario, es obligado
rechazar estas ofertas de programas de dependencia.
Pero yendo un poco más allá en el
asunto de la educación, hay una razón que se aplica a todos los alumnos que es
la educación moral o la educación para la ciudadanía, es decir, la enseñanza
del espíritu de buena voluntad, de cooperación, de solidaridad social, el
hábito de ayudar a tu prójimo. Para eso cada clase debe tener una regla: si un
alumno trae un programa a clase no debe guardarlo sólo para él, sino que debe
compartirlo con el resto de la clase. Y la escuela debe seguir esta misma
regla, debe dar buen ejemplo, debe únicamente traer software libre a la clase.
Todas las escuelas de todos los niveles deben observar esta regla. Esta universidad
donde ahora nos encontramos debe también tener dicha regla, debe únicamente
enseñar software libre, el único software compatible con la ciudadanía. El
software propietario es un sistema de colonización electrónica, no ejercido por
unos países, sino por unas empresas. Colonizan los ordenadores de todo el mundo
excepto los nuestros, que los rechazamos. Y practican, como otros sistemas
coloniales, la táctica de dividir para dominar. Compran el apoyo de las élites
locales como, por ejemplo, los estados y las instituciones de influencia como
escuelas y universidades. Intentan comprar todas las élites para éstas
colaboren así en la sumisión de los demás y es nuestro deber rechazar que se
nos compre con esta finalidad.
