Cuando aprendemos a leer y escribir no empezamos directamente con signos de puntuación, las reglas de uso de mayúsculas o la construcción de oraciones; pero cuando se enseña a programar a niños que no están familiarizados con simples conceptos de programación se espera que de una vez empiecen a superar todos los retos de la sintaxis de un lenguaje.
¿Por qué? Esta es la pregunta que se ha hecho Felienne Hermans, una científica holandesa que trabaja como profesora en el Instituto de informática avanzada de Leiden, y que ha creado un nuevo lenguaje de programación como propuesta para enseñar a escribir código de forma gradual.
Hedy: un lenguaje de programación gradual
La propuesta de Felienne es esta: utilizar un lenguaje de programación gradual que vaya incrementando la cantidad de elementos sintácticos por niveles. El nombre de ese lenguaje es Hedy, y está pensado para enseñar programación y Python de forma escalonada.
En el primer nivel, Hedy sólo ofrece la impresión de texto y la solicitud de entrada. Este nivel está destinado a introducir a los estudiantes en la idea de un lenguaje de programación, y del entorno. A partir de ahí, Hedy va subiendo niveles para incluir una sintaxis más compleja y conceptos adicionales.
Uno de los aspectos de la programación con los que los estudiantes a menudo luchan es la sintaxis de los lenguajes de programación: recordar los comandos correctos para usar y combinarlos en un programa funcional.
Hedy es una nueva forma de enseñar la sintaxis de un lenguaje de programación a los novatos, está inspirada en los métodos educativos con los que se enseña la puntuación a los niños.
Hedy comienza como un simple lenguaje de programación sin elementos sintácticos como los paréntesis, o la indentación. Las reglas cambian lenta y gradualmente hasta que los novatos pueden programar en Python.
Hedy es una propuesta con mucho potencial y especialmente interesante para iniciar a los niños en el mundo de la programación. El proyecto es open source y cualquiera puede comenzar a probarlo desde este enlace directamente en el navegador.