Il pensiero computazionale

Non esiste a tutt’oggi una definizione universalmente condivisa di cosa sia il pensiero computazionale.
Esso però, può essere spiegato come

quel processo mentale che l’individuo mette in atto per fornire ad un altro individuo, o ad una macchina tutte e sole le "istruzioni" necessarie affinché questi eseguendole sia in grado di portare a termine il compito dato.

Spesso si associa il concetto di pensiero computazionale ad abilità specifiche tipiche dei professionisti in ambito informatico, eppure si tratta di una skill particolarmente importante e, soprattutto trasversale, che ogni individuo dovrebbe sviluppare.

Infatti, “il pensiero computazionale va ben oltre l’uso della tecnologia, ed è indipendente da essa (sebbene la sfrutti intensivamente): non si tratta di ridurre il pensiero umano, creativo e fantasioso, al mondo “meccanico e ripetitivo” di un calcolatore, bensì di far comprendere all’uomo quali sono le reali possibilità di estensione del proprio intelletto attraverso il calcolatore.”

Il pensiero computazionale prende in prestito concetti e strumenti propri dell’informatica per trovare soluzioni innovative e creative ai problemi di ogni giorno, quindi esercitarlo significa non limitarsi a fornire risposte preconfezionate, ma imparare e acquisire quelle abilità che consentiranno di sviluppare un’attitudine mentale utile ad affrontare problemi di ogni ordine e grado.

Ciò si rivela utile in una società come quella attuale, nella quale i giovani si trovano ad affrontare un mercato del lavoro che chiede sempre maggior flessibilità e capacità di adattamento: la probabilità di cambiare più volte lavoro durante la propria carriera lavorativa è sicuramente più frequente oggi che in passato, determinando la necessità di imparare a destreggiarsi tra diverse discipline. Il pensiero computazionale risponde efficacemente a questa necessità.

Sono in molti oggi a credere che il pensiero computazionale costituisca la quarta abilità di base oltre a saper leggere, scrivere e fare di calcolo ed è per questo motivo che va facendosi strada sempre più la convinzione che debba essere insegnato, appreso ed esercitato fin dai primi anni di scuola. In questa direzione si muovono le raccomandazioni dell’Unione Europea in materia di istruzione, recepite dal MIUR anche con l’introduzione della programmazione nelle scuole a partire dalla primaria.

Come già accade con la fisica e le scienze, i bambini devono essere, quindi, accompagnati ad assimilare leggi e concetti che regolano il mondo digitale. Capire i principi sottesi al funzionamento delle nuove tecnologie significa fornire al bambino gli strumenti necessari non solo a comprendere le procedure per la risoluzione dei problemi, ma soprattutto a divenire in prima persona artefice e “inventore” delle soluzioni stesse. In questa prospettiva s’inserisce il pensiero computazionale, il quale permette di ragionare in maniera creativa su problemi e soluzioni. “Applicare il pensiero computazionale permette di acquisire una comprensione del mondo più completa che rende in grado di percepire e costruire modelli di cose e concetti da una varietà di prospettive, ciascuna delle quali conduce direttamente agli aspetti computazionali di ciò che è percepito. Il pensiero computazionale è alla base di gran parte dell’informatica, e la comprensione di come 'pensare in modo computazionale’ offre una preziosa sensibilità sul funzionamento dei computer, e del motivo per cui si comportano in quel modo.”

L’apprendimento, dunque, non si baserà solo sul “come?” e sul “cosa?”, ma soprattutto sul “perchè?” determinando, attraverso il Coding, l’acquisizione da parte degli allievi non solo di competenze tecniche, ma anche di nuove competenze cognitive su come affrontare e risolvere i problemi. L’informatica permette di preparare gli allievi a comprendere le conseguenze del cambiamento tecnologico, agire sulla realtà utilizzando le tecnologie esistenti e svilupparne di nuove.

I benefici in termini di sviluppo cognitivo, quindi, risultano rilevanti alla luce di una realtà quotidiana in continuo mutamento, che necessità di una continua codifica.

Si ritiene acquisito il fatto che il pensiero computazionale si fondi su abilità cognitive che trasformano “i problemi del mondo reale, solitamente percepiti come sistemi complessi, disordinati, definiti solo in parte, ambigui, in una forma appropriata e adeguata alle caratteristiche di un sistema automatico di elaborazione che può operare senza ulteriore assistenza da parte di un essere umano."

Ad oggi il modo più diffuso e studiato per favorire l’acquisizione del pensiero computazionale è quello d’insegnare a programmare. Imparare a programmare, però, è qualcosa di molto complesso e bisogna individuare le metodologie giuste per introdurlo in relazione al contesto e all’età degli allievi. In particolare, l’approccio metodologico rivolto a bambini e ragazzi deve guardare non solo alla programmazione in sè ma anche alle caratteristiche intrinseche del pensiero computazionale indipendenti dallo strumento “linguaggio di programmazione”, tenendo presente che lo scopo non è quello di creare dei professionisti, ma quello di diffondere il più possibile questo modo di pensare, di modo che sia applicato nella vita di tutti i giorni e in tutte le altre discipline e attività professionali.

La metodologia d’insegnamento prevede un approccio di tipo “ludico”, attraverso il quale  bambini e ragazzi possono avvicinarsi al mondo dell’informatica e della programmazione prendendo parte a laboratori ed attività che usano il gioco per imparare dalla sperimentazione (learning by doing). I laboratori forniscono “uno spazio libero, cui è possibile accedere senza troppi vincoli, partecipando e condividendo l’esperienza con altri ragazzini con gli stessi interessi.”

In particolare l’utilizzo di un linguaggio di programmazione semplificata chiamato SCRATCH e realizzato dall’università MIT di Boston (tra le più note nel campo della ricerca tecnologica), permette ai giovanissimi di entrare in contatto con la parte più oscura dell’informatica, ovvero di capirne il funzionamento, facendoli passare da uno status di utilizzatori più o meno passivi a quello di realizzatori.

Inoltre questo approccio più pratico che teorico rappresenta un momento di rottura con la didattica nozionistica tradizionale, avendo il vantaggio d’interessare maggiormente i ragazzi  facendoli diventare protagonisti della propria formazione fino al punto di divenire loro stessi “mentori” per altri coetani, secondo il concetto “peer to peer”: i ragazzi più grandi raccontano la loro esperienza e guidano i più piccoli nei processi creativi. Ciò garantisce una maggiore diffusione delle nozioni legate alla programmazione e, quindi, del “pensare computazionalmente”.

Un approccio più ludico e disinteressato ha il vantaggio di abbassare il livello di ansia e stress che, normalmente, si può riscontrare durante il processo di apprendimento di tipo tradizionale. Ciò aiuta i ragazzi nell’acquisizione di nuove nozioni, ed in particolare chi di loro ha qualche problema d’apprendimento. In genere la valorizzazione dell’aspetto visivo ed operativo-interattivo dell’apprendimento semplifica determinati processi cognitivi complessi con significative ricadute positive.

Si può concludere dunque che “le tecnologie digitali restituiscono al ragazzino una sensazione positiva di riuscita che lo incoraggia lungo le varie tappe del suo percorso di apprendimento.”