Aprendiendo a programar

Con la implantación del nuevo currículo en la asignatura de Informática en la ESO y la de Tecnologías de la Información y Comunicación (TIC) en Bachiller, se ha  incorporado un bloque de programación con la idea de dotar al alumnado de herramientas que le permitan de forma progresiva incorporar la algoritmia y la codificación dentro de su formación académica.

Examinando los contenidos del currículo, podemos observar que en los dos primeros cursos se aborda el bloque introduciendo plataformas sencillas que permiten la programación de aplicaciones a través de bloques. Podemos citar como ejemplo paradigmático Scratch que permite generar salidas a Flash, o Snap! que con la misma filosofía utiliza HTML5. La gran ventaja es que cada cambio realizado se ve de inmediato en la pantalla de previsualización y por tanto es muy intuitivo para los alumnos.

Posteriormente, se intentan introducir plataformas más complejas como puede ser AppInventor en la que disponemos de un diseño separado de interfaz y un diseño de código. Además, los cambios implementados no se ven directamente en pantalla y debemos lanzar a emulador o dispositivo para ver el resultado. Empezamos a introducir el concepto de compilación, de gestión del proyecto, separación de interfaz y código… Además, genera un paquete apk para su instalación en dispositivos Android que permite a los alumnos crear autenticas aplicaciones que pueden utilizar en sus propios terminales.

Finalmente, en Bachiller pasamos a introducir el estudio formal de algoritmia, diagramas de flujo y pseudocódigo. Se trabaja la sintaxis del lenguaje de programación con la intención de dejar de lado la programación visual en bloques y empezar a codificar mediante texto. E incluso en TIC2 se introduce el trabajo de programación orientada a objetos y las conexiones para la explotación de datos.

Aunque no se indica el lenguaje a trabajar, parece lógico hoy en día empezar con Javascript (JS), por ser un lenguaje interpretado de alto uso y difusión que nos permite trabajar sin necesidad de un IDE especializado. De hecho, únicamente necesitamos un editor de texto y un navegador para empezar con JS. También es remarcable que el uso del componente canvas de HTML5 permite interacción inmediata entre el código generado y su resultado visual, cosa que acerca de nuevo al alumno y le permite ser consciente de sus progresos en todo momento.

Para empezar a trabajar con Javascript, me está resultado muy conveniente el uso de la plataforma Khan Academy, que con un interfaz sencillo y materiales muy bien diseñados, permite a los alumnos a codificar a través de sintaxis sencilla aplicaciones visuales sobre un componente canvas. Utiliza la libreria Processing.js y permite gestionar de forma sencilla el progreso y seguimiento del alumnado con estadísticas de uso y avance en la materia. Una vez trabajado el material de JS en la plataforma, los alumnos estarán preparados para implementar sus propias aplicaciones o juegos utilizando los recursos aprendidos. Espero ver resultados interesantes en breve.