Sábado, 26 de julio de 2003 | Hoy
EVOLUCION, DARWINISMO Y SOFTWARE LIBRE
Los bits se multiplican,
se reproducen a través de la red, se cruzan entre sí y producen
nuevos bits. Los más aptos para responder a las necesidades de la naturaleza
humana serán los que sobrevivan en la jungla de Internet. Los que no,
quedarán en una especie de hibernación hasta que alguien, a modo
de Jurassic Park, los resucite para algún fin nuevo. Los programas han
ido cambiando a lo largo del tiempo, y aquellos que mejor respondieron a las
necesidades del público o que eliminaron a las especies competidoras
por medio de la fuerza bruta y monopólica fueron los sobrevivientes.
Justamente estas dos técnicas de supervivencia y reproducción
son las que se pueden aplicar también a los programas de computación.
En lugar de genes habría que hablar de bits. En lugar de ADN, de “códigos
fuentes”. En vez de naturaleza, de usuarios. En lugar de medio ambiente,
de la red. Es allí donde dos tipos de caminos diferentes (¿dos
ramas evolutivas?) se enfrentan y tienen planteada una lucha encarnizada. Por
un lado están los programas más conocidos, desarrollados por empresas
que mantienen en secreto el código genético de los mismos. Por
el otro está el software libre.
¿Qué
es el “software libre”?
Lo que hace que un programa de computadora sea libre es su licencia. Todos vienen
con un documento que nos indica en qué forma podemos usarlo, si podemos
copiarlo o modificarlo, etc. Los softwares más conocidos, como por ejemplo
el sistema operativo Windows, permiten la instalación en una sola máquina
y no ofrecen la posibilidad de modificarlos o ver cómo están hechos;
ni siquiera se pueden prestar, al menos en teoría. Por el contrario,
el “software libre” habilita al usuario a que vea cómo está
hecho, lo modifique y después pueda dárselo a quien quiera.
En los albores de la historia de la computación, cuando los monitores
eran verdes y negros y las computadoras apenas si se veían en algún
laboratorio muy especializado, todos los programas eran libres. Pocas personas
se dedicaban a desarrollarlos y en general trabajaban en una gran comunidad
donde el intercambio de los programas, todavía en disquetes, facilitaba
que pudieran ayudarse a mejorarlos.
Pero cuando las computadoras personales empezaron a ser masivas, algunas empresas
consideraron que no era bueno que cualquiera pudiera ver cómo estaba
hecho el programa: ellas habían invertido dinero en su desarrollo y cualquier
otra empresa podría utilizar sus avances para su propio beneficio. Entonces
comenzaron a esconder el código fuente de los programas –las instrucciones
que los programadores le dan a la computadora– para que sólo puedan
verlo quienes trabajaban allí.
Para su desgracia, en 1984 Richard Stallman, un investigador del Massachusetts
Institute of Technology, inició un movimiento para mantener el software
y su código libre de las trabas de las empresas. Compartiendo los conocimientos,
pensaba, la sociedad se beneficiaría con mejores programas.
La evolucion del
software
Los programas de software libre son respuestas no sistemáticas a la necesidad
de realizar algún trabajo. Casi se podría decir que aparecen por
azar en distintos lugares cuando un programador se enfrenta a la difícil
tarea de armar una serie de instrucciones para que su computadora haga lo que
él necesita. Luego, los programadores lo dejan en algún sitio
de Internet donde otros pueden enterarse de la existencia del proyecto y bajar
lo que está hecho para verlo, probarlo y modificarlo. Es decir que arrojan
su descendencia al mundo para ver si se adapta o muere. Tal vez algunos de sus
bits sobrevivan en otro programa futuro. La evolución dependerá
de que una comunidad se forme en torno de él para mejorarlo, escribir
la documentación necesaria, probarlo nuevamente. Al tener todos los usuarios
acceso al código, ellos mismos pueden trabajar hasta encontrar la solución
y después publicarla para todos los demás; de esta forma el programa
se prueba en diferentes configuraciones de computadoras lo que facilita encontrar
la mayor cantidad de errores posible.
Así como la adaptación va favoreciendo ciertas ramas evolutivas,
ciertos programas con más posibilidades y atractivos van mejorando y
desarrollándose cada vez más resistentes al ambiente. Al igual
que en la evolución, ante un problema no hay una sola solución/adaptación:
así los proyectos se ramifican con diferentes soluciones aportadas por
los programadores. Gracias a la dificultad de controlar Internet –o gracias
a la facilidad de intercambio que genera–, los fuertes programas-dinosaurios
pueden perder frente a los variados y flexibles mamíferos del software
libre como si un meteorito hubiera caído sobre la Tierra.
Alpha y Beta
Los programas de software libre pueden bajarse de la red o conseguirse en tres
versiones diferentes: a) alpha, para desarrolladores; b) beta, para usuarios
experimentados que quieren probar las nuevas características y se arriesgan
a que algunas cosas no funcionen, y c) estable, para los usuarios finales. Las
versiones alpha van introduciendo las nuevas características que, a medida
que se arreglan, se incorporan a las versiones beta y estable. Como en este
tipo de desarrollo no se tiene la presión de la venta, los cambios se
van realizando con seguridad, y cuando llegan a la versión estable ya
tienen pocos o ningún problema. Este es el camino que recorrieron algunos
programas famosos como Linux.
Por el contrario, el software propietario tiene la obligación de sacar
un nuevo modelo todos los años, y a cada uno debe agregarle nuevas funciones
para que los usuarios deseen adquirirla. Y como un retraso en los tiempos pautados
suele espantar a los inversionistas, los programas salen a la venta con problemas
que después deben ser resueltos a través de parches (patches).
Y éstos sólo pueden ser realizados por los mismos programadores
de la empresa, ya que su código genético está oculto para
el resto de la humanidad. Por lo tanto, en los recovecos de estos bichos pueden
ir quedando deformaciones que eventualmente minan el cuerpo del ser.
Dos evoluciones
diferentes
¿Cuál será la fórmula más apta? ¿Grandes
programas con muchas características y con problemas diseminados en todo
su ser? O ¿seres con menos habilidades pero que cumplen mejor las tareas
que realizan? ¿Un dios a cargo de crear las adaptaciones necesarias o
una comuna de ángeles que decide en una democracia de hecho el camino
a seguir? Es difícil decirlo. En la evolución nunca se sabe qué
camino será el que mejor se adapte. Y mucho menos si algún dios
travieso está dispuesto a favorecer a una especie en particular creando
algún monopolio.
© 2000-2022 www.pagina12.com.ar | República Argentina | Política de privacidad | Todos los Derechos Reservados
Sitio desarrollado con software libre GNU/Linux.