Qué lenguaje o herramientas de programación deberían enseñarse a los niños según su edad

Baby Coding Flickr

Hasta hace no mucho lo habitual era que la programación fuese un campo restringido al sector más profesional, pero esto ha cambiado. Iniciativas como Code.org o la promovida por la Comisión Europea han llegado para cambiar el panorama. Y vaya de qué manera.
Por aquí hemos repasado en más de una ocasión la importancia de la programación. Por ejemplo en Cómo iniciar a un niño a la programación, o también en consejos y recursos para iniciarse en programación en verano, entre otros. Y hoy atacamos desde otro frente: ¿qué lenguajes o herramientas de programación deberían enseñarse a los niños según su edad?
El enfoque lo vamos a tratar según franjas de edades, que corresponden con las diferentes etapas del sistema educativo español. Aunque a muchos les sorprenda se puede enseñar programación desde Infantil —en Reino Unido lo hacen a partir de los 5 años—, siempre con objetivos específicos para rango y con las herramientas adecuadas.

En infantil (3-6 años)

Las capacidades lectoescritoras empiezan a formarse en infantil, con lo que las herramientas a utilizar no estarán vinculadas a elementos visuales. Olvida cualquier lenguaje tradicional, e incluso aquellos gráficos —tipo el Scratch del MIT— también se quedan demasiado grandes.
En esta edad el objetivo no es que los chavales creen su propio código, sino introducirles en el mundo de la programación a través de juegos y con la diversión como bandera. Es algo más cercano al pensamiento computacional que a la programación como tal.

El juego del robot

De hecho, lo habitual es irse al extremo de no necesitar siquiera un ordenador o tablet, planteando así juegos con los chavales y utilizando recursos físicos como por ejemplo tarjetas con instrucciones. Un ejercicio ideal es ponerles a los mandos de un robot que deberá partir de un origen y llegar a un determinado destino físico; por ejemplo, desde una habitación hasta la cocina.
Robot Flickr
Tendremos un conjunto de tarjetas preparadas previamente con las órdenes básicas del robot: mover un paso hacia adelante y girar, a la izquierda y también a la derecha. El niño/a deberá ir eligiendo las tarjetas, combinándolas para alcanzar el objetivo planteado inicialmente.
Éste es sólo un ejemplo de juego que puede practicarse en esta franja de edad, y aunque hay otros la realidad es que las opciones son bastante limitadas y en todas ellas necesitarás servir de guía, ayudándoles en todo lo que sea necesario.

Scratch Jr.

El hermano pequeño de Scratch se llama Scratch Jr., una app disponible en iOS y Android que puede ser un interesante punto de partida. Aquí ya necesitaremos que el chaval tenga unas ciertas capacidades, así como por supuesto que sepa manejar con cierta soltura un tablet para moverse por la interfaz.


Scratch Jr. está diseñado para edades entre 5 y 7 años y se basa en la programación con bloques. Es muy sencillo y su potencial es limitado, aunque suficiente para estas edades, siendo gratuito. A mayores, el equipo de desarrollo tiene publicados unas cuantas ideas que pueden servir como una guía genial para dar los primeros pasos.

En el primer ciclo de primaria (7-9)

Es a partir de los 7 años cuando la lectoescritura ya está afianzada en la mayoría de los casos, y por tanto se abre la puerta a utilizar herramientas mucho más potentes. A partir de los 7 años podemos utilizar la programación para promover varias de las inteligencias múltiples, principalmente la lingüística, la lógico-matemática y la espacial.
Aquí el objetivo marcado es comenzar a dar libertad a los chavales, inicialmente con una guía mientras aprenden a utilizar la herramienta, y más tarde cediéndoles el protagonismo a ellos.

Code.org

Ya hemos mencionado en más de una ocasión por aquí que Code.org es una excelente introducción a la programación debido a sus múltiples tutoriales, paso a paso y muy sencillos de seguir y completar. Una vez los terminen, habrán aprendido algunos de los conceptos básicos que luego podrán utilizar en otros lenguajes de los que hablaremos más adelante.

Code Studio Def

En Code.org hay muchos tutoriales disponibles, preparados para diferentes rangos de edades, y que pueden seguirse a la perfección en un orden de menor a mayor dificultad. También son especialmente interesantes los tutoriales temáticos, basados en juegos o películas como Star Wars, Minecraft o Frozen que resultarán muy atractivos para muchos chavales en esta edad. Será una excusa para que se enganchen.
Completar los tutoriales de Code.org proporcionará una base de programación por bloques sobre la que luego podrán comenzar a utilizar otros lenguajes mucho más potentes, de tipo sandbox. El propio Code.org tiene uno integrado, aunque Scratch es una opción aún más completa.

Scratch

Aunque oficialmente está dirigido a chavales a partir de los 8 años en el CJP lo hemos probado con éxito en 7 años, y con casos de éxito de menor edad. Scratch es considerado una de las principales plataformas de programación educativa del mundo debido a su enorme potencial y a las posibilidades que ofrece.
Muchos lo vemos como un lenguaje de alto nivel escondido detrás de una interfaz basada en piezas de colores, pero los más de 14 millones de proyectos compartidos en su web (y subiendo) avalan su éxito. La clave es la facilidad y la sencillez de uso, los recursos oficiales disponibles para aprender a utilizar la herramienta y esa ingente comunidad, esencial en la vida de Scratch.

Blackpool Coderdojo Flickr
En Cómo iniciar a un niño en la programación desde cero con Scratch tratamos con profundidad una introducción a la plataforma, así como los siguientes pasos a dar. Scratch puede empezar a utilizarse desde los 8 años hasta infinito de forma gratuita, ya sea a través de la página web o con el editor offline.

Tynker

Tynker es otro lenguaje de programación basado en bloques, con un modelo freemium. De la plataforma, disponible online, destacan los múltiples tutoriales disponibles que nos enseñarán a crear proyectos mientras empezamos a aprender la plataforma.

Tynker Ipad App

Sus creadores recomiendan Tynker a partir de infantil aunque con especial énfasis desde los 8 años. Es en esta edad cuando podrán comenzar a sacarle el máximo partido a través de las propuestas de la plataforma, que incluyen diferentes niveles (iniciación, medio y avanzado) y una amplia variedad de objetivos a conseguir: desde juegos, creaciones artísticas o historias con las que relatar algún acontecimiento.

Segundo ciclo de primaria (10-12)

Un pasito más trae consigo un nuevo escalón y una mayor variedad de herramientas disponibles, si bien a partir de los 10 años podremos continuar utilizando alguna de las anteriores (Scratch, Tynker) también aparecen nuevos entornos con los que abordar otros enfoques.

Scratch

No, no nos hemos equivocado. Doblamos aquí Scratch porque, como ya dijimos anteriormente, el potencial que ofrece es lo suficientemente amplio como para aprovecharlo durante un mayor tiempo.
La diferencia entre aplicarlo en los 8-9 años y hacerlo después es el enfoque: mientras en los más jóvenes se deben proponer actividades específicas —con una cierta libertad, siempre necesaria—, a partir de los 10 años debemos cederles el testigo para que ellos comiencen a decidir qué programar, y qué objetivos marcarse en cada proyecto.

Asteroids Game Clone Whiskito

En Scratch la complejidad no tiene límites

Aquí un clon del Asteroids original, lanzado por Atari en 1979.
Hay muchas ideas para programar en Scratch —en Educación 3.0 estamos continuamente lanzando propuestas—, y es que es un lenguaje tremendamente versátil y con una variedad infinita. Por ejemplo, suelen ser muy recurrentes los clones de videojuegos arcade, muchos de ellos sencillos de implementar pero lo suficientemente complejos como para estar "pegándonos" con ellos durante horas.

Code Monkey

Pero va siendo hora de comenzar a cambiar los bloques por el texto, y Code Monkey puede ser una opción perfecta para escribir nuestras primeras líneas de código.


Más parecido a un juego que a un entorno de programación profesional, en Code Monkey nos pondremos a los mandos de un mono que deberá ir recogiendo plátanos por diferentes escenarios. Para moverlo tendremos que ir escribiendo el texto de determinadas instrucciones sencillas sobre una interfaz con una dosis de gamificación, y así iremos completando niveles y avanzando en la complejidad.
El juego comienza de menos a más y es muy sencillo de seguir, perfecto como introducción a los lenguajes textuales. Es gratuito y tiene una opción de pago que merece mucho la pena, por sólo 29 dólares al año para un usuario, estando disponible en la página web oficial.

Secundaria (13-16)

Es en la adolescencia cuando muchos chavales comienzan a mostrar sus inquietudes, algunos de ellos acerca de la programación y la creación de contenidos mediante código. Podríamos continuar planteando el uso de herramientas como Scratch, Tynker o incluso Code.org —que tiene un curso acelerado de 20 horas para chavales a partir de 10 años—, pero no debemos olvidar otras plataformas que están ahí fuera y que encajan perfectamente desde los 13 años.

CodeCombat

Imagina que te pones en la piel de un joven guerrero que participa en un sencillo juego de rol, y que para conseguir armas y equipamiento más potentes necesitas ir resolviendo retos de programación sobre un mundo medieval. Así es CodeCombat, una de las plataformas de aprendizaje de la programación más completas y divertidas que existen.

Codecombat Screenshot

Empezarás moviendo al personaje en un mundo bidimensional y terminarás creando tus propias funciones para satisfacer los requisitos de los niveles más avanzados. CodeCombat es programación textual, está disponible en múltiples lenguajes como Python, Java o JavaScript, entre algunos otros y tiene varios modos de funcionamiento, incluyendo cuentas de profesor y alumno perfecta para clases completas.

AppInventor

Imagina que puedes crear apps de Android arrastrando bloques de código. Existe y se llama Appinventor, una creación de Google que ahora lidera el MIT con ya unos cuantos años de experiencia y mucho de donde rascar.

Appinventor Tuto

AppInventor es gratuita y fácil de utilizar —más allá si tenemos en cuenta estos recursos oficiales—, y aunque tiene un emulador lo ideal es poder disponer de un dispositivo Android (tablet o smartphone) en el que volcar lo que vayamos haciendo en cada momento. No es necesario escribir una línea de código y todo se realizará arrastrando bloques, como en Scratch, permitiendo crear apps y juegos sencillos.

Python

Python Logo

Python no es sólo un lenguaje profesional que está entre los más usados del mundo, también es usado por muchos como introducción a la programación textual por su sencillez frente a otras alternativas.
Y es por ello por lo que ahí fuera hay muchos tutoriales pensados para introducir Python a jóvenes a partir de los 14 años, aproximadamente, y también algunos libros. Entre las guías resultarán especialmente interesantes el tutorial interactivo de CodeSchool o el de Learn Python.

Bachillerato (17-18)

Muchos comienzan a plantear su futuro profesional en esta edad, en alguno de los varios ciclos formativos relacionados con la programación que existen. Aquí el enfoque continúa siendo mucho más versátil, no tanto intentando buscar un futuro profesional sino aprovechando la programación para otros ámbitos. Y os recomendamos tres entornos aún más avanzados que los anteriores, si bien no sería descabellado recomendar algunos lenguajes ya mencionados como CodeCombat, Python o incluso Scratch.

Stencyl

Hay por ahí fuera una gran variedad de entornos para crear juegos de plataformas, y Stencyl es uno de los más avanzados que existen. Es gratuito —tiene opción de pago si quieres exportar tus proyectos a web o plataformas móviles— y podemos definirlo como un editor para crear videojuegos avanzados, muy personalizables y con gran potencial.
Stencyl
Comenzar a utilizarlo no es trivial (proporcionan una amplia ayuda oficial) y será recomendable que el chaval ya tenga una cierta experiencia previa en la programación, o de lo contrario tal vez resulte demasiado complejo. Pero una vez que le coja el truco, con Stencyl las posibilidades se amplían respecto de otras opciones a la vez que la complejidad no se dispara como en los lenguajes más clásicos.

Arduino

A Arduino lo conocemos todos, y a partir de los 15 años muchos lo consideran como una plataforma genial para aprender electrónica... y programación.

Arduino DIY
Por su versatilidad, escalabilidad, posibilidades de personalización y por la ingente comunidad que existe por todo el mundo, aprender Arduino nos permitirá poner en marcha millones de proyectos reales con esfuerzo y un bajo coste. Para quien quiera ir un paso atrás puede probar mBlock, una interfaz tipo Scratch compatible con Arduino.

CheckIO

Si el CodeCombat del que hablábamos antes pone un videojuego a disposición del aprendizaje de la programación, CheckIO es algo en esa línea pero con un formato diferente. Completamente disponible en la web, tendremos que ir resolviendo ciertos problemas cuy
a dificultad es creciente.

No tiene tanta dosis de videojuego, pero los retos que plantea son más avanzados y relacionados con la programación, llegando a acercarse al ámbito más profesional profesional de esta materia. Igualmente tiene una buena parte que es gratuita

Comentarios

Entradas populares de este blog

Dabbleboard, una pizarra para hacer más productivas las reuniones

Community Managers: Una fórmula sencilla de medir el ROI para Pymes

3 plataformas para construir elegantes sitios web sin programar