Acto 1: Estás en tu trabajo/colegio haciendo cualquier cosa que no sea estar en una planilla de Excel o en un documento de Word (pr0n any1?).
Acto 2: Tu jefe se acerca a tu escritorio más rápido que caballo de carrera y piensas «Uh! Viene mi jefe. ¿Qué hago? Ah! Ya sé. Tengo que minimizar.«, en un acto reflejo mueves el mouse a la esquina superior izquierda de tu pantalla y haces un preciso click en ese ícono con un guión bajo.
Acto 3: El jefe asoma sus intrusos ojos en tu monitor y ve que estás relizando un arduo trabajo con la contabilidad de la empresa, sonríe, te da unas palmotadas en el hombro, se da media vuelta y se va.
Las GUI (Graphical User Interface, o Interfaz Gráfica de Usuario) nacieron más que por un lujo, por una necesidad esencial del mundo de la computación. En la antiguedad era una idea recurrente el tratar de acercar esas máquinas que ocupaban piezas enteras a la gente común y corriente, ya que no todo el mundo era un nerd científico de bata blanca con conocimientos avanzados de programación con tarjetas perforadas. De hecho, la definición que hay en la Wikipedia es la siguiente:
Una Interfaz Gráfica de Usuario es un tipo de interfaz de usuario que le permite a la gente interactuar con dispositivos electrónicos tales como computadores, Reproductores de MP3, Reproductores de Media Portables y Dispositivos de juego, aplicaciones hogareñas y equipamiento de oficina, con imágenes más que con comandos.
Imágenes más que comandos, frase clave. Porque si nos situamos frente a un PC de la década de los ’70, tenemos alrededor de un 90-95% de posibilidades que al encenderlo nos muestre un interpréte de comandos (como el BASIC de sus Ataris 800XL, ¿se acuerdan?). Entonces era obviamente comprensible que existiera gente que creyera que había que simplificar la interacción usuario/máquina para acercar los PCs a la gente común y corriente, que no tenía conocimientos avanzados en lenguaje de máquina o BASIC.
Una de las personas que sintió esta necesidad fue Douglas Engelbart quien junto a su equipo del Stanford Research Institute, desarrolló algo así como una GUI —algo así porque si bien no era una propiamente tal, era el primer bosquejo— basada en hiperenlaces, bastante parecido a un sitio web. Que ironía, siendo que 30 años después todos están hablando del Cloud Computing y sistemas operativos basados en aplicaciones web.
Luego de notar el tremendo cheque a fecha que tenían delante, en Xerox contrataron a todo el equipo de Engelbart, desarrollando la PARC User Interface, que más allá de ser una GUI, introdujo por primera vez la denominada «metáfora de escritorio», que se conserva hasta el día de hoy, tratando a objetos de la informática, como un monitor, con el nombre de su par en una oficina, un escritorio. Toda esta tecnología si bien se aplicó en el Xerox Alto, nunca vio las vitrinas de las tiendas.
Todos tuvimos que esperar a un señor que decidiera instaurar esta tecnología en sus PCs y luego comercializarlos. Un señor llamado Steve Jobs.
Lisa, Lisa, Lisa…
Digan lo que digan de lo loco, estresado, maníatico, sicopático, narcisista, etc que era Steve Jobs, si hay algo de lo que podemos estar seguros, es que cambió la forma de como la gente mira los computadores con la introducción del Apple Lisa y Macintosh.
Como dice la leyenda de la imagen, esa era la GUI que ocupaba el Apple Macintosh. Que más allá de que sea monocromática, se parece bastante a una de hoy en día, aunque obviamente con menos eye-candy. En la teoría, mucha gente se sigue preguntando cuanta influencia produjeron los avances de Xerox en el desarrollo de la GUI de Apple, ya que en varias ocasiones Apple fue invitada a los laboratorios de Xerox para ver como progresaban las investigaciones, y además, varios empleados de Engelbart migraron a la compañía de la —en ese entonces— multicolor manzanita. Aunque, no hay duda alguna de que la interfaz del Macintosh es mucho más que un grupo de hiperenlaces.
El siguiente gran paso en el planeta de las interfaces lo dió Microsoft, con la aparición de su primera interface gráfica que operaba encima del interprete de comandos MS-DOS: Windows 1.0 (1985), el mítico primer Windows, lanzando una interfaz de una profundidad de colores de 16-bit. Esta GUI finalmente desencadenó en la que ocupó el famoso Windows 3.11, que permitió ventanas a pantalla completa, cambiar las ventanas activas con el mouse y la instauración de la combinación Alt+Tab.
Pero no todo el mundo ocupaba Macintosh o Windows. También existía Unix, y este no se queda atrás. Porque las GUIs ya no eran opcionales: si se quería llegar a los cada vez más usuarios «familiares», necesitabas una. Es por eso que a mediados de los ’80 se lanza el X Window System, desarrollado íntegramente en el MIT. Dentro de las principales ventajas del XWS estaban que actúaba con un servidor y un terminal, con la posibilidad de tener el entorno gráfico de un PC en otro de la misma red. El XWS se mantiene como estándar hoy en día en la mayoría de los SOs basados en Unix.
¿Ahora qué?
Hubiera sido muy aburrido que la historia de las Interfaces Gráficas de Usuario terminara ahí. Así que sigamos. Paralelamente a la comercialización de estas 3 GUIs se desarrollaron bastantes proyectos de compañías independientes, como el Graphical Environment Manager —que protagonizó una de las primeras batallas legales por semejanzas al look & feel del Macintosh y Lisa— desarrollado por Digital Research, la GUI del computador Amiga lanzado por Commodore, el NeWS creado por Sun Microsystems y muchos otros basados en MS-DOS.
Pero como nos encanta hacer metáforas, aquí ocurrió algo similar a la Selección Natural de Darwin, y solamente 3 GUI reinaron: La de Apple, la desarrollada por Microsoft y el X Windows System.
El XWS tuvo un principio muy distinto a como terminó. Al principio, Sun Microsystems y AT&T trataron de estandarizar el sistema, asunto que no prosperó. Pero gracias al boom del software libre a fines de los ’90, la comunidad logró desarrollar los actuales porta-estandartes de las GUIs en sistemas Unix: Gnome, KDE y XFCE. Y si antes SOs basados en Unix eran considerados poco amigables, con la aparición de herramientas como Compiz Fusion hoy están a la par o superan en usabilidad a las alternativas más populares.
Después de Windows 3.11, Microsoft quizo desarrollar algo totalmente nuevo, pero conservando compatibilidad. Es con ese concepto, además de crear productos orientados al consumidor, que los chicos de Redmond crearon Windows 95. Además de ser uno de los SO más exitosos de la historia, Windows 95 incorporó una GUI que marcó las bases de las interfaces de Windows, instaurando entre muchas cosas, la famosa barra de inicio.
Luego vino Windows 98, que incorporó el odiado famoso Active Desktop, que en realidad la mayoría de los usuarios desactivaba pero que puso en la mesa el concepto de personalización del escritorio. Después de Windows 95, la siguiente enchulada que sufrió la GUI de Windows (pasando por XP que fue un perfeccionamiento tanto en usabilidad como en visualidad de Windows 95-98) fue con su criticado Windows Vista y la inclusión de la tecnología Aero, el que otorga una gran cantidad de efectos inútiles, como ventanas transparentes, y que se ha desarrollado con profundidad en el próximo a salir a la venta Windows 7.
Y por último, pero no por eso menos importante —de hecho, según mis gustos, la GUI por defecto más sexy de todas— tenemos a Apple. Por si no sabes, durante el tiempo que Jobs estuvo fuera de Apple, este creó una compañía llamada NeXTStep, la cual tiempo después fue absorbida por la compañía de la manzanita.
Es entonces cuando en 2001 Apple se reformula y lanza Mac OS X, junto a su nueva GUI denominada Aqua. La nueva interfaz juntaba características, tanto de Apple (como la de menú superior único para todas las aplicaciones), así como también de NeXTStep (como el Dock). Los computadores ensamblados por Apple se convirtieron en un éxito, y actualmente lo que viene dentro de la próxima a aparecer sexta versión de OS X (Snow Leopard) es una versión depurada del Aqua inicial.
Si comparamos el panorama actual, con el que teníamos hace 30-25 años, podemos apreciar 1 gran diferencia: Al principio las interfaces gráficas surgieron por una necesidad, la necesidad de hacer el manejo de los PCs mucho más sencillo (que no requiriera conocimientos «técnicos»), mientras que en el panorama actual, los avances pareciera que se concentran más en el eye candy que se puede otorgar que en mejorar la usabilidad aún más (el paradigma inicial de «metáfora de escritorio» sigue siendo el mismo y no tiene pinta de que lo vayan a cambiar). Algunos prototipos de GUI incorporan elementos novedosos, como tridimensionalidad real y físicas de «mundo real» aplicadas a los objetos en el escritorio, como pueden ver en el siguiente video:
El paradigma del escritorio «real» llevado al extremo.