Il Pensiero Computazionale

Consiglio questo post e analoghi sull'argomento ai genitori di bambini dai 3 agli 13 anni e insegnanti.

Viene spontaneo pensare all'informatica quando si sente parlare di Pensiero Computazionale (Computational Thinking) e in fondo è corretto.
Non bisogna però cadere nell'errore che sviluppare il pensiero computazionale serva solo per diventare degli informatici.
Anche se non c'è una definizione precisa per questo concetto, non si sbaglia se si definisce il pensiero computazionale come il modo in cui pensa un informatico. Quando un informatico elabora un algoritmo e scrive del codice in un certo linguaggio per risolvere un problema sta effettivamente applicando i concetti del pensiero computazionale, ma è possibile insegnare tale pensiero senza dover imparare i linguaggi di programmazione utilizzati nell'informatica.
labyrinth-1015638_640.jpg
Foto di Peggy und Marco Lachmann-Anke da Pixabay

Il termine è stato coniato per la prima volta nel 2006 da Jeannette M. Wing in questo articolo dove non viene data una vera e propria definizione, ma una direzione da seguire per insegnare i concetti fondamentali dell'informatica applicabili a diversi campi.
Si è successivamente, nel 2010, provato a dare una più precisa definizione da parte della stessa Wing insieme a Jan Cuny e Larry Snyder:

Computational thinking is the thought processes involved in formulating problems and their solutions so that the solutions are represented in a form that can be effectively carried out by an information-processing agent.

Caratteristiche del Pensiero Computazionale

Per sviluppare il Pensiero Computazionale sono necessari:

  1. Un obiettivo da raggiungere;
  2. Un esecutore di comandi;
  3. Una rappresentazione chiara di informazioni e istruzioni.

In un classico compito di sviluppo del pensiero computazionale, devono essere fornite in maniera chiara delle istruzioni ad un esecutore, sia esso una persona o una macchina, che le esegue alla lettera, allo scopo di raggiungere un obiettivo.
La persona che deve risolvere il problema/raggiungere l'obiettivo dando delle istruzioni all'esecutore, si trova a elaborare dei processi mentali ben definiti, come:

  • rappresentare in maniera astratta il problema e le informazioni da rappresentare;
  • ridurre in problemi più piccoli il problema iniziale, fino ad arrivare a problemi elementari;
  • fornire delle istruzioni precise e non ambigue perchè saranno eseguite senza nessuna interpretazione da parte dell'esecutore;
  • trovare sempre la soluzione migliore tra quelle disponibili;
  • trovare il linguaggio con cui trasmettere queste informazioni a seconda del tipo di esecutore con cui ha a che fare;
  • mettersi nei panni dell'esecutore, per accertarsi che le informazioni che riceve siano sufficienti e adeguate a svolgere correttamente il compito;
  • generalizzare il processo per applicarlo ad un più ampio spettro di problemi;

Creatività

Nonostante possa sembrare tutto molto rigoroso e privo di gradi di libertà, in realtà i modi per risolvere il problema sottoposto sono sempre molteplici e uno più efficiente e fantasioso dell'altro. Ed è nel modo con cui si chiede di risolvere all'esecutore un determinato compito che si sviluppa e concretizza la creatività, in quanto si identificano degli schemi, delle ripetizioni, delle scorciatoie, sfruttandoli per raggiungere brillantemente e in maniera creativa la soluzione.

L'errore non è un problema, anzi!

Non può non essere presente almeno un errore durante lo svolgimento del compito da parte dell'esecutore e fa parte del processo mentale di elaborazione individuare il punto in cui si è presentato, procedendo a ritroso nelle istruzioni per poi correggere il comando per eliminarlo. In informatica questa operazione è chiamata "debugging".

Competenze trasversali

Quelle che si acquisiscono con questo metodo sono delle competenze trasversali (grado di astrazione, empatia, problem solving, debugging) applicabili in molteplici campi, non solo informatici o più generalmente scientifici.

Strumenti adottati

Per sviluppare e allenare il pensiero computazionale si adottano degli strumenti fisici o informatici.
Nel primo caso si parla di unplugged, nel secondo caso si fa riferimento a strumenti plugged. Ce ne sono molti di vario genere e per diverse fasce d'età.


Qui posso citare come unplugged il gioco CodyRoby, stampabile liberamente e interamente costruito su cartoncino, a cui hanno fatto seguito CodyFeet e CodyColor come anche diversi giochi educational che comprendono un robottino e un tappettino su cui farlo muovere, ecc.
Nella versione plugged il più famoso è il sito code.org con il sistema di programmazione a blocchi.


Ci sarà modo di parlare più approfonditamente di questi e altri giochi in successivi post.

Fonti:
Programma il futuro
Articolo su Pensiero Computazionale

H2
H3
H4
3 columns
2 columns
1 column
Join the conversation now
Logo
Center