Interfaz gráfica de usuario (GUI)
Interfaz Gráfica de Usuario (GUI) | |
|
Interfaz gráfica de usuario (GUI), acrónimo en inglés de Graphical User Interfase. La interfaz gráfica de usuario es un programa o entorno que gestiona la interacción con el usuario basándose en relaciones visuales como iconos, menús o un puntero.
Sumario
Breve historia de las GUIS
El origen de las GUIs se podría decir que tuvo lugar gracias a las teorías de Vannevar Bush. En el año 1945 publicó su ya famoso artículo “Como debemos pensar”, en el cual proponía una herramienta de información y administración: Memex. Dicho sistema permitía almacenar y hacerlos más accesibles, vinculándolos entre ellos.
Otro famoso pionero fue Ivan Sutherland, estudiante de Doctorado del MIT, que desarrolló en su tesis doctoral un programa llamado “Sketchpad” que permitía la manipulación directa de objetos gráficos en una pantalla CRT usando un lápiz óptico. Incluía la capacidad de acercar y alejar la imagen en la pantalla, el suministro de memoria para almacenar objetos y la habilidad de dibujar líneas y esquinas precisas en la pantalla.
Douglas Engelbart fue un brillante científico que, influenciado por las teorías de Vannevar Bush, trabajó en la investigación sobre la interacción Hombre-Máquina. Inventó el primer ratón, que usaría, posteriormente, en el NLS (ONLine System).
Se produjo un gran progreso en el centro Xerox de investigación de Palo Alto (PARC), centro que perseguía crear “la arquitectura de la información” y “la humanización de los ordenadores”. Entre muchos de sus inventos se puede destacar el desarrollo de la primera GUI, que debutó en el ordenador Alto.
Steve Jobs, el co-fundador de Apple, se interesó por las innovaciones de Star, sucesor de Alto, y decidió dotar a sus ordenadores de una GUI similar, aunque mejorada en muchos aspectos.
El Apple Macintosh, lanzado en 1984, fue el primer uso comercial exitoso de una GUI. Tuvo tanta relevancia que, desde entonces, casi todos los sistemas usan una GUI como interfaz con el usuario.
Microsoft anunció el desarrollo de su primer sistema operativo gráfico en 1983 pero la versión inicial (Windows 1.0) fue presentada dos años más tarde. Windows 2.0 (presentada en diciembre de 1987) representó una mejora sobre la anterior versión con la incorporación de iconos y ventanas superpuestas, pero no fue hasta 1995 con el lanzamiento de Windows 95 que Microsoft fue capaz de ofrecer una GUI con una calidad relativamente buena, aunque aún sigue sin estar a la altura de la ofrecida por Apple.
El pionero: On-Line System (NLS)
Douglas Engelbart
Nacido en 1925 en Oregón, Estados Unidos, es un inventor de descendencia noruega. Es conocido por inventar el ratón y como pionero de la interacción Hombre-Máquina; el equipo que lideraba desarrolló, entre otras cosas, el hipertexto, la red de ordenadores, y los precursores de las GUIs.
Engelbart recibió una amplia educación, licenciándose como ingeniero eléctrico en la Universidad del Estado de Oregón en 1948, como ingeniero en la de UC Berkeley en 1952 y se doctoró en la misma universidad en 1955.
Durante la Segunda Guerra Mundial estuvo destinado como técnico de radio, Engelbart se interesó enormemente por el artículo de Vannevar Bush “Como debemos pensar”. Después de obtener el doctorado empezó a trabajar en dispositivos lógicos magnéticos en el SRI (Stanford Research Institute.
Durante su época en el SRI fue el encargado del diseño y desarrollo del OnLine System (NLS). Él y su equipo desarrollaron elementos de interfaces de ordenadores como pantallas de mapas de bits, ventanas múltiples, groupware, hipertexto y los precursores de las GUIs.
En 1970 patentó el ratón de ordenador, descrito como “indicador de posición X-Y para un sistema de visualización", cuyo mecanismo consistía en una pequeña caja de madera con ruedas que movía el cursor en la pantalla a medida que se desplazaba en una superficie horizontal. Engelbart diseñó el ratón como una parte integral de una “interfaz de ventanas gráfica” e inventó lo que él llamó un “GUI con ventanas”, idea que entusiasmó a sus colegas pero que fue considerada poco útil fuera del laboratorio. Nunca recibió ganancias por su invento ya que la patente expiró en 1987, antes de que la revolución de los ordenadores personales hiciera indispensable su dispositivo.
Memex
En 1945 Vannevar Bush describió un computador analógico teórico llamado Memex en su artículo "Como debemos pensar" (El nombre del sistema era una abreviatura de "MEMory EXtender"). Bush lo describió como un dispositivo electrónico conectado a una biblioteca y era capaz de mostrar libros y películas de la biblioteca y seguir referencias cruzadas.
El Memex estaba pensado como una gran mesa donde se combinan microfilms con diversos dispositivos electrónicos, como cámaras y lectores. Aunque a veces se confunda, la tecnología del Memex no es la del hipertexto, tan solo inspiró a los creadores de este.
Además de lo anterior, el sistema también permitía hacer cosas mucho más interesantes, como crear nueva información con tan solo añadirla a los microfilms, lo que hizo que algunos consideren al Memex un precursor de los actuales PC. Hay que destacar que, pese a poder añadir información, Memex no era capaz de clasificarla, teniendo que hacerlo el mismo usuario.
NLS
Fundado por la NASA, ARPA, y la fuerza aérea americana, el NLS fue la primera GUI que empleó enlaces de hipertexto, ratón o un monitor. Ya en los años 60 aportó soluciones inteligentes como la presentación de la información a la manera de programas como el Microsoft PowerPoint, entre otras.
El sistema se desarrolló en torno al SDS 940, un ordenador de tiempo compartido con aproximadamente 96 MB de disco duro (Una más que considerable capacidad para aquellos tiempos). NLS permitía que los usuarios pudiesen introducir sus datos a través de tarjetas perforadas, si no podían tener acceso al teclado o ratón, aunque obviamente esta capacidad no era muy aprovechada. Esto derivó en el OLS (OffLine Service).
En lo que se denominó "la madre de todas las demostraciones", el NLS fue conectado desde San Francisco por teléfono con Menlo Park, California, de donde recibía los datos que procesaba. Algo realmente impresionante contando que hablamos de 1968.
El detonante de la caída del NLS fue la difícil curva de aprendizaje, algo lógico contando que ni siquiera tenía una interfaz de point-and-click. Tras la caída, muchos de los componentes del equipo se pasaron al laboratorio de Xerox para el desarrollo del PARC.
La aparición de Xerox Parc, Apple Lisa, Amiga, Windows...
Xerox PARC
Los trabajos de Engelbart llevaron directamente a los avances surgidos en Xerox PARC. En este nuevo sistema podía apreciarse un paradigma basado en ventanas, iconos, menús y cursores (WIMP), antes probado en el ordenador experimental Xerox Alto y que apareció comercialmente en el ordenador Xerox Star en 1981.
Apple Lisa
El Macintosh fue el primer ordenador comercial de éxito que disfrutó del uso de una GUI. Ya en 1984, usaron una metáfora de escritorio similar a la de Star. Las primeras versiones de Lisa no seguían exactamente el paradigma WIMP, pero futuras versiones se vieron aún más influenciadas por el prodigio de Xerox.
DESQview
Desqview fue el primer programa que acercó la multitarea al dos, permitiendo ejecutar varios programas concurrentemente en ventanas. Aunque no era realmente una GUI, pues basaba su funcionamiento en el texto, compartía con ellas ciertas ideas como poder cambiar el tamaño de las ventanas, la superposición de estas y el uso del ratón.
GEM
De forma paralela al desarrollo de Windows, Digital Research desarrolló el GEM. Creado originalmente como un sistema de ventanas para los IBM PC, tuvo curiosamente más éxito en las maquinas Atari ST.
Amiga Workbench
El ordenador Amiga fue lanzado por Commodore en 1985 con una GUI llamada Workbench. Los usuarios recuerdan las primeras versiones por su llamativa paleta de colores (azul, naranja, blanco y negro), seleccionada así por su alto contraste. Workbench se llamó así porque representaba los directorios como "cajones" de un escritorio virtual llamado banco de trabajo (Workbench en inglés). La librería que lo hacía funcionar recibió el nombre de Intuition.
Por un error del departamento de ventas, los primeros disquetes de Amiga (os) fueron etiquetados con el nombre de Workbench, por lo que todo el mundo pasó a llamar así al conjunto de aplicaciones y programas, hasta que se solucionó en la versión 2.0.
Los usuarios de Amiga también podían arrancar su ordenador en una interfaz de línea de comandos (CLI), para después lanzar Workbench si así lo deseaban.
AmigaWB
El uso de gráficos orientados a objetos cambió radicalmente la imagen de las GUI´s hasta la que se puede ver hoy en día. Avanzadas funciones gráficas como botones animados, iconos de 24 bits de color, fondos para pantallas y ventanas, transparencias y sombras; convirtieron al Workbench en una completa y moderna interfaz gráfica.
Windows
Windows 1.0 era una GUI para el sistema operativo MS-DOS, que había sido el sistema elegido por los ordenadores de IBM y compatibles desde 1981, pero no fue hasta la versión 3.0 presentada en 1990 que se hizo popular. Desde aquella época la GUI ha sido rediseñada en mayor o menor medida, aunque conservando una estructura similar desde Windows 95.
Geos
Surgió en 1986 como un sistema diseñado para el ordenador de 8 bits Commodore 64, aunque luego se portó al IBM PC. Traía aplicaciones como un calendario o un editor de textos incorporados de serie.
Risc OS
Llamado Arthur en sus primeras versiones, este GUI orientado a los procesadores ARM usaba una barra de tareas y un navegador de ficheros similar a los que tiene ahora el Mac OS. Fue lanzado por Acorn Computers a finales de los 80. Cabe destacar que aún existen actualmente evoluciones de este GUI en vigor.
NeXTSTEP
Se diseño para la línea de ordenadores NeXT, pudiéndose destacar que usaba, ya entonces, PostScript para sus gráficos. Su característica más destacable era el Dock, un repositorio donde poner aplicaciones, portado al Mac OS posteriormente. Fue la primera GUI que hacía opacas las ventanas al arrastrarlas. Era considerablemente más sencillo de usar que cualquiera de sus predecesores.
WPS
OS/2 fue un esfuerzo común de IBM y Microsoft por sustituir el DOS por un sistema equivalente con capacidad para la multitarea. Tras lo infructuoso del intento y la separación de las compañías, IBM desarrolló el Workplace Shell (WPS) para futuras versiones del sistema operativo. Cabe destacar que fue de las primeras GUIs desarrolladas con programación orientada a objetos
BeOS
Fue desarrollado en ordenadores de la gama Hobbit de AT&T como alternativa al Mac OS por un anterior directivo de Apple. Usaba un kernel orientado a objetos y, tras mucho esfuerzo, se consiguió hacer de él una eficiente plataforma para multimedia.
NeWS
Basado en un display de PostScript, este producto de Sun MicroSystems fue distribuido durante años en combinación con el X Windows System en sus máquinas. Aunque había quien lo definía como "técnicamente elegante", sus creadores decidieron dejar de producirlo.
X Windows System
Surgido del Mit, no era realmente una GUI, sino una interfaz para programarlas. Se distribuía con diferentes gestores de ventanas, en la foto se puede apreciar el Windows Maker corriendo sobre él. Es probablemente uno de los más exitosos desarrollos en lo que a GUIs se refiere, a juzgar por su uso actual y sus diferentes implementaciones/variantes.
Mac OS X
Con muchas ideas copiadas de NeXTSTEP, esta GUI es una de las actualmente más impresionantes de ver funcionando debido a sus diferentes efectos como el aladino o el exposé. Es actualmente la GUI con la que se distribuyen los ordenadores Macintosh, En la foto se puede apreciar con su tema Aqua.
Windows Vista
La próxima generación de sistema operativo de Microsoft contendrá una GUI significativamente diferente a las de las versiones anteriores. La nueva interfaz, llamada Aero, tendrá dos modos: Aero - en el que usará efectos de sombreado (comúnmente usados en juegos como Half-Life 2 y Doom 3 para efectos como los del agua) y alpha-transparencias para dibujar ventanas y darles un efecto cristalino. El otro modo, Basic, será equivalente a Luna de Windows XP. La interfaz más clásica de las versiones anteriores también está incluida. Esta será la primera versión del popular sistema que usará directamente la tarjeta gráfica para producir las imágenes.
Impacto de las GUIs en la sociedad
Tras la Segunda Guerra Mundial, Estados Unidos era el centro de la innovación tecnológica. En los 50 los ordenadores eran máquinas de gran tamaño y poco comunes, y sus usuarios especialistas altamente cualificados. Estos primeros ordenadores estaban equipados con interfaces numéricas de línea de comando.
Con el tiempo la tecnología fue evolucionando y el mercado con ella; se fueron incorporando ordenadores cada vez más pequeños a las grandes empresas junto con las innovaciones que se producían. Una de ellas fueron las GUI´s, que supusieron una mejora abismal con respecto a la interfaz de línea de comando en el hecho de que hacían las operaciones con ordenadores más intuitivas y más fáciles de aprender y usar, ya no era necesario ser un especialista. Este hecho supuso que cualquier persona podía usar un ordenador sin tener que tener grandes conocimientos o sin tener que aprender numerosos comandos difíciles de memorizar y con múltiples opciones cada uno.
Las grandes ventajas de las GUI´s respecto a las interfaces de línea de comando pronto se hicieron vigentes. Es mucho más fácil para un nuevo usuario mover, por ejemplo, un archivo de un directorio a otro arrastrando su icono con el ratón que teniendo que recordar y escribir "misteriosos" comandos. En este hecho se basa la idea de que una GUI deriva de la psicología cognitiva, el estudio de como el cerebro interactúa con la comunicación.
La idea es que el cerebro trabaja de forma más eficiente con iconos gráficos y displays que con palabras, las palabras añaden una capa extra de interpretación al proceso de comunicación. Por ejemplo, si todas las señales de tráfico que se ven en la carretera fueran rectángulos blancos uniformes, con solo palabras para diferenciar los diferentes avisos, restricciones, el procesado de las señales sería un proceso mucho mas lento y difícil y habría mas accidentes que con las señales actuales. Luego la idea de una directa manipulación de los objetos en una pantalla es esencial para el concepto de una buena interfaz gráfica.
Además de lo intuitivo de las operaciones está el hecho de que las GUI´s generalmente devuelven al usuario inmediatamente una reacción o efecto ante cada acción. Por ejemplo, cuando un usuario borra un icono que representa un archivo, el icono inmediatamente desaparece, confirmando que el archivo ha sido borrado (o enviado a la papelera). Esto contrasta con la situación para una interfaz de línea de comando (CLI), en la que el usuario escribe un comando para borrar (además del nombre del archivo para borrar) pero no recibe ningún efecto indicando que el archivo ha sido borrado.
Por otra parte, las GUI´s permiten a los usuarios obtener grandes ventajas de la poderosa multitarea. El resultado es un gran incremento en la flexibilidad del uso del ordenador y un consecuente aumento en la productividad.
Pero la GUI ha llegado a ser mucho más que una mera comodidad. También ha llegado a ser el estándar en la interacción hombre-máquina, y ha influenciado el trabajo de una generación de usuarios de ordenadores. Por otra parte ha llevado al desarrollo de nuevos tipos de aplicaciones e industrias.
A pesar de la gran comodidad de la GUI, los administradores de sistema y otros usuarios avanzados prefieren usar la CLI para diversas operaciones porque es, con frecuencia, más cómoda y generalmente más potente. En sistemas operativos basados en Unix, las GUI´s son de hecho envolturas atractivas y cómodas para los programas de línea de comando, y los usuarios confían en ellos para sus operaciones. Por otra parte, los buenos administradores reniegan de las GUIs debido a que introducen una considerable carga computacional no justificable en el sistema.
Uno de los grandes atractivos de los sistemas operativos basados en Unix es que ellos han mantenido sus capacidades de la CLI mientras continuaban mejorando sus GUI´s, permitiendo a los usuarios avanzados sacarle todo el provecho al ordenador a la vez que facilitaban las tareas a los principiantes y usuarios medios, de hecho, es en muchos casos preferible usar la CLI para algunas tareas. Por el contrario, las nuevas versiones de Microsoft Windows (como 2000 o XP) han ido eliminando más y más funcionalidades a sus CLIs.
Todo ello ayudó a que se produjera una paulatina incorporación de los ordenadores a la vida diaria de personas en todo el mundo, llegando a ser como lo es hoy en día un aparato común en la mayoría de hogares.
Conclusiones
Actualmente, y ya desde hace años, las interfaces gráficas de usuario están amplísimamente implantadas. Se podría decir que la totalidad de los ordenadores del mundo cuentan con alguna variedad instalada, así como otros tipos de aparatos: teléfonos móviles multimedia, PDAs...
En la actualidad, las interfaces más usadas son sin duda las de Microsoft Windows XP, KDE, Aqua y Gnome, esta última en menor medida. No parece que este reparto vaya a cambiar demasiado a corto plazo, ya que todas ellas son interfaces muy asentadas, pero con la previsible aparición de Microsoft Vista este 2006, el XP empezará a ser sustituido. Además, pero ya más lejos en el horizonte, aparecen Plasma para sustituir a KDE y Enlightenment como otro bastión importante en las interfaces de software libre. En cuanto al previsible futuro sustituto para el entorno Agua, no se puede saber a ciencia cierta cuando se realizarán las primeras demostraciones en público debido a la política de Apple de no dar noticias de ninguno de sus desarrollos hasta que ya está muy avanzado o terminado.
Lo que está claro es que esta nueva hornada de interfaces que está por llegar en los próximos meses o años no será esencialmente diferente de lo que conocemos hoy en día. Un cambio radical de concepción está aún bastante lejano en el tiempo, por lo menos para lo que son los estándares en informática, y además no se conoce ningún desarrollo serio que se esté llevando a cabo en ese sentido. Sin embargo, es de suponer que la evolución de las interfaces gráficas pase por la adopción de las tres dimensiones y de nuevos paradigmas, alejados ya de los tradicionales WYSIWYG y WIMP, que sin duda son buenas soluciones, pero no las mejores, y se podrían superar ampliamente. Sería muy interesante que la nueva generación de GUIs permitiese manipular la información de formas no ligadas a la realidad cotidiana, sino adaptadas a lo que es, algo mucho más abstracto. Así se podría pasar a un nuevo nivel de uso de las computadoras, haciendo previsiblemente más sencilla la manipulación de grandes cantidades de información y aumentando la productividad.