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

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

MEGÁFONO: Pero. . .

COMPRADOR: ¿Pero es que no ves que todo el mundo está comprando monovolúmenes?

Lanzador de bits

La conexión entre coches y modos de interactuar con los ordenadores no se me habría ocurrido en la época en que me llevaban de paseo en aquel descapotable. Me había apuntado a una clase de programación en el Instituto de Ames. Tras unas cuantas clases introductorias, nos dieron permiso a los estudiantes para entrar en una sala diminuta que contenía un teletipo, un teléfono y un módem anticuado consistente en una caja de metal con un par de cuencas de plástico encima (nota: muchos lectores, abriéndose camino a través de esta última oración, probablemente sintieron un retortijón inicial de temor de que este ensayo estuviera a punto de convertirse en una tediosa batallita sobre lo difícil que lo teníamos en los viejos tiempos; tranquilícense: lo que estoy haciendo, de hecho, es colocar mis piezas sobre el tablero de ajedrez, por así decirlo, preparándome para realizar una observación sobre temas realmente interesantes y actualizados como el software de fuente abierta. El teletipo era exactamente el mismo tipo de máquina que se había estado usando durante décadas para enviar y recibir telegramas. Se trataba básicamente de una máquina de escribir ruidosa que sólo podía generar LETRAS MAYÚSCULAS. Montada a un lado había una máquina más pequeña con un largo rollo de cinta de papel y una cesta de plástico transparente debajo.

Para conectar este dispositivo (que no era un ordenador en absoluto) con la Universidad Estatal de Iowa al otro lado de la ciudad, había que coger el teléfono, marcar el número del ordenador, esperar a que llegaran ruidos raros y entonces colocar el auricular en las cuencas de plástico. Si acertabas, una cuenca envolvía sus labios de neopreno en torno a la parte de la oreja y el otro en torno a la parte de la boca, consumando una especie de
sesenta y nueve
informacional. El teletipo se estremecía mientras era poseído por el espíritu del lejano ordenador, y empezaba a martillear mensajes crípticos.

Puesto que el tiempo de ordenador era un recurso escaso, usábamos una especie de técnica de procesamiento por lotes. Antes de marcar en el teléfono, conectábamos la perforadora de cinta (una máquina subsidiaria atornillada al costado del teletipo) y tecleábamos nuestros programas. Cada vez que pulsábamos una tecla, el teletipo imprimía una letra en el papel delante nuestro, de tal modo que pudiéramos leer lo que habíamos escrito; pero al mismo tiempo convertía la letra en un conjunto de ocho dígitos binarios, o bits, y perforaba un patrón correspondiente de agujeros a lo ancho de una cinta de papel. Los diminutos discos de papel salidos de la cinta caían en la cesta de plástico transparente, que lentamente se llenaba de lo que sólo puede describirse como bits reales. El último día del curso, el chico más listo de la clase (no yo) saltó desde detrás de su pupitre y lanzó varios kilos de estos bits por encima de la cabeza de nuestro profesor, como
confetti
, como una especie de broma semiafectuosa. La imagen de aquel hombre sentado allí, atenazado por las fases iniciales de una atávica reacción de lucha-o-huye, con millones de bits (megabytes) cayéndole por el pelo y metiéndosele por la nariz y la boca, el rostro poniéndosele morado a medida que se aproximaba a la explosión, es la escena más memorable de mi educación formal.

De cualquier modo, resultará obvio que mi interacción con el ordenador fue de una naturaleza extremadamente formal, que estaba dividida en diferentes fases, a saber: 1) sentado en casa con lápiz y papel, a kilómetros de distancia de cualquier ordenador, pensaba mucho acerca de lo que quería que hiciera el ordenador y traducía mis intenciones a un lenguaje informático —una serie de símbolos alfanuméricos sobre la página—; 2) llevaba esto a través de una especie de «cordón sanitario» informacional (cinco kilómetros a través de tormentas de nieve) hasta el colegio e introducía aquellas letras en una máquina —no un ordenador— que convertía los símbolos en números binarios y los registraba visiblemente en cinta; 3) entonces, mediante el módem de las cuencas de goma, enviaba aquellos números al ordenador de la universidad, que 4) hacía aritmética con ellos y devolvía números diferentes al teletipo; 5) el teletipo convertía estos números de nuevo en letras y los martilleaba en una página, y 6) yo, mirando, interpretaba las letras como símbolos significativos.

El reparto de responsabilidades que todo esto conlleva es admirablemente limpio: los ordenadores hacen aritmética con bits de información. Los humanos interpretan los bits como símbolos significativos. Pero está distinción está desdibujándose, o al menos complicándose, con la llegada de los sistemas operativos modernos que usan, y frecuentemente abusan, del poder de la metáfora para hacer los ordenadores disponibles para un público más amplio. Por el camino —posiblemente debido a estas metáforas, que hacen de un sistema operativo una especie de obra de arte— la gente empieza a ponerse emotiva y le toma cariño a fragmentos de software del mismo modo que el padre de mi amigo le tenía cariño a su descapotable.

Puede que la gente que sólo ha interactuado con un ordenador a través de interfaces gráficas de usuario como MacOS o Windows —es decir, casi cualquiera que haya usado un ordenador— le haya sorprendido, o al menos llamado la atención, lo de la máquina de telégrafos que yo usaba para comunicarme con un ordenador en 1973. Pero había, y hay, una buena razón para usar este tipo particular de tecnología. Los seres humanos disponen de formas diversas de comunicarse
entre sí
, como la música, el arte, la danza y las expresiones faciales, pero algunas de ellas son más susceptibles que otras para expresarse como cadenas de símbolos. El lenguaje escrito es la más fácil porque, por supuesto, ya consiste en cadenas de símbolos
para empezar
.

Si resulta que los símbolos pertenecen a un alfabeto fonético (y no son, por ejemplo, ideogramas), convertirlos en bits es un procedimiento trivial que se fijó tecnológicamente en el siglo XIX, con la introducción del código morse y de otras formas de telegrafía.

Teníamos una interfaz humano/ordenador cien años antes de tener ordenadores. Cuando se crearon los ordenadores en la época de la Segunda Guerra Mundial, los humanos, de modo natural, se comunicaron con ellos, injertándolos en tecnologías ya existentes para traducir letras a bits y viceversa: teletipos y máquinas de tarjetas perforadas.

Estas encarnaban dos enfoques fundamentalmente diferentes de la computación. Cuando se usaban tarjetas, se perforaba todo un taco y se pasaban por el lector a la vez, lo cual se llamaba «procesamiento por lotes». También se podía hacer procesamiento por lotes con un teletipo, como ya he descrito, usando el lector de cinta de papel, y ciertamente se nos animaba a adoptar este enfoque cuando yo estaba en el instituto. Pero —aunque se hacían esfuerzos por mantenernos ignorantes de esto— el teletipo podía hacer algo que el lector de tarjetas no podía. En el teletipo, una vez se establecía el vínculo con el módem, se podía introducir sólo una línea y pulsar la tecla de retorno. El teletipo enviaría entonces esa línea al ordenador, que podía responder o no con líneas propias, que el teletipo martillearía —produciendo, con el tiempo, una transcripción del intercambio mantenido con la máquina—. Este modo de hacerlo ni siquiera tenía nombre entonces, pero cuando, mucho más tarde, apareció una alternativa, se denominó retroactivamente la «Interfaz de Línea de Comandos».

Cuando fui a la universidad, usaba los ordenadores en grandes salas abarrotadas donde manadas de estudiantes se sentaban frente a versiones ligeramente actualizadas de las mismas máquinas y escribían programas informáticos; estos ordenadores usaban mecanismos de impresión por matrices de puntos, pero eran (desde el punto de vista de la máquina) idénticas a los antiguos teletipos. En aquel momento, los ordenadores compartían mejor el tiempo —es decir, los
mainframes
seguían siendo los
mainframes
, pero se comunicaban mejor con un gran número de terminales a la vez—. En consecuencia, ya no era necesario usar procesamiento por lotes. Los lectores de tarjetas fueron desterrados a pasillos y sótanos, y el procesamiento por lotes se convirtió en una cosa exclusiva de
nerds
13
, y en consecuencia adquirió un cierto tinte arcano incluso entre aquellos de nosotros que sabíamos siquiera que existía. Todos evitábamos ya los lotes, habiéndonos pasado a la línea de comandos: mi primer cambio de paradigma de sistema operativo, y yo sin enterarme.

Había una enorme pila de papel plegado en el suelo bajo cada uno de estos teletipos glorificados, y kilómetros de papel se estremecían mientras pasaban por sus rodillos. Casi todo este papel se tiraba o se reciclaba sin haber sido tocado jamás por la tinta, una atrocidad ecológica tan flagrante que aquellas máquinas pronto fueron reemplazadas por terminales de vídeo —los llamados «teletipos de vidrio», que eran más silenciosos y no desperdiciaban papel—. Sin embargo, desde el punto de vista del ordenador, estos también eran indistinguibles de las máquinas de teletipo de la Segunda Guerra Mundial. A todos los efectos, seguimos usando tecnología victoriana para comunicarnos con los ordenadores hasta cerca de 1984, cuando se introdujo el Macintosh con su Interfaz Gráfica de Usuario. Incluso después de eso, la línea de comandos siguió existiendo como estrato subyacente —una especie de reflejo medular— a muchos sistemas informáticos modernos durante la edad de oro de las Interfaces Gráficas de Usuario o GUI («Graphical User Interface»), como las llamaré de ahora en adelante.

Las Interfaces Gráficas de Usuario

Lo primero que tiene que hacer cualquier programador al escribir un nuevo fragmento de software es decidir cómo tomar la información con que está trabajando (en un programa gráfico, una imagen; en una hoja de cálculo, una tabla de números) y convertirla en una serie lineal de bytes. Estas cadenas de bytes se suelen denominar archivos o (de modo algo más a la última) flujos. Son a los telegramas lo que los humanos actuales son al hombre de Cromañón, lo que quiere decir la misma cosa con distinto nombre. Todo lo que se ve en la pantalla del ordenador —Tomb Raider, los correos electrónicos de voz digitalizada, los faxes y los documentos de procesador de textos escritos en treinta y siete tipos diferentes— sigue siendo, desde el punto de vista del ordenador, igual que telegramas, sólo que son mucho más largos, y requieren más aritmética.

El modo más rápido de apreciarlo es abriendo el navegador, visitando un sitio web y seleccionando la opción «Ver Código Fuente» en el menú. Se mostrará un código informático parecido a este:

HTML

HEAD

TITLEC R Y P T O N O M I C O N/TITLE

/HEAD

BODY BGCOLOR="#000000" LINK="#996600" ALINK="#FFFFFF"

VLINK="#663300"

MAP NAME="navtext"

AREA SHAPE=RECT HREF="praise.html" COORDS="0,37,84,55"

AREA SHAPE=RECT HREF="author.html" COORDS="0,59,137,75"

AREA SHAPE=RECT HREF="text.html" COORDS="0,81,101,96"

AREA SHAPE=RECT HREF="tour.html" COORDS="0,100,121,117"

AREA SHAPE=RECT HREF="order.html"

COORDS="0,122,143,138"

AREA SHAPE=RECT HREF="beginning.html"

COORDS="0,140,213,157"

/MAP

CENTER

TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0"

WIDTH="520"

TR

TD VALIGN=TOP ROWSPAN="5"

IMG SRC="images/spacer.gif" WIDTH="30" HEIGHT="1"

BORDER="0"

/TD

TD VALIGN=TOP COLSPAN="2"

IMG SRC="images/main_banner.gif" ALT="Cryptonomicon by

Neal Stephenson" WIDTH="479" HEIGHT="122" BORDER="0"

/TD

/TR

Esto se llama HTML (Lenguaje de Marcado de Hiper-Texto) y básicamente es un lenguaje de programación muy sencillo que le dice al navegador cómo dibujar una página en la pantalla. Cualquiera puede aprender HTML y mucha gente lo hace. Lo importante es que, por muchas espléndidas páginas multimedia que representen, los archivos de HTML son sólo telegramas.

Cuando Ronald Reagan era locutor de radio, solía informar de los partidos de béisbol leyendo las concisas descripciones que llegaban por el telégrafo y se imprimían en cinta de papel. Se sentaba solo en una habitación insonorizada con un micrófono y la cinta de papel salía de la máquina y le caía en la palma de la mano, cubierta de crípticas abreviaturas. Si el tanteo pasaba de tres a dos, Reagan describía la escena como se la imaginaba: «El fornido zurdo sale del puesto de bateo para secarse el sudor. El árbitro se adelanta para limpiar el polvo de la base», etc. Cuando el criptograma en la cinta de papel anunciaba un golpe en una base, Reagan golpeaba el borde de la mesa con un lápiz, creando un pequeño efecto sonoro y describía el arco de la pelota como si pudiera verlo de verdad. Sus oyentes, muchos de los cuales presumiblemente creían que Reagan estaba de hecho en el campo de juego viendo el partido, reconstruían la escena en su mente según sus descripciones.

Así es exactamente como funciona la WWW: los archivos HTML son la concisa descripción en la cinta de papel y el navegador es Ronald Reagan. Lo mismo vale para las interfaces gráficas en general.

De modo que un sistema operativo consiste en una pila de metáforas y abstracciones que media entre los telegramas y tú, encarnando diversos trucos que el programador usó para convertir la información con la que estás trabajando —ya sean imágenes, mensajes de correo electrónico, películas o documentos de procesador de textos— en las cadenas de bytes, que son lo único con lo que funcionan los ordenadores. Cuando usamos equipo telegráfico genuino (teletipos) o sus sustitutos de alta tecnología (teletipos de vidrio, o la línea de comandos de MS-DOS) para trabajar con nuestros ordenadores, estamos muy cerca de la base de esa pila. Cuando usamos la mayor parte de sistemas operativos modernos, sin embargo, nuestra interacción con la máquina se ve fuertemente mediada. Todo lo que hacemos es interpretado y traducido una y otra vez mientras se abre camino a través de todas las metáforas y abstracciones.

El sistema operativo de Macintosh fue una revolución en el buen y en el mal sentido de la palabra. Obviamente era cierto que las interfaces de línea de comandos (conocidas como CLI,
Command Line Interfaces
) no eran para todo el mundo, y que estaría bien hacer los ordenadores accesibles a un público menos técnico —si no por razones altruistas, siquiera porque este tipo de gente constituía un mercado incomparablemente mayor—. Está claro que los ingenieros de Mac vieron todo un país nuevo que se les abría; casi se les podía oír mascullar, «¡Caray! ¡Ya no tendremos que limitarnos más a los archivos como flujos lineales de bytes,
vive la révolution
, veamos lo lejos que llegamos con esto!» No había ninguna interfaz de línea de comandos disponible en el Macintosh; hablabas con la máquina a través del ratón, o no hablabas. Era una especie de declaración de principios, una credencial de pureza revolucionaria. Parecía que los diseñadores del Mac pretendían barrer las interfaces de línea de comandos a la papelera de la historia.

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

Other books

The Magnificent Rogue by Iris Johansen
The Big Hunt by J. T. Edson
Spin Control by Holly O'Dell
Maddie's Big Test by Louise Leblanc
A Treasure Deep by Alton Gansky
When Harry Met Sally by Nora Ephron
Darkness by Karen Robards
Warrior at Willow Lake by Mary Manners
A Jane Austen Encounter by Donna Fletcher Crow