En el principio fue la línea de comandos

por Neal Stephenson

Morlocks y Eloi al teclado

En los tiempos de la interfaz de línea de comandos, los usuarios eran todos morlocks que tenían que convertir sus pensamientos en símbolos alfanuméricos e introducirlos a mano, un proceso insufriblemente tediosos que eliminaba toda ambigüedad, revelaba todas las asunciones ocultas, y castigaba cruelmente la pereza y la imprecisión. Entonces los hacedores de interfaces se pusieron a trabajar en sus GUIs, e introdujeron una nueva capa semiótica entre la gente y las máquinas. Las personas que usan tales sistemas han renunciado a la responsabilidad, y al poder, de enviar bits directamente al chip que lleva a cabo la aritmética, y le han pasado esa responsabilidad y poder al sistema operativo. Esto resulta tentador por dar instrucciones claras a alguien o a algo es difícil. No podemos hacerlo sin pensar, y piensen en el número de ramificaciones, para hacerlo bien. Para la mayoría de nosotros, e! s duro. Queremos que las cosas sean más fáciles. La medida de cuánto lo queremos va dada por el grueso de la fortuna de Bill Gates.

El sistema operativo (por tanto) se ha convertido en una especie de instrumento para ahorrarse trabajo intelectual que traduce las intenciones vagamente expresadas de los humanos a bits. De hecho, les pedimos a nuestros ordenadores que tomen responsabilidades que siempre se han considerado propias de seres humanos - queremos que comprendan nuestros deseos, que prevean nuestras necesidades, que establezcan conexiones, que desempeñen tareas rutinarias sin necesidad de pedírselo, que nos recuerden lo que tendría que recordársenos a la vez que filtran el ruido. En los niveles más elevados (es decir, más próximos al usuario) esto tiene lugar mediante una serie de convenciones - menús, botones, etc. Estos funcionan en el sentido en que funcionan las analogías: ayudan a los eloi a comprender conceptos abstractos o poco familiares comparándolos con algo conocido. Pero se usa el término más pretencioso de metáfora.

El concepto que lo englobaba todo en MacOS era la metáfora del escritorio, que subsumía cierto número de metáforas menores (y a menudo contradictorias, o al menos mezcladas). Con un GUI, un archivo (frecuentemente llamado documento) se metafrasea como una ventana en pantalla (que se llama escritorio). La ventana siempre es demasiado pequeña para contener el documento, así que uno se mueve o, más pretenciosamente, navega por el documento pinchando y arrastrando con el dedo en la barra. Cuando se teclea (usando un teclado) o dibuja (usando un ratón) en la ventana o se usan menús desplegables y cuadros de diálogo para manipular sus contenidos, los resultados del trabajo de uno se almacenan (al menos en teoría) en ! un archivo, y luego la misma información se recupera en otra ventana. Cuando ya no se necesita, se arrastraa la papelera.

Hay una mezcla de metáforas pasmosamente promiscua aquí y podría deconstruirla hasta que las ranas criaran pelo, pero no lo haré. Consideren sólo una palabra: documento. Cuando documentamos algo en el mundo real, creamos registros fijos, permanentes e inmutables de ello. Pero los documentos de un ordenador son volátiles, efímeras constelaciones de datos. A veces (como cuando se abren o guardan), el documento que aparece en la ventana es idéntico al que está almacenado, bajo el mismo nombre, en un archivo de disco, pero otras veces (como cuando se hacen cambios sin guardarlos), es completamente diferente. En cualquier caso, cada vez que se pulsa Guardar, se aniquila la versión previa del documento, reemplazándola por loquequiera que aparezca en la ventana en ese momento. Así que incluso la palabra guardar se usa en un sentido que es grotescamente engañoso - destruir una versión, guardar otra, sería más exacto.

Cualquiera que use un procesador de textos durante mucho tiempo inevitablemente sufrirá la experiencia de echar horas de trabajo en un documento largo y luego perderlo porque el ordenador falla o se corta la luz. Hasta el momento en que desaparece de pantalla, el documento parece tan sólido y real como si estuviera impreso en papel y tinta. Pero un momento después, sin avisar, se ha esfumado, completa e irremediablemente, como si nunca hubiera existido. El usuario queda con una sensación de desorientación (por no hablar del cabreo) proveniente de un trasquilón metafórico - uno se da cuenta de que ha estado viviendo y pensando dentro de una metáfora que es esencialmente falsa.

Así que los GUIs usan metáforas para hacer que la informática resulte más fácil, pero son malas metáforas. Aprender a usarlas es esencialmente un juego de palabras, el proceso de aprender nuevas definiciones de palabras como ventana y documento y guardar, que son diferentes, y en muchos casos diametralmente opuestas a las antiguas. Por muy improbable que parezca, esto ha salido muy bien, al menos desde el punto de vista comercial, lo cual significa que Apple/Microsoft han hecho mucho dinero con ello. Todos los otros sistemas operativos modernos han aprendido que para ser aceptados por los usuarios han de ocultar sus entrañas bajo el mismo tipo de adornos. Esto tiene ciertas ventajas: si se sabe usar un sistema operativo de GUI, probablemente se puede deducir cómo! usar cualquier otro en pocos minutos. Todo funciona de modo algo distinto, como las cañerías europeas - pero enredando un poco, se puede escribir una nota y navegar por la red.

La mayor parte de la gente que compra sistemas operativos (si se molestan en comprarlo en absoluto) no comparan las funciones subyacente sino el aspecto y sensación superficiales. El comprador medio de un sistema operativo no paga realmente, y no le interesa especialmente, el código de bajo nivel que asigna memoria y escribe bytes en el disco. Lo que compramos realmente es un sistema de metáforas. Y - mucho más importante - a lo que nos vendemos es al presupuestos implícito de que las metáforas son un buen modo de tratar con el mundo.

Desde hace poco se ha vuelto disponible un montón de nuevo hardware que les proporciona a los ordenadores numerosos modos interesantes de afectar al mundo real: hacer que las impresoras escupan papel, dirigir rayos de radiación hacia enfermos de cáncer, crear películas realistas sobre el Titánic. Windows se usa ahora como sistema operativo para cajas registradoras y cajeros automáticos. El sistema de mi televisión por satélite emplea una especie de GUI para cambiar de canas y mostrar guías de programas. Los modernos teléfonos móviles llevan un crudo GUI metido en una diminuta pantalla. Incluso Lego tiene un GUI: se puede comprar un juego de Lego llamado Mindstorms que permite construir pequeños robots Lego y programarl! os mediante un GUI en el ordenador.

Así que ahora le pedimos al GUI que haga mucho más que servir de máquina escribir glorificada. Ahora queremos que se convierta en una herramienta general para tratar con la realidad. Esto ha hecho que las compañías que viven de sacar nueva tecnología al mercado de masas vivan una bonanza económica.

Obviamente, no se puede vender un complicado sistema tecnológica a la gente sin algún tipo de interfaz que les permita usarlo. La dinamo de combustión interna fue una maravilla tecnológica en su época, pero era inútil como bien de consumo hasta que le conectaron una palanca de cambios, transmisión, volante y frenos. Esa extraña colección de cacharros, que sobrevive hasta nuestros días en cada coche que surca las carreteras, constituye lo que hoy llamaríamos una interfaz de usuario. Pero si los coches se hubieran inventado después que los Macintosh, los fabricantes de coches no se habrían molestado en diseñar todos esos complicados dispositivos. Tendríamos una pantalla de ordenador por salpicadero, y un ratón (o como mucho un joystick) por volantes, y cambiaríamos de marchas desplegando un menú:

APARCAR --- MARCHA ATRÁS --- PUNTO MUERTO ---- 3 2 1 --- Ayuda...

Así, unas pocas líneas de código pueden sustituir cualquier interfaz mecánica imaginable. El problema es que en muchos casos el sustituto es defectuoso. Conducir un coche mediante un GUI sería una experiencia horrible. Incluso si el GUI estuviera totalmente libre de fallos, sería increíblemente peligroso, porque los menús y botones sencillamente no pueden responder tan bien como los controles mecánicos directos. El padre de mi amigo, el señor que restauraba el descapotable, nunca se habría tomado la molestia si hubiera ido equipado con un GUI. No habría sido divertido.

El volante y la palanca de cambios se inventaron en una era en la que la tecnología más complicada en la mayor parte de las casas era la batidora de mantequilla. Aquellos primeros fabricantes de coches tenían mucha suerte, ya que podían diseñar la interfaz que resultara más adecuada para la tarea de conducir un automóvil, y la gente la aprendía. Lo mismo sucedió con el teléfono de marcado y la radio AM. Ya en la Segunda Guerra Mundial, la mayor parte de la gente conocía varias interfaces: no sólo podían batir mantequillas, sino también conducir un coche, marcar en el teléfono, encender la radio, prender un mechero, y cambiar una bombilla.

Pero ahora cualquier cosita - relojes de pulsera, vídeos, hornillos - está lleno de propiedades, y cada propiedad es inútil sin interfaz. Si usted es como yo y como la mayoría de consumidores, nunca ha usado el noventa por ciento de las propiedades de su microondas, vídeo, o teléfono móvil. Ni siquiera sabe que estas propiedades existen. El pequeño beneficio que podrían aportarle queda anulado por la pura molestia de tener que aprenderlas. Esto debe de ser un gran problema para los fabricantes de bienes de consumo, porque no pueden competir sin ofrecer características.

Ya no es aceptable que los ingenieros inventen toda una nueva interfaz de usuario para cada nuevo producto, como hicieron en el caso del automóvil, en parte porque resulta demasiado caro y en parte porque hay un límite a lo que puede aprender la gente normal. Si el vídeo se hubiera inventado hace cien años, tendría una ruedecita para la sintonización y una palanca para avanzar y rebobinar, y una gran asa de hierro forjado para cargar o expulsar los cassettes. Llevaría un gran reloj analógico delante, y habría que ajustar la hora moviendo las manillas en la esfera. Pero debido a que el vídeo se inventó cuando se inventó - durante una especie de incómodo periodo de transición entre la era de las interfaces mecánicas y los GUIs - tiene sólo unos cuantos botones delante, y para fijar la hora hay que pulsar los botones de modo correcto. Esto le debe de haber parecido bastante razonable a los in! genieros responsable, pero para muchos usuarios es sencillamente imposible. De ahí el famoso 12:00 que parpadea en tantos vídeos. Los informáticos lo llaman el problema del doce parpadeante. Cuando hablan de ello, empero, no suelen estar hablando de vídeos.

Los vídeos modernos habitualmente tienen algún tipo de programación en pantalla, lo cual significa que se puede fijar la hora y controlar las demás propiedades mediante una especie de GUI primitivo. Los GUIs también tienen botones virtuales, claro, pero también tienen otros tipos de controles virtuales, como botones de radio, casillas que tachar, espacios para introducir textos, esferas, y barras. Las interfaces compuestas de estos elementos parecen ser mucho más fáciles para muchas personas que pulsar esos botoncitos en la máquina, y así el propio 12:00 parpadeante está desapareciendo lentamente de los salones de Estados Unidos. El problema del doce parpadeante ha pasado a otras tecnologías.

Así que el GUI ha pasado de ser una interfaz para ordenadores personales a convertirse en una especie de metainterfaz que se emplea en cualquier nueva tecnología de consumo. Raramente es idea, pero tener una interfaz ideal o incluso buena ya no es la prioridad; lo importante ahora es tener algún tipo de interfaz que los clientes usen realmente, de tal modo que los fabricantes puedan afirmar con toda seriedad que ofrecen nuevas posibilidades.

Queremos GUIs básicamente porque son convenientes y porque son fáciles - o al menos el GUI hace que así parezca. Por supuesta, nada es realmente fácil y simple, y poner una bonita interfaz no cambia ese hecho. Un coche controlado a través de un GUI sería más fácil de conducir que uno controlado por los pedales y el volante, pero sería increíblemente peligroso. Al usar GUIs todo el tiempo hemos aceptado sin darnos cuenta la premisa de que pocas personas aceptarían si se les planteara directamente: a saber, que las cosas difíciles pueden hacerse fáciles, y las complicadas pueden volverse simples, acoplándoles la interfaz adecuada. Para! comprender lo raro que es todo esto, imagínense que las críticas de libros se escribieran según el mismo sistema de valores que aplicamos a las interfaces de usuario: La escritura de este libro es maravillosamente simple; el autor pasa por encima de temas complicados y emplea generalizaciones ramplonas casi en cada oración. Los lectores rara vez tendrán que pensar, y se les ahorrará toda la dificultad y el tedio generalmente asociada con la lectura de libros anticuados. Mientras nos limitemos a operaciones sencillas como fijar la hora en nuestro vídeo, no es para tanto. Pero cuando tratamos de hacer cosas más ambiciosas con nuestra tecnología, inevitablemente nos topamos con el problema de:

Siguiente capítulo
Neal Stephenson: En el principio fue la línea de comandos