?A qu¨¦ edad hay que aprender a programar?
Ya en la educaci¨®n primaria, desde los 6 a?os, es posible aprender y manejar un lenguaje de programaci¨®n
Si los lenguajes de programaci¨®n son mucho m¨¢s sencillos que los lenguajes naturales, ?por qu¨¦ el ser humano habla una lengua materna (espa?ol o chino) desde los primeros a?os y, sin embargo, aprender a programar le parece tan complejo?
La comunicaci¨®n con un ordenador tiene un cierto componente l¨®gico, pero hemos comprobado que ya en la educaci¨®n primaria, desde los 6 a?os, es posible aprender y manejar un lenguaje de programaci¨®n.
Programar trata justo de eso, de hablar con un ordenador, de aprender su lenguaje para darle instrucciones y modificar su comportamiento. Ese lenguaje es mucho m¨¢s sencillo que el idioma ingl¨¦s, y desde la infancia el cerebro humano puede adquirir sus rudimentos para comunicarse con las m¨¢quinas.
?Tienen los ordenadores un lenguaje propio?
La respuesta es ¡°s¨ª, muchos¡±, y se puede hablar con ellos en esos lenguajes. Los ordenadores, a diferencia del resto de m¨¢quinas, tienen un prop¨®sito general. Es decir, no limpian el suelo o lic¨²an la fruta, pueden hacer muchas funciones distintas y para ello tienen un potente procesador y un lenguaje en el que representar esas funciones; cada cosa que hacen esta controlada por un programa. Y un programa no es m¨¢s que una secuencia de instrucciones en un lenguaje, que en Inform¨¢tica se conoce como ¡°lenguaje de programaci¨®n¡±.
Adem¨¢s, estos lenguajes tienen una estructura muy sencilla. Por ejemplo, el lenguaje de programaci¨®n C (uno de los m¨¢s antiguos y utilizados) consta s¨®lo de 46 reglas sint¨¢cticas, mientras que la gram¨¢tica del idioma ingl¨¦s, como estima David Crystal en Making Sense of Grammar, contiene unas 3 500 reglas.
Por otra parte, un lenguaje de programaci¨®n es preciso: sus reglas no admiten ambig¨¹edad en la interpretaci¨®n; pero una frase en un lenguaje humano puede prestarse a distintas interpretaciones, lo que complica su aprendizaje.
Claro, tambi¨¦n se utilizan con finalidades distintas. Por ejemplo, no utilizar¨ªamos C para quedar a las 8 de la tarde en la puerta del cine. Pero si tenemos que expresar un c¨¢lculo matem¨¢tico, es m¨¢s apropiado un lenguaje de programaci¨®n, puesto que no permite ambig¨¹edad en el c¨¢lculo.
Sin embargo, este lenguaje es el m¨¢s adecuado para expresar cualquier idea de tipo algor¨ªtmico, y en la educaci¨®n obligatoria se ense?a, aparte de las matem¨¢ticas, m¨¢s conocimiento algor¨ªtmico del que pueda parecer.
Por ejemplo, la f¨ªsica implica hacer c¨¢lculos en un orden concreto. En qu¨ªmica, toda la formulaci¨®n de los compuestos est¨¢ basada en reglas. Tambi¨¦n se ense?an reglas en lengua, para escribir correctamente (ortograf¨ªa) o analizar una frase (sintaxis). En biolog¨ªa, la gen¨¦tica mendeliana es representable mediante condiciones que se dan en el cruzamiento.
Es decir, buena parte de los libros de texto podr¨ªan contener algoritmos expresados en un lenguaje de ordenador.
Por tanto, conocer un lenguaje de programaci¨®n tendr¨ªa la ventaja de poder realizar c¨¢lculos y aplicaciones en un ordenador (en web o en un m¨®vil) y adem¨¢s entender muchos de los conocimientos b¨¢sicos en distintas materias.
Ense?emos programaci¨®n en escuelas e institutos
S¨ª, ense?emos programaci¨®n en la escuela, aunque antes debemos resolver un problema arduo: quien ense?a programaci¨®n debe saber programar. Menos de un 1 % de la poblaci¨®n conoce un lenguaje de ordenador y los que lo conocen seguro que tienen ya empleo y un buen sueldo.
Antes de integrar la programaci¨®n de ordenadores en el curr¨ªculo educativo hay que formar y acreditar profesorado, y eso es complicado.
Existe una soluci¨®n alternativa: si para aprender idiomas lo mejor es hablarlo con nativos, nada mejor que un ordenador para ense?arnos su propio lenguaje.
Esta es la opci¨®n que hemos validado en la Universidad de M¨¢laga y encontramos que, con poco esfuerzo, el alumnado puede aprender un lenguaje de programaci¨®n sencillo y las bases del pensamiento computacional ya en la educaci¨®n primaria.
Un primer estudio en este sentido se realiz¨® en 2017, demostrando que se puede iniciar la ense?anza de la programaci¨®n desde primero de primaria; y como es de esperar no hay diferencias de g¨¦nero al aprender a programar). Lo que desmotiva a las chicas para elegir la carrera de Inform¨¢tica debe depender de otros factores, pero en ning¨²n caso de sus capacidades.
Los datos hablan por s¨ª mismos: se utilizaron registros de la actividad de alumnado de 6? de primaria en 68 colegios de distintas localidades de Espa?a y sobre la plataforma ToolboX.Academy, que incluye un curso de programaci¨®n gratuito realizable en unas 10 horas, tambi¨¦n en formato de (serie infantil ), con los siguientes resultados: de un total de 820 estudiantes, 344 superaron todas las tareas de las cinco primeras unidades, es decir, un tercio del curso de programaci¨®n que propone esta plataforma, incluyendo conceptos de comandos b¨¢sicos y bucles (repetici¨®n de comandos).
Dos tercios del curso fueron completados por 210 estudiantes, que llegaron a usar variables, entrada de datos y la estructura condicional (¡°si¡ entonces¡¡±).
Finalmente, 43 estudiantes lograron superar el curso completo, aprendiendo a formar condiciones complejas (con operadores relacionales como distinto o mayor o igual, y l¨®gicos como el ¡°y¡±, el ¡°o¡± y el ¡°no¡±) en bucles indefinidos del tipo ¡°mientras se d¨¦ esta condici¨®n, hacer¡¡±.
Lo m¨¢s destacable de estos resultados es que este progreso se consigue, por lo general, sin ayuda, es decir, el alumnado va aprendiendo a utilizar estos conceptos computacionales viendo ejemplos y mediante ensayo-error. No es necesario que la maestra o el maestro responsable del grupo les asista.
La conclusi¨®n es muy significativa: con el empleo de una herramienta web gratuita, durante s¨®lo 10 horas a lo largo de 6? de primaria, curso tras curso, en seis a?os lograr¨ªamos una alfabetizaci¨®n del 5 % de la poblaci¨®n juvenil.
Tambi¨¦n se ha observado que cuando se incentiva al alumnado y se le da un m¨ªnimo apoyo, la casi totalidad del grupo completa el curso de programaci¨®n, por lo que, siendo ambiciosos, podr¨ªamos apuntar hacia una alfabetizaci¨®n computacional completa.
Se puede deducir de este trabajo de campo que ense?ar a programar es m¨¢s una cuesti¨®n pol¨ªtica que t¨¦cnica o pedag¨®gica: si el ordenador sabe ense?ar, el alumnado va a aprender sin esfuerzo.
Los ni?os y ni?as de hoy, los nativos digitales, no solo tienen la oportunidad de aprender a utilizar m¨®viles y aplicaciones, han de saber programarlas, crearlas.
Los nuevos lenguajes y la alfabetizaci¨®n computacional han llegado para quedarse, ser¨¢n necesarios para ser competitivos en el futuro y tambi¨¦n, por qu¨¦ no, para disfrutar el maravilloso reto l¨®gico que nos plantean.
Francisco Vico es catedr¨¢tico de Ciencias de la Computaci¨®n e Inteligencia Artificial, Universidad de M¨¢laga. Alberto Zamora Jim¨¦nez es responsable de Tecnolog¨ªa, Universidad de M¨¢laga. Miguel Mej¨ªa Jim¨¦nez es graduado en Ingenier¨ªa Inform¨¢tica, Universidad de M¨¢laga. Raimon Segura Morera es Lead Developer - Full Stack Engineer, Universidad de M¨¢laga.
Este art¨ªculo fue publicado originalmente en The Conversation. Aqu¨ª puede leer el original.
Puedes seguir a EL PA?S TECNOLOG?A en Facebook y Twitter o apuntarte aqu¨ª para recibir nuestra newsletter semanal.
Tu suscripci¨®n se est¨¢ usando en otro dispositivo
?Quieres a?adir otro usuario a tu suscripci¨®n?
Si contin¨²as leyendo en este dispositivo, no se podr¨¢ leer en el otro.
FlechaTu suscripci¨®n se est¨¢ usando en otro dispositivo y solo puedes acceder a EL PA?S desde un dispositivo a la vez.
Si quieres compartir tu cuenta, cambia tu suscripci¨®n a la modalidad Premium, as¨ª podr¨¢s a?adir otro usuario. Cada uno acceder¨¢ con su propia cuenta de email, lo que os permitir¨¢ personalizar vuestra experiencia en EL PA?S.
En el caso de no saber qui¨¦n est¨¢ usando tu cuenta, te recomendamos cambiar tu contrase?a aqu¨ª.
Si decides continuar compartiendo tu cuenta, este mensaje se mostrar¨¢ en tu dispositivo y en el de la otra persona que est¨¢ usando tu cuenta de forma indefinida, afectando a tu experiencia de lectura. Puedes consultar aqu¨ª los t¨¦rminos y condiciones de la suscripci¨®n digital.