No solo enseñas programación: estás formando al ciudadano del futuro.

English version

La enseñanza de la programación a niños se ha vuelto un tema de alcance mundial. Son muchos los países que han adoptado como política de Estado la impartición de clases de programación y Ciencias de la Computación en las escuelas. Pero ¿qué motivantes hay detrás de esta política? ¿Realmente puede un niño aprender a programar? ¿Qué sentido tiene enseñar programación ahora, si la probablemente lo que aprenda ahora, cuando sea mayor ya esté obsoleto? ¿No es muy triste la introducción de lo virtual ignorando la realidad?

Todas estas interrogantes hacen bastante sentido, y han atravesado los debates en torno a la pertinencia de introducir este tipo de contenido a los jóvenes, no obstante mucho de estas preguntas obedecen mucho a imágenes infundadas, y prejuicios respecto de lo que involucran hoy las tecnologías e innovaciones digitales.

A grandes rasgos podemos agrupar las razones por las que debiera enseñar a sus hijos a programar en tres grandes categorías: por sus efectos pedagógicos, sus procesos de aprendizaje y por las transformaciones sociales:

1) Efectos pedagógicos.

El aprendizaje de programación tiene un efecto positivo en el desarrollo cognitivo y el proceso de aprendizaje. Existe vasta evidencia científica respecto del impacto positivo que tiene en los jóvenes, sobre todo a temprana edad, el contacto con contenidos y lenguajes de programación. Dentro de ellos se encuentra la mejora en la capacidad de entender conceptos y abstracciones -muy necesario para el estudio de las matemáticas y la física. Por otra parte desarrolla el pensamiento lógico secuencial, por cuanto ello es parte fundamental de la correcta ejecución de un código.

A su vez, experiencias internacionales respecto de la impartición de programación en las escuelas, han dado cuenta que mientras más a menudo y más tempranamente se introduzcan estos contenidos, generan una propensión mayor en el estudiantado a la resolución de problemas a través de soluciones de tipo informáticas, indistinto del área de conocimiento (sea esta humanista, científica, matemática, etc.). Esto último ha abierto una arista pedagógica que entiende la programación como un mecanismo de modernización de los procesos de aprendizaje, en que el conocimiento se vuelve un proceso activo de creación del que el estudiante toma parte y conciencia, por ejemplo, distinguiendo lo que entiende de lo que no, permitiéndole así explorar y explotar sus capacidades intelectuales de manera independiente, y de acuerdo a sus procesos mentales propios.

2) Proceso de aprendizaje.

Es divertido, versátil, relativamente fácil de aprender y una habilidad de largo aliento. Atrás han quedado los tiempos en que los lenguajes de programación se presentaban tras un sombrío recuadro lleno de símbolos indescifrables. Mentes innovadoras y comprometidas con la educación, han desarrollado una amplia gama de herramientas de aprendizaje de programación a través de nuevas interfaces gratuitas, abiertas a todo público, amenas y para todas las edades.

Lenguajes de programación en bloque de “arrastrar y soltar” es la última tendencia en lenguajes de programación. Estas son interfaces en que el usuario solo con un mouse, puede manipular piezas similares a un lego, con distintas órdenes y comandos en ellos, cuya combinación puede generar desde juegos simples en 2D, como un tenis de mesa virtual, hasta complejas aplicaciones para Smartphones o Tablets. Si bien el código de programación real al estilo de JavaScript o Python, sigue asimilándose a esa fría pantalla con símbolos, este tipo de lenguajes de interfaces mantienen una relación muy estrecha, alivianando el salto entre un estilo y otro. Algunos programadores profesionales utilizan ambas herramientas, como un apoyo visual que facilite el desarrollo de sus propios proyectos.

Además, dada la gran cantidad de comandos y combinaciones posibles de este tipo de interfaces, sus usos pueden extenderse y complementar cualquier actividad. Desde las más básicas, como resolver operaciones aritméticas o algebraicas (lo cual ya es mucho decir), hasta la creación y composición musical, o el diseño de cuadros e ilustraciones. Por ejemplo, el desarrollo de video juegos y aplicaciones móviles, permite conjugar la parte artística, con el diseño de escenarios y personajes, la capacidad literaria, con el desarrollo de una historia o contenido que apoye la aplicación, y la capacidad lógica, con la elaboración de una serie de comandos que desencadenen su funcionamiento.

No se trata de que todos los niños persigan carreras universitarias en programación, o sean científicos de la computación, sino de tener una base que les permita adaptarse y coevolucionar con un entorno tecnológico que ha ido permeando a todas las sociedades. Muchos de los más reconocidos profesionales de la computación se autoformaron sin la existencia de internet, smartphones o correo electrónico, pero el estar empapado con los lineamientos computacionales básicos, les permitió dialogar y comprender el lenguaje de las transformaciones en el área, y contribuir con las suyas propias.

3) Transformaciones sociales.

El entorno administrativo, político, económico, productivo, y laboral se escribirá en lenguajes de programación. Los estudiosos de la sociedad y la economía global han advertido con mucho énfasis los cambios que ya está generando el avance de la tecnología en los modos de producción. Las tecnologías de la información están creando cada día nuevos tipos de trabajos que antes no existían, a la vez que por medio de la automatización, van dejando obsoletos otros.

Big Data, Drones, Robótica, Internet de las Cosas, Inteligencia Artificial, Impresoras 3D, Piloto Automático –palabras que quizás haya escuchado- son términos cada vez más utilizados en la industria y cuyos alcances están recientemente comenzando a medirse y masificarse a velocidades inesperadas. En varios países se habla de que el campo laboral que registra más crecimiento y demanda es el informático, esto por cuanto son cada vez más las empresas que ofrecen este tipo de servicios, a la vez que antiguos sectores han tenido que abrirse e incorporarlos, siendo así esta área la que concentra a los profesionales mejores pagados, con los ambientes laborales más flexibles, y un envidiable balance vida/ trabajo.

Por otra parte, los sistemas democráticos se están apoyando en mecanismos virtuales para captar mejor los intereses y necesidades de sus ciudadanos y generar políticas públicas de bienestar y protección del medio ambiente; a su vez las empresas utilizan grandes cantidades de datos para evaluar a sus clientes, y personalizar sus productos. Estos procesos han ido penetrando en la compresión de la sociedad civil. De la misma forma en que resulta necesario para toda persona entender los mecanismos e instituciones que rigen a la sociedad, las reglas que lo gobiernan, y las potestades de cada cual, hoy también emergen nuevos tipos de expresiones de ciudadanía de tipo virtual, como la relativa a la protección, transmisión y administración de datos personales en la web.

Las tecnologías y algoritmos no son neutrales, por cuanto existen detrás de ellos una persona que los programa, perfectamente puede transmitirle sus sesgos raciales, religiosos, clasistas, entre otros. Así por ejemplo, una institución financiera podría negar una línea de crédito a personas por variables ajenas a su historial económico, o el Gobierno de un país podría ejecutar políticas que beneficien a cierto tipo de personas en desmedro de otras. Proteger el derecho a la no discriminación y a la justicia social implicará también entender la protección de datos y con ello, la programación que opera detrás de su procesamiento.

Fomentar la programación en los niños implicará más que solo manejar una habilidad rentable o tener un hobby “saludable”, será además una forma de prepararlos para asumir las responsabilidades del futuro.