Linux: El futuro depende de lo que hagamos ahora

Hace bastante tiempo, Bill Gates y Paul Allen pensaron que no era justo tener
que pagar por el tiempo de procesador de los costosos Mainframes. Y pensaron
que la solucin eran los computadores personales. Apostaron todo su futuro a
ello. Era slo una idea. Incluso se asustaron al ver salir los computadores
Altair en una revista de electrnica. "El futuro esta pasando sin nosotros"
pensaron. Y creyeron fervientemente en su idea, hasta el punto de hacerla
realidad. Y convirtieron a Microsoft en el gigante que es ahora. Tal vez si
Bill Gates y Paul Allen no hubieran existido, los nicos computadores
personales que tendriamos seran japoneses y serviran slo para jugar.
Aunque, seguramente, tendramos a Quake III Arena, con un nombre japons, por
supuesto. Y sera un juego de Rol.

As mismo, Richard Stallman pens que no era justo que la gente pagara grandes
sumas de dinero por el software que usaba, sobre todo si no era de la calidad
que pretenda tener. Y cre el proyecto GNU y la FSF. Tamben apost su futuro
al mismo. Y cree fervientemente en l. Cree que la licencia GPL de su
software es la mejor licencia que hay en el mundo, y tambin, es posible, que
tenga razn. Hace aos lea artculos escritos por analistas de la industria,
los cuales predecan que aunque el costo del hardware bajara constantemente,
el costo del software solamente ira en ascenso. Tal vez, si Richard Stallman
no hubiera existido, ahora estaramos pagando licencias de 1000 dlares o ms,
por un software que no valdra una dcima parte de ese precio.

Tambin est Linus Torvads. La idea fundamental que l tuvo, fue darse
cuenta, en algn momento, que el software que haba escrito para conectarse
con el servidor de su universidad, tena cierto parecido con un sistema
operativo, o ms bien, con el kernel del mismo. Y adems de esto, la idea de
tratar de mejorarlo constantemente con la ayuda de sus propios usuarios. Este
fue el paso fundamental. Linus es un lder. Si Linus no hubiera existido,
...no eso es algo que no quiero imaginar.

Richard Stallman solamente escribi su manifiesto, hizo software, y le puso su
licencia, pero no ha hecho algo igual de significativo desde entonces. Y cada
vez que puede da sus opiniones sobre todo tipo de licencias (como sobre las
libreras Motif). La licencia de un software no es su parte ms importante. Si
lo fuera, la gente hace mucho tiempo hubiera dejado de usar Windows. Se
necesita algo ms. Se necesita gente que haga por cada aplicacin, y por cada
librera, lo que Linus hizo por el kernel.

Adems de esto, esta el hecho, de que ambas ideas, la de Bill Gates y Paul
Allen, de no tener que pagar por tiempo de procesador usando un computador
personal, y la de Richard Stallman, de no tener que pagar por el software que
usan los computadores, se unen en una sola. En Linux. De libre distribucin y
para computadores personales.

Ahora que Linux esta entrando de manera segura pero muy, muy lenta en los
computadores personales, debemos fijarnos en su interfz grfica. Digo que
est entrando de manera segura, porque una vez un usuario est satisfecho con
su instalacin de Linux, ha hecho funcionar cada uno de los dispositivos de
hardware que posee, y ha puesto a punto todas sus aplicaciones, es posible que
nunca vuelva a usar Windows. Pero es lento tambin, porque slo un pequeo
porcentaje de las personas que prueban Linux quedan satisfechas con la
experiencia. Las dems vuelven a Windows. Y pongo como aspecto de mxima
importancia la interfz grfica, porque alla afuera, en el mundo real, hay 200
millones de usuarios, que solamente saben manejar un computador de esta
manera. Sin consolas de texto. Sin comandos de dos letras.

Una de las primeras cosas que aprend en la universidad, es que en
programacin, no debemos tratar de volver a inventar la rueda cada vez que
hacemos un programa. Es por esto que existen las libreras de funciones. Y es
por esto mismo que son un estndar.

En las interfaces grficas, estamos duplicando esfuerzos y progresando a la
mitad, o ms lento, de lo que deberamos. Los equipos de programadores de los
entornos KDE y GNOME estn trabajando en los mismos problemas, en crear una
interfaz consistente, estndar para programar, y altamente personalizable,
para que los usuarios de un entorno grfico se sientan a gusto, y los
programadores sepan que sus programas se van a ejecutar en cualquier sistema
Linux sin ningn inconveniente. En definitiva, duplicando esfuerzos.

El entorno KDE tiene muchas caractersticas y proporciona una interfaz
consistente y personalizable. Es extremadamente fcil de usar y esto permite
incrementar la productividad de cualquier usuario y eliminar en parte la
pendiente de aprendizaje que conlleva la migracin desde un sistema Windows a
un sistema Linux. A pesar de esto, he visto mensajes en nuestro grupo local de
usuarios de linux, de algunos miembros que detestan al KDE, ms por razones
ideolgicas (la licencia de las librerias Qt) que por una causa prctica, y
nunca lo recomendarn en algn entorno empresarial a pesar del beneficio que
pueda tener su uso.
 
"Tengo en la frente una K tachada" fue la expresin que us uno de ellos.

GNOME tambin tiene problemas con algunos usuarios. Es una excelente
herramienta, y su kit de programacin GTK tiene licencia GPL en todas las
plataformas en las cuales est disponible. Tiene una cantidad de tecnologas
innovadoras y caractersticas considerable. Pero tambin tiene algunos
problemas, no slo en s mismo sino en la aceptacin que tiene por parte de la
gente. Algunos programadores que prefieren las licencias BSD detestan todo lo
que tiene que ver con las licencias GPL. Tampoco tiene una interfaz
consistente en todas las instalaciones. No seor, esto no es un error, es una
caracterstica. Es la frase que se usa en estos casos. Porque se pueden probar
varios administradores de ventanas y escojer su favorito. Pero muchos usuarios
ni siquiera tienen idea de qu es un administrador de ventanas.
 
Para poner las cosas en otra perspectiva, supongamos que el kernel Hurd del
proyecto GNU hubiera estado listo en 1996, antes de la explosin comercial que
tuvo en el ltimo ao Linux, y existieran algunas distribuciones con el
kernel Linux, otras con el kernel Hurd y otras con ambos. Habra usuarios
fanticos de uno y de otro. Y tal vez habra alguien diciendo "Tengo en la
frente un pinguino tachado", a pesar de estar, como todos, comprometido con el
proyecto de liberarnos de los 64000 bugs por 400 dolares o ms, a los que
estamos atados todava por fuerzas de la industria. Y tal vez me encontrara
con el "Tengo en la frente un pinguino tachado" en la lista de correo de
nuestro grupo local de usuarios.

Esta comparacin no es del todo exacta, pero sirve para captar la idea. No es
exacta porque ambos kernels pueden ejecutar los mismos programas y el
programador no tiene que hacer nada especial para lograr esto. En los entornos
grficos, las aplicaciones KDE usan unas libreras y unos estndares
determinados y las aplicaciones Gnome usan otros. Y los usuarios deben tener
ambos grupos de libreras en su sistema para poder ejecutar ambos tipos de
programas.

Y las dems aplicaciones usan las otras libreras disponibles. Hay una
cantidad impresionante de libreras para programar en el entorno grfico. Tal
vez es bueno, tal vez no. Un usuario nuevo, que sabe programar en C o en C++ y
quiere hacer una aplicacin para ser usada en Linux, lo primero que encuentra
es una confusin de estndares y libreras. Nadie se ha puesto de acuerdo en
cul es la mejor. Es muy posible que nuestro hipottico usuario nuevo, gaste
ms tiempo decidiendo qu librera de programacin y qu entorno usar, que el
tiempo que gaste aprendiendo a usar estas libreras para escribir su programa.
Y tambin es posible, que alguna gente use Gnome solamente porque es instalado
por omisin en la distribucin RedHat. Slo los fanticos de las licencias GPL
usaran Gnome. Pero es slo una posibilidad.

Sera muy bueno encontrar la manera unir los proyectos KDE y Gnome. Tal vez
habra un lder que los coordinara, tal y como lo hace Linus con el kernel y
esto dara ms motivacin a las personas que quieren programar para ayudar a
que Linux sea mejor. Tendramos cada vez mas programadores, de una manera
casi exponencial, tal y como ocurri con el kernel desde sus inicios.

En este momento, tenemos una oportunidad para cambiar el mundo de las
Interfces Grficas. No tenemos que hacerlas compatibles con los viejos
programas DOS, o con programas de 16 bits. Tenemos aceleracin grfica por
hardware. Mucha gente que ha usado la lnea de comando durante aos, se queja
de que los entornos grficos no les permiten ser tan productivos. Y tienen
razn. Se han olvidado principios ergonmicos fundamentales en el diseo de
las interfaces grficas. Uno de estos, es que los pxeles exteriores de la
pantalla, son los ms fciles de alcanzar, especialmente los de las cuatro
esquinas. Y deberan tener funciones asignadas. Si los botones de las barras de
desplazamiento de los navegadores (browsers) de internet estuvieran en esas
esquinas, tal vez nunca hubiera existido la necesidad de usar ratones con
ruedas. Una ventana de KDE maximizada permite usar los pixeles exteriores
solamente para cambiar de tamao. Cerrar la ventana implica un tiempo tres o
cuatro veces mayor que si el boton respondiera tambin en esos pixeles, tal y
como lo hace en Windows. Otro de los principios, es que los botones grandes
son ms fciles de alcanzar. Los botones del administrador de ventanas
Enlightment son muy confusos y ademas de eso, muy pequeos. Es tal vez, el
administrador de ventanas ms improductivo que existe, aunque, a pesar de
esto, tiene una imgen estupenda. Otro detalle importante, es que la mayora
de las operaciones en un sistema grfico, deben poder realizarse sin la
necesidad de un ratn. El teclado siempre ser ms rpido que el ratn.

A pesar de todo esto, Linux tiene que solucionar otros problemas igual de
urgentes. Creo que Linux es un sistema operativo importante en la industria de
la computacin y todos los fabricantes de hardware ya deberan tomarlo como
tal. En lugar de dejar que la comunidad open source haga todos sus drivers,
las empresas fabricantes de hardware deben hacer sus propios drivers, y si lo
desean, dejarlos open source para que los usuarios corrijan los errores o
hagan ms funcional el hardware. Deben seguir el ejemplo de Creative, que
apoya abiertamente a Linux. Incluso si crean drivers binarios es de gran ayuda.

Tomemos el caso de los software modems, conocidos como "winmodems". Lucent
hizo un driver binario para la distribucion RedHat 6.1, el cual soporta
algunos software modems con chips Lucent. Lucent slo ha hecho ste driver,
aunque tiene algunos errores, porque slamente lo pidieron una vez. Lucent ha
anunciado que no hace los drivers a peticin de los usuarios sino a peticin
de las empresas que venden distribuciones de Linux. Es una buena poltica, les
ahorra mucho tiempo y dinero en soporte tcnico y es posible que muchas
empresas de hardware tengan una poltica similar. Tal vez slo estan all,
esperando que alguna empresa distribuidora de Linux les pida los drivers.
Todos los que han escrito drivers alguna vez, saben que es mucho ms fcil
escribir drivers para Linux que para Windows.

Linux todava no es lo suficientemente fuerte. Y las empresas que hacen su
dinero vendiendo Linux tienen la responsabilidad de hacerlo ms fuerte. Pero
dejan muchas cosas para que las haga "la comunidad open source". Linux es un
buen software para mejorar y hacer cada vez ms compatible y amigable. Otros
proyectos open source no lo son. Un proyecto no es de gran calidad por el
simple hecho de ser open source. No deben tratar de apoyar todos los proyectos
que hay por ah por el simple hecho de ser open source, o ser sistemas
operativos "alternativos". Por esa razn, entre otras muchas, no hay que
extraarse de que bajen las acciones de empresas relacionadas con Linux.

Algunas personas han especulado que el triunfo de Linux puede estar basado en
una aplicacin exitosa (killer application), un software muy bueno y que
solamente funcione en Linux, el cual haga que todo el mundo desee tenerlo. Y
tambin pensaron que esa aplicacin podra ser una suite de oficina o algo
parecido. La gente de Microsoft piensa de manera similar. Por eso tratarn que
su prxima versin de Office (con nombre clave Office 10) tenga reconocimiento
de voz integrado. Y todos sabemos que esa versin tal vez se venda bien, pero
el reconocimiento de voz no funcionar aceptablemente hasta la siguiente, las
dos siguientes, o las tres siguientes versiones.

Los creadores de RedHat crearon el sistema de manejo de paquetes RPM y en esto
basaron su propia distribucin. RPM es la "aplicacin exitosa" de RedHat.
Hicieron un buen trabajo. Todos los que hemos tenido que actualizar slackware
a otra versin, o incluso Windows, sabemos que la mejor manera de actualizar,
es borrando todo e instalando a partir de cero. Y eso ya no es un problema en
Linux, gracias a la gente de RedHat.

Tal vez la respuesta no sea una aplicacin. Tal vez sean muchas. Son conocidas
como juegos. El primer esfuerzo por hacer que Windows fuera una plataforma
aceptable para juegos se llam WinG. Funcionaba sobre Windows 3.1, con
extensiones de 32 bits llamadas "Win32s". Y era terriblemente malo. El nico
juego que recuerdo que las usaba era parecido a Wolfenstein. Y tambin era muy
malo. No haba comparacin entre los juegos para DOS, como DooM, Descent o
Warcraft y los simples juegos de Windows. Incluso con Windows 95, el soporte
para juegos era terrible. Hasta 1996 aparecieron las libreras DirectX. El
primer juego respetable que funcionaba sobre Windows que pude ver fue DooM II.
Luego vino MS Fury. Y la industria fue cambiando lentamente. El resto es
historia. Se puede ver que no fue un camino fcil para Microsoft, sobre todo
por su modelo para hacer drivers.

La ventaja que tuvo para las compaas hacer juegos en DOS, era el control
total que podan tener sobre el hardware. La ventaja que tiene ahora hacer
juegos para Windows9x es que no tienen que preocuparse de compatibilidad con
la innumerable cantidad de hardware que existe en el mercado, porque las
libreras DirectX permiten usar una serie de rutinas estndar para controlar
el hardware que tienen los sistemas. Linux no permite el control total del
hardware, y por ahora tampoco tiene una serie de libreras estndar que le
permitan interactuar con el hardware de una manera eficiente. Aunque hay
algunas libreras para el video, todava faltan para el sonido, para
dispositivos de control y dems.

Y gracias a los juegos es que an conservo una copia de Windows 95 funcionando
en mi computador. Linux, como en todo lo dems, ha evolucionado ms rapido
que Windows y ya tiene soporte para aceleracin OpenGL en algunas tarjetas, y
Xfree 4.0 promete mucho ms en este aspecto. Y muchos servidores de Quake III
Arena corren Linux. Pero la competencia no se detendr. Necesitamos ms ideas.
Y mejores. Sobre todo ahora que Win2000 ha copiado todo lo que ha podido de
los sistemas Linux y BSD. Y la siguiente versin copiara a su vez todo lo que
pueda.

Microsoft ha concentrado sus esfuerzos en Windows2000 para lograr lo que ellos
llaman "Cero Administracin", con sistemas que se administren solos. Esto es
una estrategia comercial, argumentando que en los sistemas Linux los costos
de administracin son muy altos, pero es una buena iniciativa. En Linux es
fcil implementar estos mecanismos de "Cero Administracin", con scripts
usando Perl o algn lenguaje similar y ejecutndolos peridicamente con Cron,
en los casos que sea necesario.

Gran parte de los costos de un sistema vienen tambin del soporte tcnico.
Sera muy bueno, sobre todo para los usuarios, que hubieran sistemas "Cero
Soporte Tcnico". Sera software que se autodiagnosticara, buscara
informacin sobre su problema en una base de datos en lnea, y aplicara las
soluciones por si slo, sin afectar las aplicaciones que estn en ejecucin y
sin reiniciar el sistema. No se si sea posible, pero se que sera muy bueno.

En este momento, debemos tomar decisiones muy importantes para el futuro de
Linux y la tecnologa informtica en general. Linux est aqu para quedarse. Y
las decisiones de diseo que sean tomadas en los prximos tres aos afectarn
los prximos diez o veinte aos en la industria de los computadores. En cinco
o siete aos ya es posible que Linux sea mucho ms usado en todo tipo de
computadores, incluyendo los computadores personales, que cualquier versin de
Windows.

Tal vez aparezcan nuevas ideas que cambien el futuro de la tecnologa y nos
beneficien a todos, como las que tuvieron en sus inicios Bill Gates y Richard
Stallman. Y lderes como Linus Torvalds que puedan coordinar cientos de
personas a travs del planeta para hacerlas realidad. Personas de esta clase
son las que cambian el mundo. Y quizs esos visionarios y lderes potenciales
se animen a arriesgar todo su futuro por esas ideas. El futuro depende de lo
que hagamos ahora.

Nicolay Giraldo
