Hablamos de Pensamiento Computacional, como procesos de pensamiento y formas de resolver problemas que permiten comprender cómo funcionan las computadoras pero que no necesariamente se agotan en ellas.
¿Qué quiere decir eso? Que no es un concepto que interese solo a quienes enseñan informática en las escuelas, su potencia radica en la posibilidad de ser puerta de entrada al vínculo entre tecnología y las distintas áreas de conocimiento.
Para entenderlo mejor, vamos a detenernos en algunos de los procesos que lo componen.
Reconocimiento del problema y descomposición en Subproblemas
Imaginemos que somos el Departamento de Reconocimiento de Problemas de un prestigioso espacio de Innovación Educativa. Contamos con tres especialistas: Flavia, nuestra psicopedagoga, Jorgelina, experta en informática y Alex, que se especializa en datos y estadística.
Imaginemos ahora que nos llega este problema: necesitamos crear una encuesta para saber a qué juegan las infancias en los recreos.
La tarea de nuestro Departamento es reconocer a qué especialista derivar cada problema.
¿A quién lo derivarían?
Probablemente en este caso, hayan pensado en solicitar la ayuda de Alex. Es claro que tendrá herramientas interesantes para aportar.
Imaginemos entonces, que nos llega un segundo problema: durante la pandemia en nuestra ciudad, hay mayores tasas de deserción escolar.
Esta escena es más compleja, si imaginamos un abordaje desde la salud mental o la capacidad de concentración en una situación de alarma como la pandemia podríamos derivarlo a Flavia. Pero también podemos asociar la deserción con la necesidad de generar nuevas plataformas o redes de conexión entre docentes y familias / estudiantes y en ese caso derivarlo a Jorgelina.
En este caso, el problema es tan grande que no vemos los límites del mismo. No sabemos por dónde empezar a abordarlo.
Un primer proceso del Pensamiento Computacional es reconocer cuál es el problema con el que estoy trabajando, para poder luego descomponerlo en subproblemas más pequeños y manejables.
Construcción de algoritmos
¿Qué pasaría si alguien que vive en el otro lado del mundo les pide que le expliquen cómo bailar un baile típico de su país?
Pensemos cómo serían por ejemplo, las instrucciones para bailar “La Macarena”. Debo indicar una posición inicial, luego una serie de instrucciones (qué hace cada brazo, el meneo, el saltito) y la posición final desde la cual se comienza a repetir el movimiento.
Los algoritmos también son instrucciones. Son paso a paso taxativos que tienen un punto de partida y un punto de llegada, ¿por qué taxativos? Porque si le decimos a aquella persona del otro lado del mundo que mueva un brazo hacia adelante y no le indicamos cuál, nuestras instrucciones pueden llegar con interferencia, generando errores en el proceso.
Cuando pensamos en algoritmos, pensamos en formas de darle instrucciones a la computadora para que realice estos pasos y llegar a un estado final, por eso debemos aprender algunas particularidades de su lenguaje para construir las instrucciones más precisas posibles.
Reconocimiento de patrones
Tómense un momento para pensar, ¿cuál será el número que falta en esta serie?
1 - 7 - … - 343
¿Lo adivinaron? ¿Y en esta serie?
5 - 6 - 9 - 6 - 7 - … - 7
Más difícil, ¿no? Va con pista: miércoles = 9.
Al final les compartimos las soluciones 😉
Pero tomemos un momento para analizar, ¿qué pasa en estas secuencias? Podemos leerlo como un código que tenemos que descifrar, la única forma de encontrar el resultado es comprobar que hay una lógica que se mantiene y que si sigo esa lógica puedo adivinar cualquier número de la secuencia.
Eso sucede con los patrones, son regularidades, elementos constantes dentro de un conjunto de datos que son variables. Su reconocimiento sirve también para encontrar puntos en común con problemas a los que ya les encontramos solución.
Puesta a prueba
El último proceso que presentaremos hoy y el que finaliza la resolución de un problema: probar su solución. ¿Funciona nuestro algoritmo? ¿Qué fallas encontramos? ¿Qué podríamos mejorar?
En programación existe un proceso llamado “debuggear”, limpiar el código para quitarle errores de sintaxis o de diseño que puedan hacer que el mismo no funcione correctamente. Es un proceso de prueba y error hasta encontrar qué es lo que está fallando. Lo mismo sucede en la “Puesta a prueba”, sean instrucciones para realizar un paso de baile, la resolución de un problema matemático identificando patrones o una aplicación que creamos en la computadora, este proceso nos ayudará a realizar ajustes para comprobar si lo que creamos, lo que queremos comunicar, funciona.
¿Y en las aulas?
El Pensamiento Computacional no es una varita mágica que viene a resolver los problemas de acceso y brecha digital, pero sí nos propone herramientas didácticas valiosas para mover la aguja cuando pensamos en el para qué educación tecnológica en la escuela. Pensar en estudiantes que no utilizan el celular para buscar información en clase, si no que se preguntan ¿cómo funciona el filtro del buscador?, pensar en estudiantes que no solo detectan problemas si no que interiorizan procesos que ayuden a resolverlos, pensar en estudiantes que no son simple usuarios de la tecnología que existe si no que pueden crear la tecnología que vendrá.
¿Cómo imaginamos nuestras aulas atravesadas por el Pensamiento Computacional? ¿Imaginan una clase de literatura donde se propone el reconocimiento de patrones? ¿Y una clase de biología donde se construyan modelos y luego se pongan a prueba? ¿Es posible trabajar estos conceptos a través del juego y de manera desenchufada?
El Pensamiento Computacional no está tan lejos de lo que sucede en las escuelas, los desafíos que nos tocan se relacionan con nombrarlo y generar nexos entre las diferentes áreas que permitan al estudiantado un vínculo con la tecnología crítico, productivo y creativo.