Wolfram Rösler es el creador de  The Hello World Collection. Nació en 1968 en Aquisgrán, Alemania, y empezó a programar desde los trece años. Tras estudiar informática, trabajó desarrollando softwares y diseñando sistemas de las plataformas Unix y Windows para grandes industrias. Actualmente es el jefe de programación de una gran empresa de procesamiento de datos y de sistemas de reportes. Sus intereses, no relacionados con la informática, van desde las matemáticas, a la física cuántica; desde las artes marciales, a la juguetería. Wolfram está casado y tiene un hijo de diez años. Es el creador de esta peculiar colección. Hello World son palabras que se escriben habitualmente para que aparezcan en las pantallas del ordenador, un “hola, mundo” que sirve para verificar que un lenguaje informático determinado está funcionando correctamente.

 

Wolfram Rösler on his bike

Wolfram Rösler en moto

 

  • Hola Wolfram, trabajas programando desde hace más de treinta años, nos gustaría saber cómo iniciaste y que nos contases cuál crees que es la clave de la programación.

Desde que vi un ordenador por primera vez, cuando era un niño, supe que sería programador. Ya viendo la imagen de un VC20 publicada en una revista y posteriormente, cuando por fin vi uno real en una tienda, un T199-4A. La atracción viene porque este tipo de máquinas no hacen casi nada por sí solas (los llamados home computer de los 80, incluso más que los dispositivos modernos), pero tienen en cambio un gran potencial. Su límite está sólo en la imaginación del programador. Todo lo que tienes que hacer para que estos lleven a cabo lo  que tienes en mente es simplemente apretar la tecla en el orden correcto (recuerda los viejos ordenadores tenían un teclado y un lenguaje de programación built in). Y es que para hacer una mesa de madera hace falta mucha habilidad, pero para hacer que un programa informático funcione, sólo necesitas imaginación. Es más o menos como escribir “que se haga la luz”, y la luz se hace si lo has digitado en el modo correcto. Aún hoy me sigue fascinando del mismo modo, aunque mi trabajo cotidiano ya no se centre en la codificación. Me sigo entusiasmando cuando hago funcionar por primera vez un programa nuevo y lo veo hacer cosas que hasta ahora sólo estaban en mi mente.

 

Il Commodore VC 20

VC 20

  • ¿Cuál es la historia de The Hello World Collection? ¿Cómo surge y cómo evoluciona? ¿Es aún una colección abierta?

En el año 1994 me di cuenta que sabía bastante sobre lenguajes de programación, suficiente como para poder escribir un programa Hello Word con cada uno de ellos. Algunos eran muy divertidos, por lo que decidí meter cada programa dentro de un archivo y crear un pequeño shell script que coleccionase todos estos programas en una única lista, la cual fue la primera versión de la colección. En esta época yo estaba bastante activo en MausNet, de hecho colgué allí dicha lista, obteniendo así las primeras aportaciones de otros usuarios. La versión más antigua de la colección es de 1996, aún se conserva en los archivos Usenet de Google,  aquí. Desde 1999 la colección ya ocupa su ubicación actual y ha ido creciendo gracias a las aportaciones de muchos usuarios superándose las 400 lenguas en el 2008. La última actualización fue en 2010 y desde entonces, desafortunadamente, no he tenido tiempo de comprobar y añadir nuevos lenguajes.

 

Un programma Hello World su un terminale

Un programa Hello World en una terminal AT&T

  •  ¿Por qué has preferido llamarlo colección y no archivo?

Un archivo es un lugar donde se almacenan cosas que ya no se usan, al menos que alguien esté interesado, lo cual nunca sucede. Una colección es algo vivo, ordenado y organizado para que todos la puedan ver. Además, una colección nunca se completa definitivamente.

  • ¿Crees que el hecho de haber creado una colección electrónica ha cambiado la idea tradicional de colección, que hasta ahora se refería únicamente a objetos materiales?

Si. El formato electrónico facilita el transporte de una colección. Cuando era pequeño coleccionaba calculadoras portátiles, pero muchas de ellas se perdieron por falta de espacio y por la humedad que había en nuestro trastero. The Hello Word Collection ya se ha copiado en webs y blogs tantas veces que es casi imposible que se pueda perder. Me gusta el mundo de lo digital, la idea de vivir sin papel, con lo que una colección digital encaja conmigo perfectamente. Los coleccionistas tradicionales probablemente quieren coleccionar objetos que pertenecen al mundo real, que adquieren valor por su rareza, un concepto que en lo digital casi no subsiste. Si Leonardo Da Vinci hubiese pintado La Mona Lisa con Photoshop y colgado en su blog con un formato .jpg, probablemente habría tenido mucha menos atención.

  • En otras ocasiones has declarado, a propósito de The Hello Word Collection, que se trata de la única colección de programas Hello Word que incluye las lenguas humanas. ¿Porqué esta elección y cómo llegas hasta ella? ¿Qué tipo de relación crees que hay entre una lengua humana y un lenguaje de programación?

No recuerdo bien cuando se me ocurrió añadir una sección en la colección dedicada a las lenguas humanas, pero sé que fue la misma razón por la que añadí los lenguajes de programación. Me di cuenta que conocía algunas lenguas y empecé. De cualquier manera, la sección Human Languages se llamó Natural en un principio. Actualmente, muchos lenguajes de programación usan la misma lengua humana como base, por ejemplo el C Programming Language tiene palabras clave en inglés como return, while o double, que son palabras mnemotécnicas que sirven al programador en cuestión a aprender las palabras clave. Otros lenguajes de programación trabajan en cambio sin palabras clave, consisten en símbolos únicamente. Es aquí donde más o menos, acaba la relación. De la misma manera los lenguajes de programación tienen un vocabulario, una gramática, una sintaxis y semántica propia, son muy lógicos, están definidos con precisión y no aceptan variaciones, interpretaciones o connotaciones. Es por esto que las personas con autismo aman los lenguajes informáticos, pues no son capaces de comprender el lenguaje corporal ni aquellos pequeños detalles que pueden cambiar profundamente el significado de lo que se quiere comunicar con la lengua hablada. De hecho, la definición perfecta de los lenguajes de programación es cercana a su particular modo de comunicación.

  • ¿Puedes contarnos la primera vez que lanzaste un programa Hello Word? ¿Has creado alguna vez un programa para probarlo en Hello Word?

En el año 1981 escribí en mi primer ordenador, un  Atari 400, el primer programa, era algo así:

10 PRINT “HELLO”

20 GOTO 10

RUN

Creo que podría considerarse como el primer programa Hello Word :). Años después, leí en el libro The C Programming Language de Kernigan y Ritchies el programa Hello Word original. Creo que es de ahí de donde surgió la idea, tal y como ha hecho el resto del mundo. Nunca he desarrollado un lenguaje de programación por mi cuenta, sin considerar prototipos. Por ejemplo, recuerdo que una vez implementé algún pseudo-Assembler/-Interpreter con la intención de escribir un programa que se enfrentase a otro en un campo de batalla de memorias de ordenador simulado. Pero este programa no tenía la función output para textos. De cualquier manera, la colección tiene algo de lo que llamamos easter egg, o huevo de pascua virtual, es un programa dirigido a un contexto creado por mi mismo con la intención de hacerlo funcionar dentro de una gran aplicación de reportes que yo mismo he escrito.

  • ¿Consideras que el éxito y la difusión del Hola mundo! le ha dado una connotación mística?

Nada de lo que conozco del campo de la programación tiene para mi un valor místico.

 

Il linguaggio di programmazione C di Kernighan and Ritchie nella versione spagnola (prima edizione)

Brian W. Kernighan y Dennis Ritchie, El lenguaje de programación (primera edición)

DOWNLOAD #3
ROSETTA STONE