Por Juan Carlos López García. Enseñar a programar computadores en la educación escolar tuvo su primer auge en los años 80. En esa década, muchas escuelas en todo el mundo empezaron a adquirir computadores personales, lo cual posibilitó que el uso del entorno de programación llamado Logo se implementara intensivamente en la educación básica primaria. Fue tal el entusiasmo generado por este lenguaje, que se desarrollaron más de 180 intérpretes y compiladores de Logo, muchos de ellos gratuitos. En ese entonces, detrás de los computadores personales y de este entorno de programación estaba la teoría construccionista del aprendizaje propuesta por Seymour Paper, la cual caló rápidamente en la comunidad de educadores.
No obstante este interés generado por Logo y el construccionismo, varios factores confluyeron para que, en la última década del siglo pasado y la primera de éste, la programación de computadores en las escuelas fuera decayendo lenta pero inexorablemente. Por ejemplo: Logo era un entorno en el cual los estudiantes debían escribir instrucciones mediante texto, lo cual generaba que equivocaciones insignificantes causaran errores en la ejecución de los programas, produciendo altos niveles de frustración. Por otra parte, la mayoría de las versiones gratuitas tenían una interfaz poco atractiva; las versiones gráficas y multimedia, tales como MicroMundos, eran de pago. Adicionalmente, en esa época resultaba difícil conformar una comunidad amplia y global con los educadores que trabajaban con Logo. Finalmente, muchos docentes de informática inclinaron la balanza en favor de enseñar a usar suites de oficina y otras aplicaciones de productividad en lugar de enseñar a programar.
La buena noticia, para quienes siempre han estado convencidos del potencial que tiene la programación de computadores en el desarrollo de habilidades de pensamiento, es que en los últimos cinco años se ha producido un nuevo boom posibilitando que la programación se instale nuevamente en los currículos de muchas instituciones educativas. Solo que esta vez, a la teoría construccionista del aprendizaje se le suma un nuevo factor a la ecuación: usar la programación para promover el desarrollo del pensamiento computacional. Este pensamiento fue definido recientemente por ISTE y CSTA como un proceso de solución de problemas que incluye, entre otros: analizar problemas, organizar y representar datos de manera lógica, automatizar soluciones mediante pensamiento algorítmico, usar abstracciones y modelos, comunicar procesos y resultados, reconocer patrones, y, generalizar y transferir. Para llegar a esta definición operativa, especialmente formulada para educación escolar, se encuestaron 700 docentes de ciencias de la computación, investigadores y profesionales de ingeniería de sistemas.
Ahora bien, ¿por qué es importante promover que los estudiantes desarrollen el pensamiento computacional? Porque este tipo de pensamiento les va a permitir “aprovechar las ventajas de las transformaciones revolucionarias que los cambios tecnológicos acelerados han producido y hacer además sus propias contribuciones para la solución de los grandes desafíos del Siglo XXI” (ISTE, 2011). Mediante el desarrollo del pensamiento computacional los estudiantes pueden mejorar su habilidad para solucionar problemas, explotando todo el potencial que ofrecen los computadores.
ISTE y la CSTA plantean en su caja de herramientas para el pensamiento computacional que resulta difícil hoy día encontrar una ocupación en la que los trabajadores y la tecnología no interactúen. También proponen que cualquier ciudadano debería entender cómo, cuándo y dónde computadores y herramientas digitales pueden ayudarles a resolver problemas y a comunicarse con otros en busca de soluciones mediadas por el computador. El desarrollo de este pensamiento debería ayudar a los estudiantes a comprender que mediante el uso de computadores se puede automatizar soluciones que resuelven problemas de manera más eficiente. Adicionalmente, muchas de las profesiones en el campo tecnológico que veremos en el futuro, aún no se han creado; razón por la cual, la habilidad para resolver problemas mediante sistemas informáticos será cada vez más valorada.
En torno al pensamiento computacional y al nuevo renacer de la programación se viene gestando todo un movimiento que aboga por que todos los estudiantes encuentren en la escuela la oportunidad de aprender a programar. Tal vez, la iniciativa más visible entre las que promueven este movimiento es code.org, que logró el apoyo de personalidades tales como Bill Gates (fundador de Microsoft), Mark Zuckerberg (fundador de Facebook), Bill Clinton (ex presidente de los Estados Unidos), Randi Weingarten (presidente de la Federación Americana de Profesores), etc.
Otras iniciativas de este movimiento son:
- coderise.org se enfoca en empoderar a estudiantes de países en desarrollo, enseñándoles a construir aplicaciones Web.
- CodeClub es una red británica de voluntarios que enseñan a programar a estudiantes de 9 a 11 años después de la jornada escolar. Resaltan la labor de los programadores, pues son ellos los que, en buena parte, le dan forma a la vida cotidiana contemporánea.
- Code-to-learn apoya proyectos que involucran a jóvenes en el aprendizaje a través de la programación de manera que ellos crezcan como pensadores creativos, diseñadores e innovadores.
- ScratchEd es una comunidad en línea en la cual los educadores que trabajan con Scratch pueden compartir experiencias de aula, intercambiar recursos, formular preguntas o encontrar a otros docentes.
- Codecademy tiene como finalidad enseñar a crear sitios web interactivos, juegos divertidos y aplicaciones móviles.
Pero este movimiento que busca instalar la programación en los currículos escolares, se apoya en una serie de nuevos entornos de programación de computadores, gráficos y especialmente diseñados para su uso en la educación escolar. El más exitoso de todos, por el número de usuarios que congrega en su comunidad virtual, es Scratch, un entorno de programación que facilita crear arte interactivo, historias, simulaciones y juegos; además, permite compartir las creaciones en línea. Sin embargo, Scratch no es la única opción. Hay otros entornos de programación gráficos y amigables para los estudiantes tales como AppInventor, Kodu, Alice, S4A (Scratch para Arduino), Snap!, StarLogo TNG y NetLogo.
Como se puede apreciar, los diferentes enfoques para incluir la programación de computadores en la educación escolar son variados, al igual que los entornos de programación disponibles. Es hora de que instituciones educativas, directivos y docentes atiendan estos llamados y les proporcionen a todos sus estudiantes la oportunidad de aprender a programar; sin duda, será algo que les servirá para toda la vida.
Licenciado en Educación con énfasis en Tecnología e Informática. Desde el año 2002 se desempeña como editor de eduteka.org, portal de la Fundación Gabriel Piedrahita Uribe con sede en Cali, Colombia. Es autor de un Cuaderno de Trabajo para enseñar a programar con Scratch a estudiantes de básica primaria y de una Guía de Algoritmos y Programación para Docentes. También es autor del capítulo “Identificación y regulación de emociones con Scratch”, incluido en el libro “Tendencias emergentes en Educación con TIC” publicado por Espiral (Barcelona, 2012).
Referencias
ISTE “Pensamiento Computacional, Caja de herramientas para líderes”. 2011. [EN LÍNEA] Disponible en: http://www.eduteka.org/pdfdir/PensamientoComputacional1.pdf [Último acceso Noviembre 15, 2013].