Asignatura de lenguaje de programación.

Porque el futuro nos exige cada vez más cosas y todas distintas, preparar a nuestra generación de relevo es ir un pie adelante con el avance. Además, la capacidad de creación junto a la tecnología es infinita, ¿por qué no darle la capacidad de crear herramientas a todos esos pequeños? Reflexionemos sobre esta nueva meta con este artículo de Andoni Sanz:

Lo que empezó siendo un tímido fenómeno hace algunos años se está convirtiendo en una parte importante del currículum educativo. Estamos hablando de enseñar a programar un sistema informático, sea éste un ordenador, un dispositivo móvil, un wearable o una placa Arduino, en edades cada vez más tempranas.

¿Cuáles son las virtudes de programar desde el colegio?

  • Pensamiento computacional
  • Creatividad
  • Excelencia
  • Habilidades lógica

Comencemos a descubrir las virtudes.

Pensamiento computacional: programar supone hablar el mismo idioma que la máquina. A esto se le llama pensamiento computacional y requiere de múltiples habilidades.

Por un lado, es necesario aprender a analizar problemas, descomponerlos y buscar soluciones compatibles: no es lo mismo diseñar software para un móvil, un robot o un PC, que tienen características y dispositivos distintos. Durante la fase de análisis se identifican los elementos, sus relaciones o los flujos de datos, entre otros, y para ello se utilizan una serie de herramientas, como diagramas que representan las entidades del sistema. El proceso en sí exige una capacidad analítica y de abstracción importante. Este análisis no es tanto informático, sino que puede extenderse a otras disciplinas.

Creatividad: la programación y la creatividad van de la mano. Si la resolución de problemas necesita una buena dosis de ella, el diseño de interfaces, videojuegos o elementos multimedia necesitan aún más.

La plataforma de programación que se elija también impondrá sus propias necesidades creativas. La informática ha evolucionado en pocos años y a lo largo de su vida ha ido creando nuevas formas de entender la creación de programas, dando lugar a las generaciones de los lenguajes. Por ejemplo, elegir Java implica saber programar pensando en objetos, por lo que el diseño de la solución se verá condicionado a tal característica. Otros lenguajes, como Logo, requieren de inteligencia espacial y geométrica para su uso; o con Scratch la programación estructurada por bloques tendrá todo el protagonismo. Sin olvidar los lenguajes de recuperación de datos como SQL o las funciones Google Sheets o Microsoft Excel.

Excelencia: si algo es cierto acerca de la programación es que un mismo problema puede implementarse usando docenas de soluciones distintas, desde las peores que consumen tiempo y recursos de forma ineficiente, hasta las mejores que literalmente “vuelan”.

Por tanto una programación eficiente consiste en la utilización apropiada de los recursos de la máquina, la mejora de los algoritmos, de la velocidad, del peso o cantidad de líneas de código del programa, la posibilidad de reutilización, la escalabilidad o posibilidad de hacerlo crecer, la claridad del código, etc.

Habilidades lógicas: un programa informático se compone básicamente de variables, secuencias, condiciones y repeticiones (y hasta objetos). Normalmente se representan mediante algoritmos, grafos o tablas, en donde se observa cómo se modifican los valores de las variables según qué acciones se ejecutan, al estilo de la máquina de Turing.

Todas estas relaciones lógicas pueden plasmarse en papel. Una vez más no es necesario el uso de un ordenador para diseñar un programa. Los ejercicios pueden ser cercanos a la vida real. Por ejemplo, puede diseñarse un objeto denominado persona, con la variable energía, y las acciones comer, correr y dormir, y construir un grafo que muestre los cambios de estado de la variable en función de las acciones. Cuando se hace el trabajo de análisis y diseño sobre papel, especialmente cuando no se tiene mucha experiencia, la programación suele ser más sencilla.

Basado en: https://www.akdemia.com/blog/la-importancia-de-programar-desde-el-colegio