Volvemos con una nueva edición de Historia del Software, donde les contamos algo sobre los pormenores del nacimiento de algunos de los programas que más impacto tienen en nuestra vida diaria. Algunos de ellos han sido ciertamente olvidados, mientras que otros han pasado sin pena ni gloria. Sin embargo, algunos de ellos han dejado una marca tan distintiva en el mundo del software que cambiaron las reglas del juego. Uno de ellos ha sido, sin duda alguna, GUI, o Graphical User Interface.

Cuando usamos una computadora, no nos topamos con un código binario que muy pocos comprenden, sino que tenemos todo fácilmente preparado. No tenemos que lidiar con códigos, y nadie imaginaría a una de las numerosas ancianas que dicen que el iPad o la tecnología móvil le cambió la vida jugando con el código de esos programas. Todo eso se lo debemos a GUI, pues no siempre las cosas fueron así en el mundo de la computación. Los íconos, las interfaces, cambiaron la forma en que las personas se relacionaban con las computadoras, y se relacionaban entre ellos, y, por qué no, cambiaron completamente, sin vuelta atrás, la forma en que las personas se comunican diariamente. El proceso fue tan vertiginoso, que aunque solamente pasaron un par de décadas ya podemos estar hablando de una «historia del GUI».

La historia de la interfaz gráfica de usuario se puede rastrear a la década de 1930, cuando el visionario Vannevar Bush diseñó un artefacto llamado Memex. Este dispositivo tenía el aspecto de un escritorio, con dos pantallas táctiles gráficas, un teclado, y un escáner (seguramente un aparato grandísimo). La idea de Bush era que una persona pudiera acceder a todo el conocimiento humano a través de Memex, con tan sólo algunos clicks. Seguramente están pensando en Wikipedia en estos momentos, pero en sus días, las ideas de Bush fueron descartadas como algo descabellado, dado que la computadora digital aún no había sido inventada. La Segunda Guerra Mundial también agilizó el desarrollo de lo que podría ser una interfaz del usuario, pero sin embargo, recién a fines de los años ’40 un pionero desataría el trabajo que más tarde finalizó en GUI.

Douglas Englebart, un empleado de NACA (el instituto anterior a la NASA) tomó las ideas de Bush para imaginar una epifanía en la que un sistema de display organizado por tubos de rayos catódicos permitiría a los usuarios construir modelos de información gráficamente. La idea fundamental de Englebart era, en definitiva, aumentar el intelecto humano: así fue como nombró a su ensayo de 1962, Augmenting Human Intellect, una vez que logró que sus ideas fueran reconocidas y obtuvo algo de financiación para sus proyectos. Para Englebart, la computadora no era un reemplazo de la inteligencia de las personas, sino que era una forma de aumentarla exponencialmente. Y no estaba demasiado lejos de la verdad.

El trabajo de Englebart y su equipo derivó en un prototipo de computadora que tenía tres dispositivos de entrada: un teclado qwerty, otro teclado adicional con cinco teclas, y un rectángulo con tres botones que se conectaba con un cable a la computadora. Así es: un mouse. Pero esto no es lo único que le tenemos que agradecer a Englebart, dado que el ratón no fue nada más lo que proporcionó a la computación moderna: este mouse venía acompañado de toda una interfaz gráfica primitiva para permitir un mejor manejo del sistema. Eventualmente, el proyecto se detuvo cuando el instituto en el cual trabajaba Englebart cerró. Este, sin embargo, no es el fin de la historia.

La demostración de Englebart había sentado las bases para todo el trabajo del futuro. La computadora primitiva podía hacer cosas que hoy en día nos parecen naturales pero que en la década del ’70 parecían extraídas del más disparatado folletín futurista: hipertexto, edición de documentos, colaboración en tiempo real, correo electrónico, mensajería instantánea, y más. Con esto, el trabajo para los desarrolladores siguientes se hizo más fácil. Por eso, nos tenemos que mudar al campus de Xerox, o Palo Alto Research Center (PARC) donde podemos apuntar el nacimiento concreto de las interfaces gráficas de usuario.

En este campus podemos rastrear algunas de las invenciones de la computación moderna más importantes, como la impresiona láser, el Ethernet (fundamentalísimo), y, por supuesto, GUI. Los desarrolladores de Xerox PARC tenían cinco años para plantear y llevar a cabo proyectos que en ese tiempo hasta podrían ser considerados una locura, y verdaderamente lo lograron. En el caso de la interfaz gráfica de usuario, todo surgió de la necesidad de encontrar una computadora que pueda soportar las impresoras de Xerox. Esa computadora no existía en esos momentos, por eso el equipo decidió crearla: así nació Alto, una computadora que aunque se podía considerar pequeña, no lo era.

Alto contaba con un display del mismo tamaño que la hoja impresa, con una resolución de 606 por 808 píxeles. Cada píxel podía ser prendido y apagado de forma independiente, algo novedoso para la época, y el equipo contaba con una versión moderna del mouse de Englebart. El cursor se transformó en lo que hoy conocemos, la flecha, y podía transformarse en otras formas de acuerdo con la tarea realizada. Con la llegada de Alto, también llegó Smalltalk, un lenguaje de programación y ambiente de desarrollo fácil de comprender, orientado a los objetos, para que sea fácil su uso. Muchos de los conceptos actuales de la interfaz gráfica de usuario fueron tomados de Smalltalk.

Smalltalk nos trajo cosas que hoy conocemos como las ventanas y los pop-ups. Hablar de Smalltalk nos llevaría mucho tiempo, por lo que nos lo reservaremos para otra entrada. El siguiente paso en la historia de GUI también se remonta a PARC, con la llegada del sucesor del modelo Alto, la Xerox Star 8010 Document Processor. El aparatito costaba unos 17 mil dólares en su momento, pero por supuesto, la dinámica de la creación ya había seguido su curso, y en ese momento otro gigante de la computación estaba entrando en escena: Apple. En 1976, y después de múltiples visitas a la planta de PARC gracias a un acuerdo con Xerox, los desarrolladores de Apple Computer se fijaron como meta crear un éxito comercial basándose en las fórmulas científicas del Alto y de Smalltalk.

El primer intento fue Lisa, una computadora gráfica que requirió mucho trabajo. Los desarrolladores de Lisa eligieron un diseño de interfaz basado en íconos que representaban un documento o un programa, con una barra de menú. También inventaron los shortcuts de teclado, las tildes para marcar documentos, y más. Este sería el comienzo de un largo camino en la computación personal, que día a día adquiere más mejoras e innovaciones. Lisa fue lanzada en 1983, después de cinco años de trabajo, y costaba menos de 3 mil dólares. Un avance importante. Durante los años ’80, más interfaces gráficas de usuario surgirían como GEM y Windows 1.0. El inicio ya estaba marcado.