En los últimos años ha surgido una corriente muy fuerte que defiende que, en los colegios, debería enseñarse a programar. Y que conste: pongo la palabra "programar" en cursiva porque hay dos variantes. Hay quien defiende que se enseñe algoritmia y hay quien defiende que se enseñe, directamente, a hacer aplicaciones.
El movimiento, además, se acerca bastante a ser global. Por ello queremos repasar la situación para ver qué países incluyen la programación en su currículo educativo y qué países ignoran esta tendencia.
¿Qué motivación tiene aprender a programar tan pronto?
Hay una frase que lleva mucho tiempo repitiéndose, sobre todo en aquellas casas donde hay hijos: "la informática tiene mucha salida". Estudiar alguna disciplina relacionada con la informática está razonablemente bien visto en muchas sociedades y hay numerosos informes que indican que no hay demasiado desempleo entre profesionales del ramo de las nuevas tecnologías.
Y muchos padres quieren introducir a sus hijos a esta disciplina cuanto antes mejor. Por ello los talleres de robótica o de programación de videojuegos tienen cada vez más presencia como actividades extraescolares junto a las clases de violín, de danza o de natación. Hay que tener en cuenta que la informática es una carrera con gran predominancia de hombres; a edades tempranas, este estereotipo apenas se tiene en cuenta. También es una forma de atraer mujeres a la profesión.
Además, mejorar la alfabetización digital es el sexto de los siete pilares de la Agenda Digital Europea. Se estima que en los próximos años va a existir una gran demanda de trabajadores relacionados con las tecnologías de la información y la comunicación y que, sin la formación adecuada, quedarán sin cubrir.
Se estima que 900.000 puestos de trabajo en Europa quedarán sin cubrir por no existir suficientes profesionales cualificados en TIC.
En España: prácticamente tabula rasa
Desde hace mucho tiempo en los colegios e institutos españoles se imparte una asignatura llamada genéricamente "informática", incluso en la etapa de educación primaria. Muchas veces se reducía a utilizar la informática como herramienta para estudiar otras materias, como geografía o matemáticas. En el caso de secundaria, lo habitual es que esa asignatura (optativa en muchos casos) se termine reduciendo a enseñar ofimática. Es algo muy excepcional que en la etapa de bachillerato se enseñe algo de programación, y acaba siendo casi iniciativa propia del profesor. Debo confesar que fue mi caso.
Aunque durante los últimos años se ha empezado a introducir esta disciplina en los colegios españoles. A título individual (aunque con el apoyo del centro, por supuesto), muchos profesores han formado equipos de trabajo que han participado, por ejemplo, en la First Lego League. También existen colectivos locales, como el Club de Jóvenes Programadores, en Valladolid; Citilab está presente en Barcelona y Complubot tiene presencia en la capital. Muchas ciudades cuentan con colectivos de este tipo o incluso empresas que lo enseñan a quien quiera.

Y poco a poco la programación, de una forma u otra, se va introduciendo en los programas oficiales de muchas de nuestras Comunidades Autónomas. Por ejemplo, los niños navarros que el año que viene estudien cuarto de primaria aprenderán a realizar pequeños proyectos de programación, aunque como parte del temario de la asignatura de matemáticas.
España, como sabemos, es peculiar en este sentido: las competencias en materia de educación son responsabilidad de los distintos gobiernos autonómicos y es muy normal que, aunque el currículo sea el mismo a nivel nacional, los programas entre autonomías difieran entre sí.
Más que programación, es necesario que aprendan lo que se conoce como pensamiento algorítmico o pensamiento computacional. (Juan Julián Merelo)
De hecho hay un gran hueco en todo este sistema: los profesores encargados de impartir este tipo de asignaturas, en muchas ocasiones, no han sido formados adecuadamente.
No es raro ver clases de informática en las que los alumnos son los encargados de enseñar al profesor a usar el ordenador.
Estonia, pionera
Estonia es un país que por poco supera el millón de habitantes pero fue pionera en muchos asuntos relacionados con las nuevas tecnologías. Su gobierno, por ejemplo, fue el primero en ofrecer una oficina electrónica para prácticamente cualquier trámite. También fue el primero en el que todas sus escuelas contaban con una conexión de banda ancha estable y permanente a Internet. Y también, en 2012, vio nacer el proyecto ProgeTiiger, que tiene por finalidad enseñar a sus niños entre siete y diecinueve años a escribir código.
Lo llamativo de este tipo de proyectos, sobre todo, es la edad. Muchos centros a lo largo de todo el mundo se han atrevido a introducir la programación en sus currículos, pero en la escuela secundaria. Aunque los niños de siete años no se van a meter a aprender C++, Java o Python. La formación es mucho más profunda, desde los fundamentos matemáticos en que se apoya la programación.
Hay que tener en cuenta, no obstante, que es relativamente sencillo implantar un proyecto de este tipo en un país con apenas 1.300.000 habitantes y poco más de quinientas escuelas. Hay que tener en cuenta también que Estonia es un país que tiene verdadera demanda de programadores, y es de esperar que con el paso de los años sea todavía mayor.
Estonia, país que vio nacer a Skype, tiene una interesante escena en el sector del desarrollo de software.
¿Otros países?

El Reino Unido también ha movido ficha para incluir la programación en el currículo de sus colegios, desde la educación más elemental. Con cinco años aprenden los fundamentos, sin pararse en el detalle y sin pensar en el ordenador en sí. A los once, además, comenzarán a enseñarles al menos dos lenguajes de programación.
Estas medidas tendrán efecto a partir de este mismo mes. El Reino Unido adelantó así al gigante en lo tecnológico, aunque muchos de sus profesores tuvieron (y están teniendo) que prepararse a toda pastilla para poder comenzar a enseñarla en este nuevo curso. Muchos no tenían conocimientos para ello.
Porque, por increíble que parezca, los Estados Unidos no cuentan con esta disciplina en su currículo escolar, dejando esta competencia en manos de los centros que quieran llevar a cabo sus propias iniciativas, así como de otras iniciativas como Code.org, ONG impulsada por, entre otros, Bill Gates y Mark Zuckerberg. Aunque en la cuna de Silicon Valley abundan las iniciativas privadas y de otras instituciones, a las que de muy buen grado se unen los propios profesores a título personal.
Por otra parte, Singapur también tiene intención de introducir progresivamente disciplinas como la impresión 3D y la programación en el currículo de sus escuelas públicas, donde ya están disponibles como actividades extracurriculares. El interés es claro: el gobierno de Singapur ve esta actividad como un potencial motor de crecimiento económico del país. La iniciativa privada también abunda allí.
Los gobiernos de otros países como Dinamarca e Israel también han tenido bastante importancia a la hora de introducir la informática, de un modo u otro, en la educación primaria y secundaria de sus sistemas educativos. No obstante sus acciones han sido bastante más tímidas y orientadas, sobre todo, a lo que aquí conocemos como "alfebetización en TIC".
Finlandia parece estar planteándose también introducir la programación al conjunto de competencias con las que deben salir sus alumnos de la etapa primaria de su educación. Es el caso también de Australia, que se plantea llevarlo a cabo como iniciativa mitad pública y mitad privada.
Hay muchas iniciativas a pequeña escala, pero pocos países han incorporado la programación a sus currículos educativos.
¿Es necesario?

Hay muchas voces, tanto a favor como en contra, de enseñar a programar a edades tan tempranas. Hay personas, incluso profesionales del sector de la informática, que opinan que no se trata de una disciplina básica para el día a día de muchos, y que por tanto no es necesario enseñarlo en el colegio. También hay quien se refiere a otras prioridades como aumentar las horas semanales en otras materias que consideran más importantes.
Claro que, por otra parte, las clases de música de un colegio no buscan que todo el mundo se transforme en violinista o director de orquesta. Del mismo modo, las clases de programación no tienen el objetivo de que todo el mundo, de la noche a la mañana, se dedique al desarrollo de software. Es la opinión de Clive Beale, director de la sección educativa de la Raspberry Pi Foundation.
Además, la programación involucra otras muchas materias como las matemáticas o la física, y puede ser un medio de acercar estas materias al alumnado. Y, por otra parte, la programación también es utilizada en muchas otras carreras, sobre todo si están ligadas al ámbito puramente científico. Además, también hemos visto que la creación en el ámbito de la informática puede ser vehículo de inclusión social.
Es llamativo, además, que conforme la informática ha pasado de ser algo meramente ligado a las universidades a ser algo que está en todas nuestras casas (y nuestros bolsillos, coches, relojes...), la enseñanza de la informática ha pasado de hacer a simplemente consumir, o utilizar los productos de informática. Y tampoco podemos ignorar el hecho de que nuestros jóvenes son los considerados nativos digitales: muchos no necesitan que les enseñen a usar los dispositivos y sus aplicaciones, y por ello se interesan en llevar a cabo sus propias creaciones.
También hay quien considera que es necesario formar desde tan pronto porque dentro de no mucho tiempo habrá una gran demanda de profesionales de la informática, y éstos deben estar muy bien formados.
Hay posturas enfrentadas: por una parte hay quien defiende que no es necesario sino que debe ser únicamente extraescolar, mientras que hay quien lo considera una materia esencial para el futuro de sus hijos. Y no existe el más mínimo consenso.
Más información | The Economist | Wired | The New York Times | ProgeTiiger | Microsoft Research
En Genbeta Dev | "La enseñanza del pensamiento algorítmico debe empezar en Primaria" Entrevista a Juan Julián Merelo
Imágenes | Joseph McKinley | Stephen Chin | US Department of Education | Ricky Cain
Ver 51 comentarios
51 comentarios
kverko
Soy profesor de secundaria. Imparto matemáticas e informática desde hace años.
Bajo mi punto de vista enseñar programación es de gran utilidad. Las asignaturas en primaria y secundaria tienen carácter propedéutico (bonito palabra) esto es, no se enseñan como un fin, sino como un medio para desarrollarse dentro de esta sociedad.
Las personas necesitamos desarrollar el pensamiento analítico. Por ello, entre otras cosas enseñamos matemáticas, no para que en el futuro la gente sepa hacer raíces cuadradas a mano, sino para desarrollar una parte del cerebro que de otra manera no se desarrollaría.
De la misma manera se enseña química o física. No para que los jóvenes sean químicos o físicos, sino con el fin de desarrollar determinadas regiones cerebrales durante la juventud reforzando el paradigma científico (y su método) como base (superando el paradigma medieval de "la magia" domina el mundo).
Así mismo, asignaturas como la historia o la geografía no sirven para convertir a los estudiantes en historiadores o geógrafos, sino para enseñar a los jóvenes la situación y el contexto ciudadano del siglo XXI y a desarrollarse como personas en ese contexto.
Lo mismo puedo decir del latín, el griego, la educación física, la ética...
La programación no se enseñaría para que los jóvenes trabajasen como programadores, sino como una disciplina que permite desarrollar una importante región del cerebro que debe ser estimulada desde la juventud. Se aprenden cosas que serán útiles para otros entornos de la vida, tales como a gestionar el orden en cualquier cosa que hagas, dividir problemas complejos, análisis de soluciones, ...
Desarrollar estas habilidades es importante tanto para un mecánico como para un tendero, un empresario, un arquitecto, un ministro ...
Yo enseño programación en Python, y lo hago porque creo que ayudará a mis alumnos a desarrollar sus capacidades que de otra manera quizás no podrían.
migueladan.vazquez
Creo que habría que empezar a definirse a qué le consideran "programación". Enseñar lógica me parece excelente idea, algoritmos es bueno pero ya entrar con un lenguaje propiamente me parece innecesario. No todos los niños se orientarán por ese ramo. Hay quienes dicen que es necesario porque día a día convivimos con programas, sí pero también día a día convivimos con nuestro cuerpo y no por eso se nos enseñará medicina (que creo es más importante).
Aunado a eso, hay quienes confunden y creen que con hacer una página web o realizar una secuencia de videojuego ya están programando aunque lo hayan hecho todo desde el entorno gráfico. Es cierto que se genera código por atrás pero entonces hacer una carta en Word también sería programar pues por atrás se genera código.
minicraftiano
En españa no hay nada de informatica en institutos ni escuelas :) yo estoy en un instituto de cataluña y nunca tuve clases de informatica
andreu_b
A mi esto me recuerda una anécdota que me pasó en clase hace un tiempo. 2° de carrera. Nuestro profesor de psicología de la conducta nos enseña a simular experimentos con ratas virtuales.
Resulta que en mi facultad tenemos muchos macs (a mi personalmente me parece que no son necesarios unos ordenadores tan caros). Yo jamás había tocado un mac hasta entonces, pero en unos días que los manejé en la facultad ya me apañaba.
Mi profesor no sabía ni poner zoom al ratón (en las propias opciones del sistema) para enseñarnos los pasos que iba haciendo en su pantalla. Se lo enseñé yo en una clase. Yo, que no había tocado apenas un Mac.
Él se quedó alucinado, ya que todos mis compañeros se quejaban mucho al no estar familiarizados con los mac, y me preguntó si usaba mac y le dije "No, lo aprendí el otro día".
Yo creo, y obviamente es mi opinión no demostrada, que en la época que vivimos quizá si sea interesante aproximar (acorde a la edad) a las nuevas generaciones a la informática, porque tenemos mucha más inquietud que nuestros predecesores.
A mi ya no me hace falta un curso de cómo usar internet, pero quizá si uno básico de programación de experimentos.
JuanAR
Pues yo no lo veo y soy programador. No es algo que encuentre necesario para la mayoria y al que le interese ya lo estudiará, que cada vez es más fácil encontrar recursos. Ya me dirás tú para qué le servirá a un futuro médico por ejemplo.
radl
Considero que se debería hacer algo similar a lo que ocurre con la clase de Música, donde llegado a cierta edad (12-13 años), empiezan a enseñar a tocar la flauta dulce y solfeo.
De igual modo, la programación debería enseñarse, aun que sea de forma muy sencilla, en la clase de informática a partir por ejemplo de los 13 años.
Yo empece a hacer mis primeros pinitos con esa edad, así que no veo motivo alguno para no hacerlo, más aun con la herramientas actuales que son gratuitas en la mayoría de los casos y mucho más sencillas que las que empecé a manejar yo de chaval.
pozo
Considero que aprender a hacer pequeños programas (algoritmia y usando estructuras sencillas, y aplicandolo a un lenguaje de programación) sería bastante interesante para el estudiante, permite el desarrollo propio y de otras aptitudes, y es un trampolín para que siga el estudiante con la programación si así lo desea.
MarSanMar
Aprovecho el tema a ver si alguien me puede ayudar a decidirme. Este año saqué el acceso para mayores de 25 después de mucho tiempo sin estudiar y bueno, aun que no me gusta estudiar, me gustan las matemáticas igual no para saturarme con ellas, pero me parecen un reto.
Mi pregunta es que se estudia en ingeniería informática? En la UNED no veo Ingeniería del Software que creo que es más atractivo.
Yo en principio iba a hacer ciclo medio y superior, en mecánica. Al final hice el acceso y tengo la oportunidad de probar lo que es un grado. Me sería de gran ayuda una descripción sobre lo que se aprende en ingeniería informática.
arbitrogarcia
Programación en clases de informática?
Creo que saldran dos tipos de alumnos:
- A los que se les de bien y quieran seguir programando en su tiemplo libre
- A los que se les da mal y no querrán ver un ordenador ni en pintura.
En mi instituto teniamos informatica(optativa, eso si), en clases nos enseñaban el paquete office(porque es algo que tarde o temprano lo ibamos a usar).
Alberto J.
Un artículo muy interesante.. No me había planteado -al menos desde un enfoque antropológico o sociológico- que la programación, la computación es parte de nuestro acervo cultural. Ciertamente, quien cursa música en su educación formal no será necesariamente un músico, pero sí tendrá el conocimiento mínimo como para leer muy básicamente un cifrado o partitura. Es muy interesante esta propuesta.
cathangb
Yo estoy en contra, la programación es sólo una parte de la informática, es bastante difícil y no es muy útil a menos que quieras programar, con lo que se conseguirá que mi muchos chavales que fracasen en informática odien los ordenadores.
Creo que sería mucho mejor enseñar informática a un nivel más general: qué es un ordenador, que es una red informática, cómo funcionan qué es Internet, nociones básicas de seguridad en la red, ofimatica y cosas así, más generales y mucho más útiles. Y después si quieren que se especialicen y que empiecen con algo de programación o redes o lo que sea.
fjmcasadi
Se te ha escapado el "Leer más", el articulo esta ocupando media portada.
umbium
Yo creo que ayudaría bastante estudiar algo de programación y ayudaría a que la curva de dificultad para los que quisieran estudiar Ingeniería no fuese tan acusada. Por no hablar de que aunque enseñen algo básico, algún código específico para aprender que sea casi pseudocódigo, y algo de maquetación web, ayudaría muchísimo en la percepción de las matemáticas del alumnado medio como algo realmente útil, y les ayudaría a entender su lógica.
Eso si, yo creo que antes de 3º o 4º de la ESO no se puede dar, porque convertirías en una asignatura que debería tener un cierto componente lúdico en una asignatura complicada.
juanma1414
En Argentina también han comenzado a surgir iniciativas gubernamenteles. Puedes visitar program.ar para conocerlas.
carlos.sanchezdoming
no creo que en los colegios se deba enseñar programación ya que es una profesión, la de programador, que tu decides seguir, igual que no te enseñan derecho penal no te deben enseñar a programar. Por otra parte, creo que la asignatura de "informática" debería estar más centrada al tema hardware y no tanto a la ofimatica, sobre todo en la secundaria.
fernandeztom
En Argentina el uso de las computadoras como herramientas de formación y ampliación de conocimientos se está utilizando desde hace al menos 3 años. El programa Conectar Igualdad entrega una netbook a los alumnos de escuelas secundarias (entre 13 y 18 años) y en la primaria (entre los 6 y los 12 años) también tienen una netbook. Incluyen programas para audio, video, documentos, planillas, etc. Ademas hay una conexión a internet en la ciudad de buenos aires que permite que las netbook tengan Internet gratis en casi toda la ciudad. Al margen de las netbook, informatica está en la curricula de todos los colegios desde hace mas de 8 años. Tambien en las secundarias técnicas se enseña a desarrollar con placas como Arduino. Incluso hay escuelas técnicas que los alumnos se reciben con conocimientos de robotica aplicada a la industria.
lolo_aguirre
También deberían darse nociones de cocina, albañilería, fontanería, medicina y primeros auxilios, derecho y economía, de todas formas los niños tienen mucha energía y con un par de horas de sueño tienen bastante, que si no luego están todo el día en la calle haciendo el vago.
Cualquiera de esas materias sería más útil para los alumnos que la programación, es mucho más probable que tengan que arreglar un grifo o entender las condiciones de un préstamo en su vida que hacer un programa. Además, que sepan cocinar podría mejorar la alimentación y reducir enfermedades, por ejemplo. El problema es que a los que visitamos esta página nos gusta el tema y vemos las cosas desde nuestro punto de vista. En la educación se debe distinguir lo que es la educación general básica (qué bien lo expresaba) y las enseñanzas opcionales. Enseñar a un niño a pensar es muy útil, pero el problema es que conmigo ya lo hacían en matemáticas y física. ¿Cómo resolvíais vosotros el problema aquel de dos trenes a distintas velocidades que se encontraban? ¿O el de averiguar dónde caía la pelota que golpeaba sobre un plano inclinado? Si eso no era plantear un algoritmo creo que mis conceptos de programación están muy equivocados. Lo malo es que quizás hoy en día habría que tratar a los niños como nos hacían a nosotros, como personas con pocos años pero no tontos como se hace ahora en algunos planes de estudios para aumentar las cifras de aprobados sin preocuparnos de qué es realmente un aprobado. Pero para eso basta con cambiar la forma de enseñar las asignaturas actuales, no es necesario poner asignaturas nuevas, ya que se corre el riesgo de que como no te gusten y te obliguen acabes aborreciéndolas. Sí creo muy útil que se ofrezcan como actividades extraescolares (que para eso están) o como optativas. Pero en ese caso también habría que distinguir entre informática y programación. Algunos decís que el profesor enseñaba Office porque no tenía ni puta ni idea. No sé, a lo mejor es porque hay muchísima gente que usa más Office que programa. Incluso siendo ingeniero, paso mucho más tiempo con hojas de cálculo o documentando en Word que programando.
juliann_ezeqiel
Sudamerica existe...
En Argentina hay muchas escuelas que enseñan programación y bastante avanzada, incluida en los planes de estudio, no únicamente por talleres.
jcifur
Un gusto saludar.
Considero que más allá de enseñar a programar, el desarrollo de algoritmos e implementaciones computacionales permite promover habilidades cognitivas que son primordiales para desenvolvernos en la sociedad actual.
Un problemas del tipo: Determine los números primos del 1 al 1000. Permitirá a los estudiantes poner en práctica estrategias de resolución de problemas, identificar las variables asociadas, discutir y validar los argumentos con otros, etc.
En educación hay ciertas taxonomías que permiten determinar los distintos estándares cognitivos que se pueden desarrollar en el proceso educativo (ver taxonomía de Bloom) y les garantizo que el desarrollo de algoritmos permite abordar procesos de aprendizajes mucho más profundos, incluso ampliando el espectro de conocimiento que se puede alcanzar dentro del proceso. De alguna forma podemos movernos en los pisos más altos de la taxonomía.
Mi formación es de profesor de matemática y actualmente trabajo con estudiantes en el desarrollo de modelamientos matemáticos y ha sido relevante que ellos utilicen los procesos algorítmicos para encontrar soluciones a muchos problemas que no tienen una solución analítica aparente(ver problema del vendedor viajero).Entonces, al menos desde esta perspectiva el uso de implementaciones computacionales es trascendente.
Como profesor de matemática creo que si los estudiantes de secundaria también programaran podríamos ampliar muchos de las unidades revisadas en la escuela, aunque la enseñanza de la programación ya es valiosa en sí misma.