Pensiero Computazionale: Cos’è e Come si Lega al Coding

Home Pensiero Computazionale: Cos’è e Come si Lega al Coding
cover blog articolo pensiero computazionale
Pensiero Computazionale: Cos’è e Come si Lega al Coding
| 16 Giugno 2021 | Pubblicato in Materie STEMTaggato Materie STEM

Pensiero Computazionale: Significato, Definizione e Come Applicarlo

Alla base di moltissimi dei meccanismi e delle tecnologie su cui la società umana è fondata vi sono due concetti fondamentali: il coding ed il pensiero computazionale. Quando si parla di pensiero computazionale si fa riferimento ad una serie di processi mentali che portano alla formulazione di un problema e all’espressione della sua risoluzione di modo che una macchina o un umano possa eseguirla. Questo processo è alla base della programmazione, ma può essere utile anche in moltissime attività quotidiane: in particolare, il pensiero computazionale è uno strumento importante per l’apprendimento dei bambini e può essere efficacemente sviluppato tramite il coding e la robotica educativa. Ma come può essere inserito nella didattica? Ne abbiamo parlato con Francesco Passantino, ricercatore, professore e founder di CoderDojo Palermo, che ci ha spiegato cos’è il pensiero computazionale, qual è il suo legame con il coding, e come può divenire strumento di apprendimento per bambini e ragazzi.

Pensiero Computazionale: Significato

L’apporto dell’informatica alle nostre vite è stato ormai normalizzato dalla maggior parte di noi: tutti utilizziamo quotidianamente i cellulari, i tablet ed altri strumenti senza pensare ai meccanismi che ne permettono il funzionamento, una rete complessa di algoritmi scritti in sequenza grazie ad un linguaggio specifico che permette a queste macchine di svolgere determinati compiti. Questo processo di analisi di un problema e della sua risoluzione non è proprio solo dei robot, ma può essere applicato anche alle azioni e ai problemi della vita quotidiana e del lavoro, e molti di noi lo fanno costantemente senza accorgersene, quando di fronte ad un obiettivo analizziamo le vie più efficaci per raggiungerlo, pianificando la soluzione ed eseguendola. Questo processo è basato su due concetti fondamentali, il pensiero computazionale ed il coding.

Ma che cos’è il pensiero computazionale, come si lega al coding, e perché sta diventando così centrale nella didattica e l’apprendimento dei ragazzi? Ce ne ha parlato Francesco Passantino, founder di CoderDojo Palermo con il quale realizza una serie di iniziative per la diffusione del “Pensiero Computazionale”, destinate a ragazzi tra i 7 ed i 15 anni ed ai loro insegnanti.

Cos’è il Pensiero Computazionale? Definizione e Storia

Il pensiero computazionale è un concetto coniato dall’informatica e docente dell’MIT Jeanette Wing, nel 2006, sebbene il termine fosse stato già introdotto da Seymour Papert negli anni ’80, nel libro Mindstorms.

Wing definiva il pensiero computazionale, o computational thinking, come un atteggiamento, un set di capacità che tutti dovrebbero avere ed utilizzare, non solo gli informatici. Ma cos’è quindi il pensiero computazionale? Viene definito come l’insieme delle procedure e delle operazioni che un esecutore o agente mette in atto in modo meccanico e inconsapevole di fronte ad un determinato contesto o problema, per trovarne la soluzione o raggiungere un obiettivo, indipendentemente dal fatto che queste vengano eseguite da un umano o un computer.

Nel suo articolo, Wing diceva:

“Il pensiero computazionale è un processo di formulazione di problemi e di soluzioni in una forma che sia eseguibile da un agente che processi informazioni.”

Sappiamo infatti che i computer vengono utilizzati per risolvere i problemi, ma prima ancora di risolvere un problema è importante comprendere con quali mezzi può essere risolto, ed è proprio il pensiero computazionale che ci permette di farlo.

In breve, il pensiero computazionale è un metodo di problem-solving che rende possibile individuare un problema complesso, capirlo, riformularlo in maniera semplificata così da sviluppare possibili soluzioni, presentandole successivamente in un modo tale che possano essere comprese sia da una macchina che da un umano.

L’esecutore delle istruzioni non conosce il significato delle stesse, ed elabora dati di cui pure non conosce il significato, per questo si parla di un’esecuzione meccanica che potrebbe essere eseguita da chiunque solo mediante l’applicazione delle istruzioni, la cui espressione ed efficacia è di fondamentale importanza. Per Wing, utilizzare il pensiero computazionale significa dunque pensare come un programmatore, riducendo, trasformando, simulando, applicando i principi della scienza informatica per la formulazione di istruzioni che portino alla risoluzione di problemi logici complessi.

Il termine computazionale viene in effetti dall’informatica, dalla parola “computing”, ovvero legato al calcolo, al computare, in quanto il pensiero computazionale richiede le capacità, i processi mentali e le pratiche di computazione di chi studia e opera nell’informatica, dunque il mindset richiesto per capire un problema e progettare le computazioni mediante le quali un computer o elaboratore di informazioni può operare in maniera efficace per raggiungere la soluzione definita. Wing sosteneva come il pensiero computazionale completasse e combinasse il pensiero matematico e ingegneristico con quello creativo.

“Il ritmo dell’innovazione nel mondo continua ad accelerare, le persone devono imparare, per necessità ed opportunità, ad adattarsi in condizioni di costante cambiamento. Nella transizione dalla “società industriale” alla “società creativa”, il successo nel futuro – per gli individui di tutte le età, per le comunità, per le aziende e per le nazioni nel loro insieme – sarà basato sulla capacità di pensare e agire in modo creativo. Il pensiero computazionale, mescolando scienza, matematica, tecnologia, ingegneria, strumenti digitali e creatività artistica, opera in quest’ambito,” spiega Passantino.


Scopri la quarta edizione dei Digital Camp a Bari dove i tuoi figli impareranno le basi del linguaggio di programmazione con Minecraft, divertendosi e socializzando.. Guarda qui il programma e registrati subito!
12-16 Luglio

Digital Camp Bari

  • Partecipazione: da 89€ a 129€
Scopri di più

L’Importanza del Pensiero Computazionale nel Quotidiano

La rivoluzione del pensiero computazionale non è nel semplice risolvere i problemi, ma capire il problema per formulare un processo che porti alla sua risoluzione, processo che può essere eseguito da un agente o esecutore, il quale mette in pratica istruzioni in maniera meccanica e inconsapevole, replicando il pensiero umano.

In una successiva rielaborazione del concetto di pensiero computazionale, Wing diceva:

Il pensiero computazionale è l’insieme dei processi mentali coinvolti nel formulare problemi e le loro soluzioni in modo che le soluzioni possano essere rappresentate in una forma che possa essere efficacemente eseguita da un agente di elaborazione dell’informazione.

Come si evince da questa definizione, il pensiero computazionale non è sinonimo di pensare come una macchina o un computer, per questo possiamo riassumere questo concetto come l’applicare i concetti ed i principi base del processo informatico nella risoluzione di problemi o attività logiche dalla complessità variabile, non necessariamente legate alla sfera informatica ma relative a qualunque ambito. Questa capacità si rivela infatti oltremodo utile nella vita di tutti i giorni, e può essere sfruttata nelle più comuni azioni quotidiane, nella risoluzione di qualunque problema o situazione di vita, e insegnata e sviluppata anche al di fuori dell’informatica, sebbene siano proprio l’informatica ed il coding i mezzi più importanti per lo sviluppo del pensiero computazionale.

La stessa Wing sosteneva:

Quando uso il termine pensiero computazionale, la mia interpretazione delle parole “problema” e “soluzione” è ampia. Non intendo solo problemi matematicamente ben definiti  ma anche problemi del mondo reale.

Si tratta dunque di un metodo, una strategia che consente di risolvere i problemi di qualunque ambito della vita, approcciandoli in modo critico, razionale e ragionato con soluzioni esprimibili formalmente per essere eseguite, iterabili e riadattabili per risolvere problemi simili.

Le Fasi del Pensiero Computazionale

Il pensiero computazionale viene definito con un processo iterativo con delle fasi o tecniche ben precise che portano alla formulazione di una soluzione ad un problema, così che possa essere risolto da una macchina o un umano.

Secondo la International Society for Technology in Education, il pensiero computazionale permette di:

  • Rappresentare i dati del problema mediante dei modelli specifici;
  • Organizzare i dati del problema in maniera logica;
  • Formulare e analizzare i problemi così che possano essere risolti mediante un esecutore (un computer o un umano);
  • Segmentare le soluzioni in sequenze di step ordinati, accuratamente descritti ovvero automatizzarle mediante algoritmi;
  • Identificare le possibili soluzioni per implementare la più efficace ed efficiente in termine di effort e risorse;
  • Astrarre tali processi per la risoluzione di problemi simili;

Il pensiero computazionale non è altro dunque che un processo logico-creativo che porta a pensare in modo algoritmico a livelli multipli di astrazione, scomponendo un problema e semplificandolo in diverse parti da risolvere una per volta per risolvere il problema intero.

Generalmente, si tende a delineare il pensiero computazionale mediante tre fasi principali:

  • Astrazione: ovvero la formulazione del problema;
  • Automazione: espressione della soluzione;
  • Analisi: esecuzione della soluzione e valutazione.

Come si evince, in nessuna di queste fasi si fa riferimento espressamente alla sfera informatica, né tantomeno all’esecuzione della soluzione da parte di un robot o computer. Il pensiero computazionale può essere utilizzato nella programmazione e nel coding, così come nella robotica educativa, utilizzando gli strumenti di queste discipline, ma anche nelle situazioni normali di vita che coinvolgono la decomposizione di un problema, l’espressione di una soluzione mediante istruzioni e l’esecuzione delle istruzioni: trovare il percorso più breve per raggiungere un luogo, eseguire una ricetta, montare un oggetto, assemblare i LEGO, sono tutti processi che coinvolgono il pensiero computazionale e presuppongono una serie di istruzioni precise, ordinate, chiare e ripetibili che permettano di raggiungere una soluzione efficace a chiunque le stia eseguendo. Queste istruzioni rappresentano di fatto un algoritmo, in quanto se osservate alla lettera porteranno certamente alla soluzione e potranno essere applicate ad un altro problema identico con lo stesso risultato.

Quali Sono i Concetti e gli Strumenti Principali del Pensiero Computazionale?

Il pensiero computazionale, come abbiamo visto, consente, attraverso concetti della scienza informatica, di formulare e risolvere problemi, definire sistemi e capire il comportamento umano. Questo è possibile grazie allo sviluppo di una serie di strumenti e processi mentali ed intellettuali strettamente legati all’informatica, come la sicurezza nel trattare la complessità dei problemi e l’accettarne l’ambiguità e conciliarla con il rigore dei processi mentali, ma che sfociano anche nell’ambito della comunicazione, della dimensione umana e della creatività.

Mitchel Resnick, “LEGO Papert Professor of Learning Research” e direttore del “Lifelong Kindergarten” al MIT di Boston, propone il modello della spirale dell’apprendimento creativo, come ci spiega Passantino:

•          Imagine (Immaginare): usare la fantasia

•          Create (Creare): trasformare le idee in azione

•          Play (Giocare): provare, sperimentare le creazioni

•          Share (Condividere): collaborare alle creazioni degli altri, documentare, raccontare

•          Reflect (Riflettere): ragionare, valutare, migliorare la creazione

•          Imagine (Immaginare): immaginare nuove idee e trarre nuovi spunti

modello apprendimento creativo

“Per poter incoraggiare e sostenere questo tipo di esperienze di apprendimento creativo, nel 2007 il gruppo di ricerca di Resnick ha sviluppato Scratch, il più utilizzato sistema per il Coding ed il Pensiero Computazionale. Scratch, raccoglie l’eredità di LOGO, un linguaggio di programmazione didattico, progettato nel 1967, e rappresenta il punto di partenza per tutti gli altri linguaggi di programmazione, ambienti, sistemi ed hardware che sono arrivati successivamente,” spiega Passantino.

Resnick ha indicato quattro spunti per aiutare gli studenti a pensare da creativi, incoraggiando chi lavora su progetti basati sulle passioni, in collaborazione con i pari e in uno spirito giocoso, ispirando il modello delle “quattro P dell’apprendimento creativo”:

•          Projects (Progetti): creare progetti, passando continuamente attraverso la spirale dell’apprendimento creativo, sviluppando una comprensione più profonda del processo.

•          Passion (Passione): quando le persone lavorano su progetti a cui tengono, sono disposte a lavorare più a lungo e più duramente. Si possono sviluppare progetti diversi (arte, giochi, storie, musica, animazioni, ecc.), ognuno può lavorare sui propri interessi.

•          Peers (Pari): la creatività come processo di gruppo, persone che condividono e costruiscono il proprio lavoro partendo da quello degli altri o combinandone le parti. Integrando la programmazione con una comunità online, Scratch è progettato per l’interazione sociale.

•          Play (Giocare): il software incoraggia gli esperimenti, percorsi creativi, che incoraggiano gli studenti a provare cose nuove.

Coding e Pensiero Computazionale

Il pensiero computazionale è dunque strettamente legato alle scienze informatiche ed è fondamentale svilupparlo sin dall’infanzia. Uno dei modi più efficaci per farlo è coltivarlo mediante l’utilizzo degli strumenti del coding, il processo di scrittura di linguaggi ed istruzioni destinate alle macchine.

Negli ultimi anni sono moltissime le scuole, sia dell’infanzia che primarie, che hanno inserito il coding tra le attività svolte in classe, per sviluppare nei bambini la capacità di programmare ed imparare i linguaggi di programmazione in modo ludico e semplice, sia in modalità “unplugged”, ovvero senza strumenti digitali, che con computer, tablet e software semplici e accessibili e comprensibili anche per i più piccoli, da Scratch a Minecraft Educativo, giochi interattivi e robotica educativa, programmi di programmazione visuale che permettono di programmare in modo semplice e vedere i risultati del proprio processo mentale.

Ma che cos’è il coding? Letteralmente si tratta della “programmazione informatica”, ed include tutti processi base del pensiero computazionale, quei percorsi mentali che portano alla soluzione di un problema mediante l’utilizzo di specifici strumenti intellettuali.

Il coding è fondamentale strumento per lo sviluppo del pensiero computazionale – il quale di per sé è legato alla linguistica dell’informatica – in quanto insegna le basi del problem solving e del pensiero logico, a scomporre e segmentare un problema in parti più semplici che consentano di trovare una soluzione.

Il coding costituisce inoltre un modo pratico ed immediato di applicare la teoria del pensiero computazionale e le sue fasi e strumenti illustrati precedentemente divertendosi, lasciando spazio alla creatività e alla fantasia, imparando al contempo un nuovo linguaggio ed un nuovo modo di vedere i problemi e le situazioni e di esprimere in modo chiaro ed efficace le proprie idee e le proprie soluzioni, sviluppando così anche la propria intelligenza e pensiero critico.


Scopri la quarta edizione dei Digital Camp a Bari dove i tuoi figli impareranno le basi del linguaggio di programmazione con Minecraft, divertendosi e socializzando.. Guarda qui il programma e registrati subito!
12-16 Luglio

Digital Camp Bari

  • Partecipazione: da 89€ a 129€
Scopri di più

Pensiero Computazionale a Scuola: Come Introdurlo nella Didattica

Jeannette Wing sosteneva come il pensiero computazionale dovesse essere aggiunto, assieme alla scrittura, alla lettura e all’abilità di calcolo, tra le capacità analitiche di ogni bambino, il quale deve essere in grado di pensare per livelli di astrazione e di coniugare il rigore al processo creativo. È molto importante per gli insegnanti contribuire a sviluppare nei propri studenti le capacità di problem solving e pensiero critico, invitandoli a scomporre i problemi, strutturando i ragionamenti in modo da trovare soluzioni che siano chiare, efficaci e semplificate.

Imparare il pensiero computazionale è fondamentale per i bambini, non necessariamente per imparare a programmare o per destreggiarsi nell’informatica, ma per sviluppare strumenti logici e mentali cruciali all’apprendimento, alla risoluzione dei problemi, da utilizzare sia nello studio che nella vita quotidiana.

Ma come è possibile stimolare il pensiero computazionale nei bambini, e quali sono gli strumenti necessari agli insegnanti?

Come abbiamo già detto, il coding è una delle vie più immediate, stimolanti e divertenti e può essere introdotto nelle lezioni per sviluppare il pensiero computazionale negli studenti, come sosteneva anche Seymour Papert, padre del pensiero computazionale ed uno dei primi docenti ad applicare il coding anche alla didattica, riconoscendo come il questo fosse il mezzo ideale per mettere i bambini di fronte ad un problema da risolvere in maniera efficace e diretta ed il computer uno strumento importante per l’apprendimento.

Al giorno d’oggi sono moltissimi i programmi a disposizione degli insegnanti o dei genitori per insegnare il coding ai ragazzi, da inserire nella didattica e nello studio giornaliero per migliorare non solo le capacità informatiche ma anche quelle cognitive. L’obiettivo di questi programmi non è necessariamente quello di educare al coding quando di favorire nei ragazzi l’attitudine al problem solving e al pensiero critico.

“Sono disponibili tanti strumenti e percorsi, per supportare la creazione di innovativi e validi programmi di apprendimento basati sul pensiero computazione. La proposta di Sprint offre alcune soluzioni, efficaci e già testate, indicando le fonti per approfondire la ricerca tematica. Come possiamo iniziare ad introdurre il pensiero computazione? Il modo migliore è iniziare testando esercizi ed esperienze collaudate e, subito dopo, creando nuove proposte ed inedite soluzioni. Per essere preparati a pianificare programmi utili e coinvolgenti per gli studenti,” conclude Passantino.

Bibliografia e Link Utili

  • Seymour Papert. Mindstorms: Children, computers, and powerful ideas. Basic Books Inc, 1980.
  • Jeannette M. Wing. Computational Thinking. Communications of the ACM Vol. 49(3) ACM, Marzo 2006.

Esplora altri Articoli sul Coding per Bambini e Pensiero Computazionale

0 0 votazione
Article Rating
Sottoscrivi
Notificami
guest
0 Commenti
Feedback in linea
Vedi tutti i commenti

Potrebbe interessarti anche...

copertina articolo imparare con minecraft

A Scuola con Minecraft: Il Videogioco Educativo per la Didattica

| 1 Giugno 2021

Imparare con Minecraft: Insegnare ai Bambini il Coding e le Materie STEM Giocando Minecraft è un videogioco che dal 2009 […]

Leggi di più…

Linguaggio di programmazione per bambini

Linguaggi di programmazione per bambini

| 19 Maggio 2021

Perchè nel 2021 è importante insegnare a programmare ai bambini e ai ragazzi Nel 2021 la programmazione per i bambini […]

Leggi di più…