En el principio fue la línea de comandos (11 page)

BOOK: En el principio fue la línea de comandos
9.28Mb size Format: txt, pdf, ePub
ads

Y tenía un hardware barato en que escribir ese código. El hardware barato es algo mucho más difícil de lograr que el software barato: una sola persona (Stallman) puede escribir software y colgarlo en la Red de modo gratuito, pero para fabricar hardware hay que tener toda una infraestructura industrial, lo cual no es barato ni de lejos. Realmente, el único modo de hacer que el hardware resulte barato es sacar un número increíble de copias, de tal modo que el precio por unidad acabe cayendo. Por las razones ya explicadas, Apple no tiene ninguna gana de ver cómo cae el precio del hardware. La única razón por la que Torvalds tenía hardware barato era Microsoft.

Microsoft se negó a entrar en el negocio del hardware, insistiendo en hacer que su software pudiera ejecutarse en hardware que cualquiera podía fabricar, y creó así las condiciones de mercado que permitieron que los precios del hardware cayeran en picado. Al tratar de comprender el fenómeno Linux, pues, tenemos que contemplar no a un único innovador, sino una especie de extraña Trinidad: Linus Torvalds, Richard Stallman y Bill Gates. Elimínese cualquiera de estos tres y Linux no existiría.

Shock de sistema operativo

Los jóvenes estadounidenses que dejan su gran país homogéneo y visitan otra parte del mundo típicamente sufren varios grados de shock cultural: primero, inmenso asombro. Luego, un acercamiento tentativo a las costumbres, cocina, sistemas públicos de circulación y retretes del nuevo país, lo cual lleva a un breve periodo de confianza fatua en que son expertos instantáneos en el nuevo país. A medida que continúa la visita, empieza la morriña y el viajero empieza a apreciar, por primera vez, cuánto daba por sentado en casa. Al mismo tiempo, empieza a resultar obvio que las propias culturas y tradiciones son esencialmente arbitrarias: conducir por la derecha, por ejemplo. Cuando el viajero vuelve a casa y hace balance de la experiencia, puede haber aprendido bastante más sobre los Estados Unidos que sobre el país que fueron a visitar.

Por los mismos motivos, merece la pena probar Linux. Ciertamente, es un país extraño, pero no hay por qué vivir ahí; una breve estancia basta para experimentar el gusto del lugar y —lo que es más importante— revelar todo lo que se da por sentado, y todo lo que se podría haber hecho de modo distinto, en Windows o MacOS.

No se puede probar sin instalarlo. Con cualquier otro sistema operativo, instalarlo sería una transacción sencilla: a cambio de dinero, una compañía te daría un CDROM, y ya está. Pero hay un montón de cosas subsumidas bajo ese tipo de transacción, y hay que verlas y diferenciarlas.

En Estados Unidos nos gustan los tratos simples y las transacciones sin complicaciones. Si vas a Egipto y, pongamos, tomas un taxi en algún sitio, te conviertes en parte de la vida del taxista; se niega a aceptar tu dinero porque rebajaría vuestra amistad, te sigue por la ciudad y llora como un crío cuando te metes en el taxi de otro. Acabas por conocer a sus hijos en algún momento y tienes que ingeniártelas para hallar algún modo de compensarle sin insultar su honor. Es agotador. A veces simplemente quieres tomar un taxi como en Manhattan.

Pero para tener un sistema de estilo estadounidense, en el que puedes salir, parar un taxi y ya está, tiene que haber todo un aparato de licencias, inspectores, comisiones, etc., lo cual está muy bien siempre que los taxis sean baratos y siempre que puedas llamar a uno. Cuando el sistema no funciona de alguna manera, resulta misterioso y enervante y convierte a personas habitualmente razonables en teóricos de la conspiración. Pero cuando el sistema egipcio se viene abajo, se viene abajo de forma transparente. No puedes tomar un taxi, pero aparecerá el sobrino del taxista, a pie, para explicarte el problema y disculparse.

Microsoft y Apple hacen las cosas al estilo de Manhattan, con una vasta complejidad oculta tras el muro de la interfaz. Linux hace las cosas al estilo de Egipto, con una vasta complejidad desperdigada por todo el paisaje. Si acabas de llegar de Manhattan, tu primer impulso será llevarte las manos a la cabeza diciendo: «¡Esto es de locos! ¿Por qué narices no os comportáis como es debido?» Pero esto no te granjearía más amigos en Linuxlandia que en Egipto.

Se puede extraer Linux del aire mismo, por así decir, descargando los archivos adecuados y poniéndolos en los lugares adecuados, pero posiblemente no más de unos pocos cientos de personas en el mundo podrían crear un sistema Linux funcional de ese modo. Lo que realmente se necesita es una distribución de Linux, lo cual quiere decir un conjunto pre-empaquetado de archivos. Pero las distribuciones son una cosa distinta de Linux
per se
.

Linux
per se
no es un conjunto específico de unos y ceros, sino una subcultura auto-organizada de la Red. El resultado final de sus elucubraciones colectivas es un vasto cuerpo de código fuente, casi todo escrito en C (el lenguaje de programación dominante). El código fuente es sencillamente un programa de ordenador escrito y editado por algún hacker. Si está en C, el nombre del archivo probablemente llevará .c o .cpp al final, dependiendo del dialecto empleado; si está en otro lenguaje llevará otro sufijo. A menudo, este tipo de archivos pueden encontrarse en un directorio con el nombre /src, que es la abreviatura hebraica del hacker para
source
, «fuente».

Los archivos fuente son inútiles para el ordenador, y de poco interés para la mayoría de usuarios, pero tienen una enorme significación cultural y política, porque Microsoft y Apple los mantienen en secreto, mientras que Linux los hace públicos. Son las joyas de la familia. Son el tipo de cosa que en los thrillers de Hollywood se usa como McGuffin: el núcleo de la bomba de plutonio, los planos de alto secreto, el maletín lleno de documentos financieros, el micro film. Si los archivos fuente de Windows o MacOS se hicieran públicos en la Red, esos sistemas operativos se volverían gratuitos, como Linux —sólo que no tan buenos, porque no habría nadie para arreglar los fallos y responder a las preguntas—. Linux es software de fuente abierta
24
, lo cual sencillamente quiere decir que cualquiera puede obtener copias de sus archivos de código fuente.

Un ordenador no necesita código fuente más de lo que lo necesita usted: necesita «código objeto». Los archivos de código objeto típicamente llevan el sufijo .o y son ilegibles para todo el mundo salvo unos pocos humanos altamente extraños, porque consisten en unos y ceros. En consecuencia, este tipo de archivo normalmente aparece en un directorio con el nombre /bin, por binario.

Los archivos fuente son sencillamente archivos de texto ASCII. ASCII denota un modo particular de codificar las letras en patrones de bits. En un archivo ASCII, cada carácter tiene ocho bits para él solito. Esto crea un alfabeto potencial de 256 caracteres distintos, dado que ocho dígitos binarios pueden formar ese número de patrones únicos. En la práctica, por supuesto, nos limitamos a las letras y dígitos familiares. Los patrones de bits empleados para representar esas letras y dígitos son los mismos que se introducían físicamente agujereando la cinta de papel de mi teletipo del instituto, que a su vez eran los mismos que había usado antes la industria telegráfica durante décadas. Los archivos de texto ASCII, en otras palabras, son telegramas, y como tales no tienen adornos tipográficos. Pero por eso mismo son eternos, porque el código nunca cambia, y universales, porque todo el software de edición y procesamiento de textos existente conoce este código.

Por tanto, se puede usar cualquier software para crear, editar o leer archivos de código fuente. Los archivos de código objeto, entonces, son creados a partir de estos archivos fuente por un software llamado
compilador
, y son convertidos en una aplicación funcional por otro software llamado
enlazador
.

La tríada de editor, compilador y enlazador, tomados juntos, constituye el núcleo de un sistema de desarrollo de software. Ahora es posible gastarse un montón de dinero en sistemas de desarrollo envueltos en plástico, con preciosas interfaces gráficas de usuario y diversas mejoras ergonómicas. En algunos casos puede que hasta resulte un modo bueno y razonable de gastar el dinero. Pero en este lado de la carretera, por así decir, el mejor software es a menudo el gratuito. Editor, compilador y enlazador son a los hackers lo que ponies, estribos y arcos y flechas eran a los mongoles. Los hackers viven a caballo, y hackean sus propias herramientas incluso mientras las usan para crear nuevas aplicaciones. Resulta bastante inconcebible que herramientas superiores de hacking pudieran haber sido creadas en una hoja en blanco por ingenieros informáticos. Incluso aunque fueran los ingenieros más inteligentes del mundo, se verían sencillamente superados.

En el mundo de GNU/Linux hay dos grandes programas de edición de textos: el minimalista vi (conocido en algunas implementaciones como elvis) y el maximalista emacs. Yo uso emacs, que puede considerarse un procesador de textos termonuclear. Fue creado por Richard Stallman, y con esto ya está todo dicho. Está escrito en LISP, que es el único lenguaje de ordenador que es hermoso. Es colosal, y sin embargo sólo edita archivos de texto ASCII, lo cual significa: nada de fuentes, nada de negrita, nada de subrayado. En otras palabras, las horas que dedicaron los ingenieros, en el caso de Windows, a cosas como la fusión de correo y la capacidad de incrustar películas de dos horas en memorandos de empresa, se dedicaron, en el caso de emacs, con intensidad maníaca al engañosamente simple problema de editar texto. Si eres un escritor profesional —esto es, si otra persona está siendo pagada para preocuparse de cómo se formatean e imprimen tus palabras— emacs hace sombra a cualquier otro software de edición más o menos del mismo modo que el sol de mediodía hace sombra a las estrellas. No sólo es mayor y más luminoso: sencillamente hace que todo lo demás se desvanezca. Para el formateo y la impresión de la página se puede usar T
E
X: un vasto corpus de ciencia tipográfica escrito en C y también disponible en la Red gratuitamente.
25

Podría decir un montón de cosas sobre emacs y T
E
X, pero ahora mismo trato de contar una historia acerca de cómo instalar de hecho Linux en el ordenador. El enfoque de pura supervivencia sería descargarse un editor como emacs y las herramientas GNU —el compilador y el enlazador– que son tan pulidas y elegantes como emacs. Equipado con esto, uno ya puede empezar a descargar archivos de código fuente ASCII (/src) y a compilarlos en archivos de código objeto binario (/bin) ejecutables por el ordenador. Pero para llegar siquiera a este punto —para ejecutar emacs, por ejemplo— hay que tener Linux instalado y funcionando en el ordenador. E incluso un sistema operativo mínimo de Linux requiere miles de archivos binarios actuando en concierto, dispuestos y vinculados para que lo hagan.

Por tanto, diversas entidades se han ocupado de crear distribuciones de Linux. Por extender algo más la analogía con Egipto, estas entidades se parecen algo a los guías turísticos que te reciben en el aeropuerto, hablan tu idioma y te ayudan con el shock cultural inicial. Si uno es egipcio, claro, se puede ver del otro modo; los guías turísticos existen para evitar que los brutos extranjeros se metan en las mezquitas haciendo las mismas preguntas una y otra y otra vez.
26

Algunos de estos guías turísticos son organizaciones comerciales, como Red Hat Software, fabricante de una distribución llamada Red Hat, que tiene un cierto aire comercial. En la mayoría de casos metes un CDROM de Red Hat en el PC, lo inicias y él solito maneja todo lo demás. Así como el guía turístico egipcio esperará algún tipo de compensación por sus servicios, hay que pagar por las distribuciones comerciales. En la mayoría de los casos no cuestan casi nada y merece la pena.

Yo uso una distribución llamada Debian
27
(la palabra es una contracción de «Deborah» e «Ian»), que es no-comercial. Está organizada (o más bien debiera decir «se ha organizado») siguiendo las mismas líneas que Linux en general, esto es, consiste en voluntarios que colaboran en la Red, cada uno responsable de cuidar de un pedazo distinto del sistema. Estas personas han dividido Linux en diversos paquetes, que son archivos comprimidos que pueden descargarse a un sistema Linux de Debian ya en funcionamiento, luego se abren y descomprimen usando una aplicación de instalación libre. Por supuesto, como tal, Debian no tiene rama comercial no tiene mecanismo de distribución. Se pueden descargar todos los paquetes de Debian por Internet, pero la mayoría de la gente prefiere tenerlos en CDROM. Diversas compañías se han ocupado de meter todos los actuales paquetes de Debian en CD-ROM y venderlos. Yo compré el mío de Linux Systems Labs. Un conjunto de tres discos, que contenía Debian completo, me costó menos de tres dólares. Pero (y esta es una distinción importante) ni un centavo de esos tres dólares va a parar a ninguno de los programadores que codificaron Linux, ni a los empaquetadores de Debian. Va a parar a Linux Systems Labs y no paga el software ni los paquetes, sino el coste de imprimir los CD-ROM.

Toda distribución de Linux encarna algún truco más o menos astuto para evitar el proceso normal de encendido y hacer que cuando el ordenador arranque se organice no como un PC ejecutando Windows, sino como un
host
28
que ejecuta Unix. Esto resulta algo alarmante la primera vez que se ve, pero es completamente inofensivo. Cuando se inicia un PC, lleva a cabo una pequeña autocomprobación de rutina, realizando un inventario de los discos y memoria disponibles, y luego empieza a buscar un disco desde el que arrancar. En cualquier ordenador Windows normal, ese disco será el disco duro. Pero si el sistema está bien configurado, primero buscará un disquete o un disco de CD-ROM, y arrancará a partir de uno de estos si están disponibles.

Linux explota esta rendija en las defensas. El ordenador percibe un disco de inicio en la disquetera o en la unidad de CD-ROM, carga el código objeto de ese disco y ciegamente empieza a ejecutarlo. Pero no es código de Microsoft o Apple, es código Linux, así que en este punto el ordenador se empieza a comportar de un modo muy distinto al acostumbrado. Empiezan a aparecer mensajes crípticos en pantalla. Si se hubiera iniciado desde un sistema operativo comercial, en este momento se vería un dibujito de «Bienvenido a MacOS», o una pantalla llena de nubes en el cielo azul y el logo de Windows. Pero con Linux aparece un largo telegrama impreso en crudas letras blancas en una pantalla negra. No hay ningún mensaje de bienvenida. La mayor parte del telegrama tiene el semiescrutable aire amenazante de los graffitis:

BOOK: En el principio fue la línea de comandos
9.28Mb size Format: txt, pdf, ePub
ads

Other books

The Drinking Den by Emile Zola
The Luck of Love by Serena Akeroyd
In the Wilderness by Sigrid Undset
Relinquished by K.A. Hunter
Next of Kin by John Boyne
Why Do I Have to Think Like a Man? by Shanae Hall, Rhonda Frost
Duskfall by Christopher B. Husberg
Blood Lake by Wishnia, Kenneth; Martínez, Liz
The Convenient Arrangement by Jo Ann Ferguson
Time Served by Julianna Keyes