Pensament computacional: per què hauria de ser present a les escoles?


"El pensament computacional és la nova alfabetització del segle XXI." Jeannette Marie Wing 



Estic convençuda que el pensament computacional hauria de ser una competència bàsica a desenvolupar a les escoles. Intentaré explicar per què em sembla tan important.

El pensament computacional és un conjunt d'estratègies que es poden aplicar a resoldre qualsevol tipus de problemes. Encara que inclogui la paraula "computacional" no és un tema tecnològic, va sobre estructurar el pensament, ser creatiu i ser rigorós. El que passa és que aquest conjunt d'estratègies ha estat molt útil al camp de la informàtica, però també es fa servir de manera inadvertida quan redactem un escrit - i volem ordenar les nostres idees, estructurar-lo correctament - o quan intentem comprendre un text - fent abstracció de les idees més importants. També el fem servir per estudiar, per plantejar un experiment de ciències i, sobre tot, quan fem matemàtiques. Sol passar que les persones competents en matemàtiques tenen molt desenvolupades, potser sense ser-ne conscients, les estratègies pròpies del pensament computacional. És per això que aquestes persones solen ser bons informàtics, i és per aquest mateix motiu que quan els estudis d'informàtica no existien van ser matemàtics els que els van fundar. Però què passaria si en comptes d'aprofitar les habilitats desenvolupades (no se sap com) per alguns alumnes per adreçar-los a carreres tecnològiques ho féssim al revés i ajudéssim a tots els alumnes a desenvolupar aquestes estratègies i aplicar-les a resoldre problemes de qualsevol tipus? Això els podria ajudar amb la llengua, la història, les ciències, (per suposat) les matemàtiques i, en general, per resoldre qualsevol problema?

El pensament computacional té a veure amb la detecció, generalització i ús de patrons. Ens ajuda, doncs, a analitzar dades, crear models i predir resultats.
Té a veure amb l'abstracció i, per tant, amb la capacitat per extreure informació rellevant de qualsevol conjunt de dades, en qualsevol format (textos, nombres, gràfics, imatges...)
Té a veure amb la creació d'algoritmes; és a dir, conjunt d'instruccions ordenades que ens permeten obtenir un resultat. Inclou els conceptes de variable, condició, iteració, recursivitat... Tot conceptes que potser ens sonen molt estranys però que contínuament fem servir sense ser-ne conscients quan triem entre diferents opcions, quan passem d'un cas general a un exemple concret, quan ens adonem que una acció és en realitat la repetició d'una acció més petita, o quan necessitem fer el mateix procés sobre un subconjunt de les dades que estem tractant.
Té a veure amb la modularitat: és a dir, la descomposició de problemes grans en problemes més petits, i la connexió entre les petites solucions proposades per obtenir la solució global.
Té a veure, també, amb la detecció d'errors (els programadors en diuen debugar, o depurar programes) que és la recerca sistemàtica de l'errada dins d'un algoritme. Inclou, doncs, la capacitat de reproduir les instruccions pas a pas i ser extremadament rigorós i observador, i entendre bé els conceptes de causa/efecte.

Saber fer tot això és imprescindible per crear programes informàtics. També ho és en robòtica i en moltes tasques de caràcter tecnològic. Però, si ho pensem bé, són estratègies d'aplicació universal. Amb l'entrada de les tecnologies a les aules moltes d'aquestes estratègies s'han vist reforçades. Però com que no són estratègies de l'àmbit tecnològic sinó estratègies de pensament, per què no treballar-les des de diferents àmbits d'una manera més sistemàtica? Des d'aprendre a planificar una setmana fent servir l'agenda a trobar la idea principal d'un article del diari. Des d'aprendre a fer servir algoritmes matemàtics a seguir les instruccions d'una recepta. Des de recollir dades i trobar-hi patrons a elaborar diagrames de flux per representar una pràctica de laboratori. Des de descomposar una tasca i repartir-la entre els membres del grup a crear una simulació d'una situació real. També, és clar, aprendre a programar! Quina millor manera de desenvolupar aquestes estratègies que resolent problemes a través del codi? Però, atenció, també podem programar de manera "unplugged", sense ordinadors.

Jo he fet a classe, amb alumnes de segon d'ESO, aquesta activitat i va ser fantàstica: Fem de robots.

El pensament computacional és una eina molt potent que és difícil de valorar en tota la seva importància fins que no es coneix. És sovint malinterpretada en ser confosa amb un aprenentatge mecànic i de poc valor, allunyat de la creativitat, quan la creativitat és un dels seus ingredients principals. Es nodreix d'una combinació de rigor i estructuració combinada amb una gran capacitat pel pensament divergent: pensar solucions noves i originals, però executades amb rigor. El pensament computacional és un requeriment per poder entendre's amb les màquines, però també per resoldre tot tipus de problemes. Un informàtic pensa d'una manera especial... crec que val la pena que deixi de ser especial perquè tothom, encara que no tingui cap intenció de programar, aprofiti l'enorme potencial d'aquestes estratègies.

Entrades populars d'aquest blog

A la recerca de l’objectiu perdut

Aprendre o aprovar

Sobre l'aprenentatge