Alice nel paese del coding

L'educazione, digitale di mia figlia è un tema che mi sta davvero molto a cuore. Alla luce delle diverse notizie che leggo e delle diverse classifiche stilate a livello europero che ci inchiodano all'ultimo posto in fatto di competenze digitali (ne avevo parlato qui), sento una forte esigenza di riuscire a fornirle tutte quelle competenze digitali che le consentano di utilizzare con dimestichezza la tecnologia di oggi e di trasmetterle quella curiosità, voglia di sperimentare, testare, mettere in discussione, che le consentiranno di approcciarsi a qualsiasi nuova tecnologia con cui avrà a che fare domani. Costruirle insomma un percorso di educazione digitale a livelli, per fornirle basi solide e magari una ulteriore passione e perchè no una via per il suo futuro lavorativo. Non ho maturato da oggi questa idea, ma sin dalla sua nascita, accanto a tutte quelle letture classificate come "Dad for dummies: dal pampero ai pampers in poche semplice mosse", ho iniziato ad appassionarmi al coding for kids e a come sia importante per i bambini approcciare questa tematica sin dalla tenera età. Da tempo è oggetto di riflessione, implementazione e ovviamente insegnamento nei paesi più sviluppati: già dal 2012 la Gran Bretagna ha varato il progetto Computing in Schools, nel 2013 in Francia l’Académie des sciences pubblicò un rapporto di circa 35 pagine dal titolo L'enseignement de l'informatique en France: il est urgentde ne plus attendre che sottolineava l’importanza dello studio dell’informatica nelle scuolee poi ovviamente l'Every Student Succeeds Act, firmato nel 2015 dal Presidente Obama che nel suo discorso annuale disse "In the coming years, we should build on that progress, by offering every student the hands-on computer science and math classes that make them job-ready on day one". Fortunamente in Italia non siamo stati a guardare, e nonostate le mille difficoltà, dovute al cronico problema di carenza di competenze e infrastrutture, l'educazione digitale e l'insegnamento del coding stanno inziando a fare breccia nei programmi didattici delle scuole. Siamo incredibilmente tra i primi paesi a livello UE, per attività ed eventi legati a questo tema, tutte raccontate e dettagliate all'interno dell'iniziativa Programma il futuro che ha come obiettivo generale lo sviluppo nella scuola dell'insegnamento dei concetti scientifici di base dell'informatica e dell'educazione all'uso responsabile della tecnologia informatica. Progetto che è stato riconosciuto come iniziativa di eccellenza europea per l'istruzione digitale nell'ambito degli European Digital Skills Awards. Siamo stati il primo paese a sperimentare l'introduzione strutturale nelle scuole dei concetti basi dell'informatica e del conding usando strumenti di facile utilizzo. Ad oggi il progetto vanta la partecipazione di 3 milioni di studenti, 38 mila insegnanti e oltre 7 mila scuole in tutta Italia. Tuttavia i vantaggi dell'insegnamento del coding fin dalla scuola dell'infanzia, le diverse iniziative fatte e i progetti intrapresi, vengono spesso comunicate male e capite peggio, grazie anche ad una stampa miope e praticamente priva di competenze in questo campo.

L'origine del termine coding e del pensiero computazionale

Il termine coding deriva dall'inglese e la traduzione letterale è programmare. Applicato al campo informatico, il coding, è il linguaggio usato per consentire agli utenti di interagire con computer, robot e via discorrendo, per assegnare compiti, eseguire comandi. Far fare qualcosa ad una macchina insomma, che sia avviare un sistema operativo o una ricerca su internet o mandare un WhatsApp quando viene premuto il bottone invio e via discorrendo. Il coding si basa sul cosiddetto pensiero computazionale. Ovvero l'insieme dei processi mentali che analizzano la struttura di un problema e provano a risolverlo attraverso una serie di procedure logiche e creative. L'espressione Computational Thinking fu usata per la prima volta da Seymour Papert nel 1996 nel libro Mindstorm, in cui proponeva una particolare didattica della matematica attraverso il linguaggio di programmazione chiamato Logo. Nel corso degli anni, diversi studiosi hanno cercato di precisare in maniera definitiva il significato di pensiero computazionale, ma solo nel 2006 Jeannette Wing direttrice del Dipartimento d'Informatica della Canergie Mellon University, riuscì a formulare una definizione capace di mettere quasi tutti d'accordo: il pensiero computazionale è un processo di formulazione di problemi e di soluzioni in una forma che sia eseguibile da un agente che processi informazioni. Provando a riassumere, potremmo definire il pensiero computazionale come un processo iterativo basato su 3 fasi:

  • formulazione del problema o astrazione: rappresenta lo studio attraverso il quale si riesce ad identificare lo stato iniziale del problema e ovviamente l'obiettivo da raggiungere
  • espressione della soluzione (automazione): definizione e studio dell'insieme di azioni da intraprendere per risolvere il problema
  • esecuzione della soluzione e valutazione della stessa (analisi): implementazione delle soluzioni progettate e verifica del loro corretto funzionamento.
work-img

Oggi il pensiero computazionale viene considerato come la quarta abilità di base, insieme a leggere, scrivere e contare, in quanto molto utile nella vita di tutti i giorni. Si tratta infatti di una competenza di carattere generale, che può essere utilizzata e applicata in qualsiasi settore, tecnologico e non. Competenza che consente di sviluppare un processo-logico-creativo che permette di scomporre un problema in più parti e affrontarlo un pezzo per volta. Di fatto il pensiero computazionale è legato a doppio filo al coding e all'informatica in quanto significa imparare una nuova lingua digitale, coding, per dialogare con un pc informatica dandogli in pasto comandi per fare qualcosa. Significa infine entrare in una logica matematica fatta di problem solving e creatività logica per nulla simile a quella di chi usa semplicemente il PC, lo smartphone o un qualsiasi programma.

Perchè è importante per i bambini?

Parliamoci chiaro, i nostri figli sono dei veri nativi digitali. Nascono di fatto con smartphone, internet e dispositivi vocali. Imparano ad utilizzarli e ad interagirci praticamente dopo il primo anno di vita, con una capacità di apprendimento a dir poco sbalorditiva. Questo ci porta spesso a credere che siano dei geni dell'informatica, che siano in grado di padroneggiare tutti i device senza alcun problema e sopratutto sappiano navigare in rete in tranquillità e sicurezza sin da piccoli (diciamo a partire dai 10/12 anni). Niente di più sbagliato. Quello che i nostri figli sanno fare è utilizzare un pezzo di hardware che risponde a determinati input che danno (aprire una applicazione, fare una foto e via discorrendo); non significa assolutamente che sappiano esattamente quello che stanno facendo e soprattutto cosa rischiano e perchè. Insegnare il coding ai bambini, se da una parte li aiuta a sviluppare il pensiero computazione, dall'altro svolge un ruolo di primaria importanza, nel renderli edotti sul funzionamento di un qualsiasi computer (cambiano le interfacce ma le logiche di un sistema operativo o di un programma sono più o meno similari). Significa abituarli ad essere utilizzatori attivi della tecnoglogia e ovviamente serve a fornire loro tutte quelle competenze di base, legate al mondo della tecnologie, utili a fargli capire e sopratutto percepire tanto le opportunità quanto i rischi. Il coding rappresenta una fantastica opportunità per aiutare i bambini a sviluppare tutte queste capacità in maniera semplice e funzionale e sopratutto giocando. Proibire loro, oggi, la possibilità di sperimentare e divertirsi con la tecnologia, lo trovo poco sensato. Certo, non ne devono abusare, ma piuttosto che far passare loro un'ora a guardare i cartoni, sarebbe preferibile, a mio modesto avviso, dare loro in mano un device opportunamente configurato e tarato sull'età del bambino, sia in termini di account che di protezione e accesso alla rete, e lasciarli sperimentare, giocare, ragionare. Le app non mancano: puzzle, quiz, giochi animati, libri da colorare e storie da plasmare, contesti immersivi che stimolano la fantasia e aguzzano l'ingegno: vuoi andare avanti o tornare indietro, prova a toccare i tasti, prima poi troverai quello giusto e imparerai.

Non serve sempre e solo un pc

La rete è piena di programmi e guide su come iniziare i bambini al coding. Tengo a precisare che non tutto deve essere fatto davanti ad uno schermo. Ci sono infatti tantissimi giochi manuali che hanno sempre lo stesso identico scopo: aiutare i bambini a sviluppare il pensiero computazionale, giocando! Di seguito provo ad elencare quelli che attualmente uso con Alice e quelli che vorremmo provare. Ovviamente sono quasi tutti software gratuiti e con tante guide da seguire per capire il loro funzionamento. La maggior parte offre anche la lingua italiana, così da facilitare ulteriormente il compito.

Il primo è Code.org una organizzazione no-profit dedicata all'espansione dell'accesso alla formazione scolastica in informatica. Lanciata nel 2013 dai fratelli Hadl e Ali Partovi con un video che promuoveva l'informatica. Progetto sviluppato interamente in modalità open source, disponibile anche in lingua italiana, al suo interno ha diversi piani di studio ed esercitazioni rilasciate con licenza Creative Commons, così da permettere ad aktrui di creare ulteriori risorse. Ad oggi i loro corsi sono utilizzati da decine di milioni di studenti e da un milione di insegnanti in tutto il mondo.

Il secondo è Scratch un ambiente di programmazione di tipo grafico. Ispirato alla teoria costruzionista dell'apprendimento è adatto a studenti, insegnanti e anche genitori ed è utilizzabile per progetti pedagocici e di intrattamento. Sviluppato nel 2003 dal gruppo Lifelong Kindergarten del MIT Media Lab ha come mission quello di fornire a tutti i ragazzi opportunità per immaginare, creare e collaborare attraverso le nuove tecnologie. Ad oggi conta circa 170 milioni di visitatori unici, oltre 60 milioni di progetti creati e una community di circa 16 milioni di persone, 370mila sono italiane. Ha anche una versione Junior che consente di creare storie e giochi interattivi, ideale per bambini da 5 a 7 anni.

Il terzo è Tinker piattaforma che consente di realizzare giochi e programmi profondamente integrata con il mondo di Minecraft e con alcuni dei giochi più amati dai bambini tra i quali Lego. Barbie e Hot Wheels. Esclusivamente in lingua inglese, a differenza delle altre due sopra citate è un progetto freemium ovvero è possibile fruire gratis della piattaforma ma con alcune limitazioni (ovviamente sbloccabili a pagamento.) Sono previsti 3 diversi livelli a seconda dell'età del bambino: 5-7 anni con istruzioni vocali e istruzioni semplici, 8-13 anni con metodo drag and drop coding e infine 14+ dove è possibile scrivere direttamente codice con i linguaggi più conosciuti (JavaScript, Phyton, HTML, CSS e via discorrendo).

Per quanto riguarda invece l'insegnamento del coding senza computer, nel corso degli anni sono stati sviluppati diversi giochi per prataicamente tutte le fasce d'età. Tra questi vi segnalo Cubetto, un fantastico gioco per bambini a partire da 3 anni, realizzato interamente in legno, che combina i principi di apprendimento del metodo Montessori con concetti di programmazione per computer. Scegliendo e inserendo dei pezzi di gomma sagomati nella una tavola di controllo, il bambino dovrà aiutare Cubetto a raggiungere la meta, superando gli ostacoli e scegliendo il percorso migliore. Ovviamente ad ogni pezzo è associata una azione o una direzione. Tanto semplice quanto geniale. Sviluppato da 2 italiani, Filippo Yacob e Matteo Loglio, nel 2014/2015, ha fatto il debutto su Kickstarter nel 2016, diventando da subito l'invezione ed-tech più crowdfunded della storia; oggi è sostenuto dai migliori programmi di istruzione in tutto il mondo. In Italia è ufficialmente distribuito ufficialmente da Campustore.it

work-img

Il mio approccio con Alice

Circa 2 settimane fa, quasi per gioco, ho iniziato a mostrarle i 2 tool citati sopra, per capire se generessaro in lei un minimo di curiosità. La risposta è stata decisamente positiva. Sono riuscito così a ritagliarmi circa un'oretta al giorno, solitamente prima di cena, da dedicare interamente a lei e al coding. Non la viviamo come un obbligo, se non le va, facciamo altro. Tuttavia, negli ultimi giorni è diventato quasi un gesto automatico: ore 18,30/18:45 mi chiede se ho finito di lavorare, spegne la ciabatta e mi porge il Pixelbook (benedetto il giorno che l'ho comprato). Si siede con me, apre il Pixelbook, tap sull'icona dedicata e si parte. Ogni volta che si avvia Scratch la sua faccia si illumina e con quella tipica cadenza milanese mi guarda e dice Papà, per prima cosa, dobbiamo finire il livello di ieri.; a quanto pare si iniziano a intravedere i primi frutti. Non sapendo ancora leggere, ho provato a spiegarle l'associazione tra colore e azione (ad esempio con il blu puoi farlo muovere, con il giallo parlare e così via); successivamente abbiamo dato un nome al nostro piccolo pupazzo e stop. Ho deciso di lasciarla muoversi e sperimentare in maniera del tutto libera, seguendo le sue mosse e restando a disposizione in caso di bisogno. E anche qui, senza mai darle la soluzione, ma cercado di farle capire cosa premere/spostare/toccare al fine di ottenere quello che vuole. L'incredibile versatilià del Google Pixelbook, mi consente inoltre di farle apprezzare la diversa interazione possibile tra lei e il pc: via touchscreen e GooglePen oppure via tastiera/trackpad. La qualità e la luminosità del display unitamente alla capacità di poter essere reclinato di 360° rendono l'esperienza comoda e poco affaticante per la vista; la configurazione con account bambina e la presenza di una configurazione di rete ad hoc, proteggono ovviamente dati, navigazione ed eventuali click o tap accidentali.

work-img

Inoltre ho ordinato Cubetto scelto dopo aver visto con lei alcuni video su Youtube e alcune simulazioni di utilizzo. Ho ovviamente provato a capire anche il suo interesse reale simulando il funzionamento di Cubetto attraverso il mio smartphone android e alcuni piccoli gadget che abbiamo a casa e pare piacerle. Quindi perchè non provare? Al massimo finirà in vendita su Ebay.

Al momento il tutto le piace, la incuriosisce e la diverte molto. Ma non voglio in alcun modo forzarla. Vorrei che lo prendesse come un gioco e non come un obbligo. Non voglio in alcun modo che le mie passioni diventino le sue. Certo, mi piacerebbe condividere con lei questa passione e trasformarla in un percorso di educazione digitale guidato, che le possa da un lato far apprezzare la bellezza e le potenzialità di tutta la tecnologia che ha e avrà a disposizione e dall'altra riesca a farle sviluppare quelle capacità analitiche e di pensiero computazionale che le torneranno sicuramente utili in futuro. Da papà vorrei che sviluppasse un approccio basato sulla curiosità, che le consentirà un domani di muoversi agevolmente in quel meraviglioso mondo che è l'informatica ma sopratutto di farlo in sicurezza o comunque conscia dei rischi. E se non vorrà, pazienza, continuerò sicuramente a provare a stimolarla in altri modi.