Software Libre
Por Carlos Castillo / 18 de agosto de 2010.- Este programa es sobre uno de los frentes más exitosos de la Cultura Libre: el movimiento de Software Libre.
Software Libre
Para un computador, un software, un programa, es una larga serie de números que le indican qué es lo que debe hacer. Estos números se llaman "código de máquina" y son para consumo del computador. Un humano puede en principio entender estos números, pero es un proceso extremadamente lento y laborioso.
Cuando los programadores escribimos un programa, no lo hacemos directamente en código de máquina, sino que en código fuente. Para una persona de fuera de la computación, si tiene aficiones más matemáticas el código fuente le parecerá una especie de álgebra; si está más inclinado hacia las letras, lo verá como un largo manual de instrucciones a prueba de tontos, o como una especie de contrato legal muy exhaustivo: "si esto sucede, entonces hay que hacer esto, a menos que tal cosa, en cuyo caso hay que hacer esta otra".
Existen varios lenguajes de programación en los cuales se puede escribir este código fuente,. Es la tarea de un "compilador" (otro programa) traducir este código fuente en código de máquina. El código fuente puede ser bastante largo. El navegador Firefox está escrito en alrededor de 2 millones de líneas de código. Apache (la contraparte de Firefox en el lado del servidor) en 90k. Esto son páginas y páginas de texto escrito. Comparando lo incomparable, La Iliada de Homero, está escrita en 15.000 versos, y la Odisea en 12.000.
Para escribir millones de líneas se necesita mucha gente. Lo bueno, es que los programas pueden construirse de una forma modular. Se divide el trabajo del programa en cientos o miles de pequeños fragmentos, cada uno de los cuales se ocupa de una pequeña parte -- y se intenta que cada parte sea lo más independiente del resto posible.
* * * HISTORIA
En los primeros computadores no había una distinción entre la máquina (el hardware) y los programas (el software). Pero esto comenzó a cambiar en la segunda mitad del siglo XX. Desde los años 1960s y 1970s que se comenzó a considerar el software como algo que se podía vender, y que se utiliza la ley de propiedad intelectual, incluidos los aspectos de secreto de negocios y de copyright, para evitar que la gente pueda ver el código fuente de los programas. Los programadores y sus empresas han usado estas leyes para maximizar sus beneficios controlando lo que los usuarios de los programas pueden hacer con ellos.
Pero tal como para un abogado, un programa puede parecer una ley, para un programador, una ley puede parecer un programa. Y un programa puede hackearse. Hackear no es lo mismo que crackear: crackear es una acción maliciosa, destructiva. Hackear es modificar algo, usar algo para un propósito diferente para el que fue creado, como cuando uno usa una tapa de metal para evitar que una mesa se balancee.
Richard Stallman, el fundador de la Fundación por el Software Libre y uno de los primeros promotores de esta idea, encontró en los años 1980s una forma de hackear la ley de copyright, que está hecha para excluir, y convertirla en una herramienta de inclusión.
Su hack fue el siguiente, que dió origen al movimiento GNU. Cada miembro del proyecto GNU, después de escribir un programa: Primero, declara que tiene copyright sobre él, al ser su autor, y segundo, en vez de usar el copyright para evitar que otros usen el programa, usa el copyright para ofrecer su programa libremente a todos los que acepten ciertas condiciones de reciprocidad.
Estas condiciones de reciprocidad están estipuladas en una licencia de uso, la Licencia GNU. Para resumir la licencia GNU nadie mejor que el mismo Stallman, que habla castellano, aunque con un fuerte acento gringo. En una charla en Mayo del 2009 en Buenos Aires, Argentina, explicó así que es el software privativo, qué es el software libre, y cuáles son las condiciones de reciprocidad de la licencia GNU:
(Stallman) "Un programa es software libre si respeta la libertad del usuarios y la solidaridad social de su comunidad. Si un programa no es libre, lo llamamos software privativo. Privativo, porque priva de la libertad a sus usuarios, los mantiene divididos e impotentes. Divididos porque se les prohíbe compartir el programa con los demás. E impotentes porque no tienen acceso al código fuente, por lo tanto no pueden cambiar el programa, ni siquiera pueden comprobar lo que realmente hace. Dividir para dominar. Un sistema de colonización digital."
El software libre respeta la libertad de los usuarios, pero no en una forma ambigua, general, sino en una forma muy específica:
(Stallman) "Un programa es software libre si tú el usuario tiene las 4 libertades esenciales.
La libertad 0 es la libertad de ejecutar el programa. como quieras;
la libertad 1 es la libertad de estudiar el código fuente del programa y cambiarlo para que haga lo que quieras;
la libertad 2 es la libertad de ayudar a tu prójimo, de distribuir copias exactas, cuando quieras; y
la libertad 3 es la libertad de contribuir a tu comunidad, es la libertad de distribuir tus propias instrucciones cambiadas cuando quieras.
Si el programa lleva estas 4 libertades, es software libre, es decir, su sistema social de distribución y uso es un sistema ético, que respeta la libertad y la solidaridad social. Pero si una de estas libertades falta o es insuficiente, el programa es privativo, porque impone un sistema social no-ético a sus usuarios. Por lo tanto, que un programa privativo exista y se use es un problema social."
Lo revolucionario de la licencia GNU es que es una de las pocas ocasiones en que un profesional que te provee un servicio, sin que nadie lo presione, decide ofrecerte algo que tú quieres en los términos que más te convienen a tí. Es como si los dentistas en vez de hacerte llenar un formulario en que se liberan de toda responsabilidad por ponerte anestesia, te entregaran una carta firmada en que te dijeran que te van a dar el mejor servicio que puedan, y lo hicieran voluntariamente.
El movimiento del software libre hace esto por razones éticas, para que los programadores puedan contribuir a la sociedad en vez de explotarla.
* * * IMPACTO
Hoy, literalmente, el Software Libre mueve internet. La mayoría de los servidores web en el mundo usan Apache, que es software libre. El sistema operativo GNU/Linux, programas como PHP y Python y motores de bases de datos como MySQL son la base sobre la cual muchos de los sitios más visitados se construyen. Todos estos son programas de software libre.
Grandes empresas de tecnología han apostado por el software libre. Sun mantiene Java, un lenguaje de programación que es ampliamente usado y que en su mayor parte es software libre. Nokia tiene una plataforma llamada Maemo, basada en Linux, para sus teléfonos móviles como el N900, también es software libre. Oracle que siempre ha tenido un rol dominante en el mundo de las bases de datos, ofrece también MySQL, uno de los mejores productos del software libre. IBM tiene el entorno Eclipse y una fuerte apuesta por Linux. Google tiene Android para teléfonos móviles, un sistema operativo libre, y el lector de libros Kindle-2 de Amazon usa Linux.
* * * SOFTWARE LIBRE ES NEGOCIO
El caso del software libre, que tiene ya varios años de existencia, muestra que se puede hacer negocio sobre la información sin vender información. Un programa libre puede generar beneficios económicos tanto para quienes lo utilizan como para quienes lo desarrollan.
[Sonido: "Tada" de Windows 3.1]
Bill Gates se hizo millonario vendiendo software privativo. En el caso del software libre, el beneficio no lo reciben unas pocas personas, sino que literalmente, millones. Es más difícil llegar a ser el hombre más rico del mundo con software libre, sí. Pero se puede hacer negocios y se puede ganar dinero sin necesidad de extorsionar a los usuarios.
A nivel individual, un programador clave de una pieza fundamental de software libre puede llegar a ser extremadamente bien recompensado por sus servicios. A nivel de empresa, el negocio se construye alrededor del soporte, del entrenamiento, de la personalización o adaptación del software, de la consultoría, entre otros servicios.
El software libre es la prueba viva de que la Cultura Libre es económicamente viable y beneficiosa para todos.
* * * COMUNIDAD Y CULTURA
Finalmente, desarrollar cualquier actividad creativa, incluyendo escribir programas, es muy reconfortante en sí mismo, pero puede ser aún mejor si el resultado del trabajo nos beneficia a todos:
(Stallman) "Desarrollar un programa libre es más o menos una contribución a la sociedad. Más o menos según los detalles. Pero desarrollar un programa privativo no es una contribución, sino un golpe. El programa privativo opera como una trampa, atrayendo a gente a ceder su libertad para hacerse usuario del programa. Si tiene funcionalidades atractivas, son el cebo de la trampa. No lo hace mejor, sino más peligroso.
El objetivo del movimiento de software libre es que todos los programas sean libres para que todos los usuarios sean libres."
Fuentes
Referencias
Música
Hermetico - Parabólica via Silenced Music
Psy Brazil - Erotic Dream via Jamendo (click en la portada del álbum para descargarlo)
Videos
Sonidos
Éste es el archivo del podcast "Cultura Libre", emitido entre el 2010-2013 a través de Manzana Mecánica.
(CC-BY) Carlos Castillo 2020-2013.