Javier Penalva

Programación, robótica, pensamiento computacional … este vocabulario que hasta hace pocos años no entraba en las conversaciones asociadas a laeducación o el ocio de los niños, ha ganado un peso enorme. Ya no es extraño ni poco habitual que en diferentes materias del colegio, juguetes STEM, extraescolares o el tiempo con los padres, enseñar programación sea un objetivo claro y definido.

La gran duda entonces es:¿qué lenguaje, juego o herramienta de programación es recomendable enseñar o practicar con los niños según su edad?

Enseñar programación a los más pequeños sin programar (3-6 años)

Cuando hablamos deenseñar programación a un niño o niñade menos de 5-6 años, en realidad nos estamos refiriendo a que conozcan y empiecen a familiarizarse con el mundo de la programación y su lenguaje general sin que se den cuenta. Que tengan un primer contacto con esta disciplinade una manera lúdicay a la vez formativa.

Por medio de juegos, retos, puzzles y recurriendo a su creatividad, en estas primeras edades podemos arrancar eldesarrollo del pensamiento computacional. Lo común a todas ellas es que debemos intentar que las herramientas que usemos no estén vinculadas a elementos visuales, pues sus capacidades lectoescritoras todavía están formándose.

EnCode.orgyCSUnpluggedhay numerosos ejemplos muy bien documentados (con fichas para imprimir, enlaces a los recursos y organizados por etapas y edades) y en los que podemos seguir varios itinerarios. Los juegos en los que los más pequesbuscan soluciones a problemas de manera creativay haciendo uso de algoritmos sin darse cuenta pueden ser muy variados.

Desde una misión de rescatejugando en un espacio físico a modo de tablero de ajedrez a laplanificación de los pasos de baile de una fiestadonde podrán descubrir sin darse cuenta conceptos como señales o bucles.

Tambiénel proceso para plantar semillasy otras actividades habituales de los niños/as (que podemos tener previamente organizadas en fichas visuales) pueden servir para que aprendar a descomponer un problema en múltiples partes o aordenar eventos en un orden lógico.

En estas primeras edades (a partir de 4-5 años) también podemosempezar a trabajar con un ordenador o tablet, incluso aunque los niños/as no sepan todavía leer. Con nuestra ayuda a la hora de trasladarle las explicaciones de las instrucciones, hayjuegos en que se completan retos usando programación por bloquespero en los que los más pequeños no tienen que leer nada. Bastará trasladar esas nociones básicas de los juegos sin PC de por medio a un entorno ya digital pero que les resultará completamente reconocible. Por ejemplo conAngry Birds.

El flujo de trabajo asociado a este tipo de actividades, donde lo más complicado para ellos puede ser el gesto de arrastrar y soltar,lo practican antes con puzzles, ganando destreza con el ratón o los gestos.

Aunque existen en la red recursos muy completos y gratuitos, listos para imprimir o copiar, también podemos recurrir a kits de iniciación a la robótica con los que conseguir el mismo objetivo:usar juegos de lógica y movimientos físicoscon los que representar y comprender diferentes conceptos relacionados con la programación.

Tenemos varias opciones, pero tanto Code & Go (70 euros) comoLet’s Go Code(ambos de Learning Resources) son las que recomendaríamos a esta edad.

Scratch Jr

A partir de 5 años y si el niño/a ya tiene algo de soltura con el uso de un tablet, es recomendable que comience a dar sus primeros pasos conScratch Jr. Esta herramienta se basa en la programación pot bloques y aunque tiene limitaciones, es una excelente opción para que puedan crear sus primeras historias animadas con las que iniciarse en este lenguaje de programación.

Scratch Jr esgratuito, solo está disponible para dispositivos iOS y Android, y podemos empezar a trabajar con la ayuda de laguía de iniciación de Código21.

Empezando con la programación por bloques (7-10 años)

Una vez que tenemos la lectoescritura en un nivel más avanzado, las posibilidades para aprender a programar se amplían de manera exponencial. Hay multitud de plataformas, apps y recursos que recurren en todos los casos a unaprogramación por bloquesplenamente visual.

Code.org

A esta edad ya podemos recurrir de manera completa a la excelente plataforma que esCode.orgy no solo a sus recursos unplugged o desconectados. Allí encontramos tutoriales de diferentes niveles asociados a diferentes maneras de programar, pero lo más interesante de todo es que esos retos estánbasados en temáticas y universos que a los niños y niñas atraen especialmente. Star Wars, Minecraft, Frozen o personajes de sus series de dibujos animados preferidas se usan en cientos de recursos para los primeros pasos programando.

Lostutoriales están organizados por edad, temáticas y tipo de recurso. Es recomendable empezar con alguno de los propuestos para la iniciativaLa Hora del Código. Solo requieren una hora de dedicación y son una gran motivación para los primeros pasos. Luego ya podemos iniciar alguno de los programas asociados a cada rango de edad y que vienen guiados y con un esquema muy claro y que podemos continuar en varios momentos.

Scratch

Ya sea con un nivel más avanzado de la versión Junior o directamente con el software completo,Scratches el mejor y más lógico paso adelante que los niños y niñas pueden empezar a dar a partir de 7-8 años.

Se trata de una de las plataformas más importantes de programación educativa. Es gratuita, podemos usarlavía navegador webo en versión offline, y sucurva de progresiónes fantástica en tanto que permite desde trabajos muy sencillos para niños de 7-8 años hasta proyectos complejos y enlazados con robots, placas y sensores de terceros por medio de las extensiones.

Tynker, CodeSpark y Code Monkey

Otra de las plataformas más conocidas y grandes para aprenderprogramación usando bloqueses Tynker. Hay aplicación muy completa para tablets pero también hay recursos que podemos usar vía navegador web.

Su uso es muy intuitivo y como en Code.org, hayplanes de trabajo guiadosdonde los juegos, animaciones y retos son la base. En total tienen más de 40 cursos guiados y casi 4000 módulos de aprendizaje organizados por edad y asociados a diferentes lenguajes de programación. Son de pago por suscripción. El mismo funcionamiento tieneCodeSparky varias plataformas similares comoCodeMonkey.

Robots con sus propios entornos de programación

Para aprender a programar por bloques recurriendo a robots, además de Scratch,mBlockoBitBloq, los diferentes fabricantes se basan en propuestas propias y muy bien apoyadas en lecciones o guías de uso de dificultad progresiva. Los más destacados son Lego consus Spike y Wedo 2.0, así comoRobo WunderkindoZum Kit Juniorde BQ.

Primeras líneas de código (10-15 años)

Entrando ya prácticamente en educación secundaria, los niños y niñas están listos para empezar aescribir sus primeras líneas de código en diversos lenguajes, siempre con el punto de partida de una programación basada en bloques y visual.

Swift Playgrounds

De la mano de Apple tenemos su aplicaciónSwift Playgrounds, disponible solo para dispositivos iOS y Mac. Incluye lecciones para aprender a programar con el lenguaje Swift con varios niveles progresivos.

A esta edad es recomendable empezar conlas primeras leccionesque explican mediante puzzles a resolver de manera muy gráfica losconceptos básicos de la programaciónasí como las instrucciones más sencillas con las que superar los retos que propone la app. Más adelante se pueden empezar a programar robots o drones compatibles con la aplicación.

MakeCode para empezar con JavaScript

Microsoftofrece también una plataforma gratuita de código abierto como punto de partida para aprender programación real.MakeCodese basa en diferentes experiencias de aprendizaje bastante atractivas para los niños/as y basadas en placas como la MicroBit o la Adafruit, el juego Minecraft o los famosos LEGO Mindstorms.

La plataformaincluye un simuladorque permite no depender de elementos hardware para ver los resultados de la programación. Dependiendo de la edad podemos optar por programación basada en bloques que usan la técnica de arrastrar y soltar, o, si ya hay una base, optar por eleditor de JavaScript o Python.

Phyton con Minecraft o CodeCombat

Aunque en MakeCode ya tenemos una buena base para empezar aprogramar en Phyton vía Minecraft, un entorno ideal parahacerlo en Minecraft Pi, la versión para Rpi del juego de Microsoft, o directamente conla edición educativa de Minectaft, donde disponemos de tutoriales y cursos guiados para niños/as a partir de 14 años.

Otra plataforma muy atractiva para estas edades y con la que se puede empezar a programar de manera textual tanto en Python como en Javascript, esCodeCombat. Y por supuesto queen Tynkertambién disponemos de juegos y actividades completas para estos dos lenguajes de uso profesional.

Más nivel con Scratch

La posibilidad de empezar a escribir código ya no resta un ápice de valor a lo los niños y niñas pueden seguir consiguiendo con Scratch. Ya no se trata tanto de contar historias, aprender instrucciones o replicar instrucciones sino ir un paso más allá y, por ejemplo, realizarvariaciones personales de videojuegos arcade, algo muy motivador a esta edad.

Las primeras aplicaciones para móviles con AppInventor

Recurriendo a un método de trabajo basado en gran parte en la unión de bloques,App Inventores una solución sencilla pero potente para enseñar a programar aplicaciones para teléfonos Android. Es gratuita e incluye un simulador, aunque lo mejor de ella es que, tras programar la app o juego, podemos generar un apk y probarla directamente en un teléfono.

Creando contenido con código (+15 años)

Con una base ya sólida de lo que es la programación por bloques, conceptos clave e incluso con nociones deJavaScript, Swift o Phyton, llega el momento de que la creación de aplicaciones, juegos y demás contenido sea una realidad.

Desarrollando aplicaciones con Swift

Tras los puzzles y retos de PlayGrounds, Apple dispone de un itinerario formativo basado en guías visuales y denominadoApp Development with Swiften el que los estudiantes de segundo ciclo de educación secundaria pueden empezar a programar en Swift sus propias aplicaciones para dispositivos Apple.

Videojuegos con Unity y C

Programación y videojuegos van de la mano en cuanto hablamos de estudiantes.Unityes uno de los motores de creación de juegos más usados en la actualidad y ellos mismos disponen de unaplataforma de aprendizajedonde incluso obtener una certificación tras aprender a crear contenidos mediante programación en C#.

Robótica con Arduino

Aunque en los primeros cursos de educación secundaria se puede empezar a programar placas Arduino y similares recurriendo solo a programación por bloques, es a partir de 14-15 años cuando el aprendizaje conjunto deelectrónica y programación en Arduinoalcanza un potencial enorme.

Estamos ante un lenguaje muy versátil, con una gran comunidad y el atractivo de que incluya hardware con múltiples posibilidades.