Logo, la tortuga que enseñaba a programar

Adelante 50. Izquierda 90. Adelante 30. Ya hemos dibujado una L al revés. Logo es un lenguaje de programación que nació como herramienta para enseñar a programar. Mediante sencillas órdenes, una tortuga virtual realizaba en pantalla dibujos vectoriales. Su legado permanece en forma de variantes y multitud de proyectos educativos.

Por – Feb 2, 2019 - 12:30 (CET)

Quienes peinamos canas nos las hemos visto y deseado con DOS y sus sucedáneos en las primeras aulas de informática que llegaban a colegios e institutos, en especial si no teníamos ordenador en casa. Entre las actividades más recordadas estaba Logo, un lenguaje de programación que dibujaba en pantalla a partir de sencillas órdenes como forward, backward, right, left o clearscreen.

Está claro que Logo no nos preparó para programar en Java, C o Python, pero sí fue una primera toma de contacto con lenguajes de programación. Había unas órdenes o comandos, el cursor o tortuga respondía a esas órdenes y cuando no te entendía te lo hacía saber y, finalmente, si lo hacías bien obtenías un resultado, que en el caso de Logo era un sencillo dibujo vectorial.

Logo se creó precisamente para acercar la programación a todos los públicos, algo que no era tan frecuente cuando nació pero que en la actualidad ha dado a pie a decenas de apps móviles, cursos, juegos y juguetes educativos que dan nociones de programación a niños y jóvenes de una manera más visual y divertida que el clásico Logo.

El lenguaje Logo se ideó para enseñar a programar mucho antes de los MOOC, cuando escribir código todavía no era un requisito para la mayoría de puestos de trabajo ni existía el concepto de startup. Incluso es anterior a los libros técnicos de O’Reilly, la colección de libros de autoayuda “For Dummies” y los cursos por correo. Sea como fuere, Logo tuvo muchas variantes, influyó en otros proyectos educativos y ha dejado un recuerdo imborrable gracias, en parte, a su tortuga.

Programando desde niños

El lenguaje de programación que conocemos como Logo nació en 1967. Concretamente lo idearon el matemático Seymour Papert, cofundador del Laboratorio de Inteligencia Artificial del MIT, junto a Wallace Feurzeig, investigador en inteligencia artificial y Cynthia Solomon, científica computacional especializada en inteligencia artificial y, además, divulgadora.

Si bien el desarrollo inicial de Logo se llevó a cabo bajo el auspicio de la empresa Bolt, Beranek and Newman (BBN Technologies), responsable en el futuro de proyectos como DARPA, Logo fue madurando principalmente dentro del MIT, el Instituto de Tecnología de Massachusetts.

Logo es básicamente un dialecto o derivado de Lisp, uno de los lenguajes de alto nivel más veteranos, nacido en 1958 y cuyo propósito es la notación matemática en programas informáticos. En el caso de Logo, la idea fue simplificar Lisp para aplicarlo en la enseñanza y aprovechar sus características, que lo hacían flexible, modular e interactivo.

Durante los años 70, Logo se implementó en escuelas locales de Estados Unidos y de varios países, e investigadores del MIT como la propia Cynthia Solomon, recopilaron impresiones e información sobre el acierto de enseñar programación con Logo y sus implicaciones en el aprendizaje.

Volviendo al presente, la idea que perseguía Logo está en boga en centros educativos y educadores actuales. La tendencia creciente es emplear la tecnología, y más concretamente la programación, para enseñar matemáticas, lógica y otras materias de una manera práctica y activa, como si de un juego se tratara, algo que en los años 70 era impensable.

El robot tortuga

Logo tuvo muy buena fama y se extendió por diferentes centros y entornos educativos durante los 80 y 90. Pero hasta nosotros ha llegado el lenguaje de programación, obviando que Logo como tal y su concepto de tortuga vienen del mundo físico, y más concretamente de la robótica.

La tortuga que veíamos en pantalla, que no era más que un tosco cursor y que en la actualidad ha sido sustituido por tortugas virtuales, era una representación de su versión real, o más bien física, una tortuga en forma de robot que se venía empleando desde finales de los 40.

Estas tortugas robot o robots tortuga fueron diseñadas inicialmente por William Grey Walter, especializado en robótica y cibernética, y su uso principal era realizar sencillas prácticas en ingeniería mecánica. Su aspecto recordaba a una tortuga porque a la placa base se le añadía una carcasa que recordaba al caparazón de una tortuga. En su interior, algunos contaban con sensores de movimiento.

Kit robótico Valiant Turtle. Fuente: GO Magazine.

Pues bien. El proyecto Logo de Papert, Feurzeig y Solomon constaba de dos partes, el lenguaje de programación, que podía emplearse de manera separada para dibujar en pantalla, y su versión física en forma de tortuga robot que respondía a las órdenes. Debajo de la tortuga había un mecanismo similar al de un bolígrafo que permitía dibujar sobre papel lo mismo que veíamos en la computadora.

Con los años se fueron creando diferentes modelos, algunos de ellos de gran tamaño y con diseñados más cercanos o más alejados de la imagen que tenemos de una tortuga. En cualquier caso, la primera tortuga robot asociada a Logo la creó Paul Wexelblat en BBN, la llamó Irving y constaba de sensores de colisión y una campana que sonaba cuando recibía una orden. Y una de las versiones más populares fue Valiant Turtle, comercializada entre 1983 y 2011.

Un lenguaje sencillo y prometedor

Como decía al principio de este artículo, Logo se ideó para ser fácil de aprender. Con unas pocas órdenes, como forward, right o left, acompañadas de la distancia numérica que queremos que recorra la tortuga, podíamos realizar trazos en pantalla creando figuras geométricas más o menos complejas.

Otras órdenes permitían variar la velocidad de movimiento, cambiar el color o grosor del trazo o dibujar un círculo con un radio concreto. Por otro lado, además de sus cualidades de dibujo, Logo también permitía realizar operaciones aritméticas o incluso extraer un número de una lista. Eso sin contar la posibilidad de encadenar órdenes, de manera que con un código concreto podíamos realizar un dibujo en un solo paso.

Su éxito fue tal que se crearon versiones de Logo para distintas plataformas, como el Apple Logo del Apple II Plus (1979) o el Atari Logo (1983), así como versiones más evolucionadas, como ObjectLOGO para dibujo orientado a objetos o Logo3D para dibujo tridimensional.

Uno de los padres de Logo, Seymour Papert, con un set de Lego Mindstorm. Fuente: MIT Media Lab

Y qué decir queda del binomio software y robot de juguete para que niños y jóvenes jueguen o aprendan programación o nociones básicas. Precisamente, el propio Seymour Papert colaboró en la creación de Lego Mindstorms, uno de los muchos kits educativos que existen hoy en día para todas las edades y que en la actualidad combinan un sencillo robot con una aplicación móvil.

Por otro lado, proyectos como Scratch son también herederos de Logo, pero con un estilo más visual acorde a los tiempos que corren. En los primeros años de Logo, la informática era textual, mientras que en la actualidad estamos más acostumbrados a entornos gráficos, ventanas y botones.

En la actualidad podemos seguir recordando el lenguaje Logo y trastear con él, ya que hay disponibles versiones para distintas plataformas e incluso emuladores online que podemos disfrutar desde el navegador, recordando los comandos aprendidos en el pasado o aprendiéndolos otra vez. Es más, la Logo Foundation sigue en activo, realizando eventos y workshops y promoviendo el uso de Logo y proyectos similares en el ámbito educativo.

Dínamo

Dínamo es el nuevo podcast de Hipertextual donde hablamos, discutimos, analizamos y nos obsesionamos con Apple.