Coding alla materna? Yes, we can

Pubblicato in data 22 gennaio 2016 su “Scuola e Tecnologia

Spesso parlo di coding e lo faccio rivolgendomi alle colleghe delle scuola primaria. L’altra sera sono stata a cena con delle amiche (e amiche di amiche), tra cui vi erano delle insegnanti di scuola materna. Durante la cena ho raccontato di come è possibile applicare il concetto di coding anche alla scuola dell’infanzia ed entusiaste dell’attività mi hanno chiesto di dettagliare il più possibile tutti i passaggi affinché l’esperienza di coding con i “piccolini” possa essere replicata da tutti gli interessati.

Materiali necessari da realizzare prima dell’inizio dell’attività (per ciascun gruppo):

– Ampio “tappeto” nero realizzato ad esempio con dei cartelloni bristol neri (suggerisco sei cartelloni della misura grande 70×100 per ciascun gruppo) che saranno stati precedentemente attaccati insieme con del nastro adesivo trasparente in modo da formare appunto un ampio tappeto nero.

– Reticolato bianco. Si può creare con la stoffa e cucire poi le varie strisce dove esse si incrociano, oppure utilizzare la carta modello e tagliarla per realizzare una griglia e poi incollarne i punti in cui si vanno a sovrapporre. L’unica attenzione è creare dei quadrati abbastanza grandi per far poi posizionare i bambini all’interno di essi.

– La testa del robot. Altro accessorio importante (soprattutto per il divertimento dei bambini) sarà avere a disposizione per ciascun gruppo una scatola di cartone grande abbastanza per far entrare in maniera comoda la testa di un bimbo. Questa scatola, intagliata per dare spazio agli occhi, naso e bocca sarà infatti il costume perfetto affinché ogni bimbo possa rappresentare il robottino che sta cercando la strada per tornare a casa.

– Gessetti colorati (blu, verde, rosso, bianco, grigio, etc…)

Attività.

Ipotizziamo di trovarci in una classe con 20 bambini. La prima attività da fare è farli sedere per terra a cerchio e mostrare loro un piccolo robottino. Possiamo raccontargli la storia del robottino che si è perso e che sta cercando di tornare sull’ astronave dove lo attendono i suoi genitori per riportarlo a casa. Attraverso l’attività che verrà proposta impareranno a dare le istruzioni necessarie al robottino per permettergli di trovare la strada per raggiungere l’astronave.

Il passo successivo è dividerli in gruppi. Secondo la mia esperienza il gruppo può essere funzionale se composto da un minimo di 3 fino ad un massimo di 5 bambini. Per questa attività sarebbe utile essere in compresenza o comunque cercare la collaborazione di una o più colleghe in modo che ciascuna maestra possa osservare e seguire attentamente massimo due gruppi (10 bambini).

Ad ogni bambino verrà data la possibilità di disegnare sul “tappeto nero” del proprio gruppo un ostacolo. Esso potrà essere una pozzanghera (una macchia blu), un cespuglio (una macchia verde), della lava (macchia rossa) etc… Un bambino infine dovrà disegnare anche l’astronave che riporterà il robottino a casa.

Terminato il disegno, un bambino per volta indosserà la “maschera” del robottino e sarà comandato dai suoi amici.

robottino

I comandi però dovranno essere del seguente tipo e ogni passo dovrà corrispondere ad un quadrato della griglia:

  • Un passo avanti
  • Un passo indietro
  • Un passo a destra
  • Un passo a sinistra

 

Per i più grandi, sarà anche possibile far anticipare alle istruzioni vocali, un proprio disegno rappresentante i comandi che si vorranno dare al robottino, con ad esempio delle frecce:

frecce.jpg

Questi fogli diventeranno delle rappresentazioni di stringhe di comandi veri e propri!

I più piccoli invece procederanno solo attraverso le indicazioni vocali, e al termine dell’attività, si potranno consegnare delle schede da colorare in cui vi è rappresentato il robottino (quello della storia raccontata) e la griglia sulla quale ogni bambino potrà replicare gli ostacoli del tappeto del proprio gruppo (o se molto piccoli posizionarli a piacere in posti diversi).

Competenze e abilità sviluppate

Cosa abbiamo ottenuto attraverso questa semplice attività unplugged?

 

  1. Si è lavorato sulla zona di sviluppo prossimale del bambino

La zona di sviluppo prossimale (ZSP) è un concetto introdotto dallo psicologo russo Lev Vygotskij è ed utile per spiegare come l’apprendimento del bambino si svolga con l’aiuto degli altri. La ZSP è definita come la distanza tra il livello di sviluppo attuale e il livello di sviluppo potenziale, che può essere raggiunto con l’aiuto di altre persone, che siano adulti o dei pari con un livello di competenza maggiore. In questo caso le maestre (ecco perché ogni insegnante dovrebbe stare al massimo su due gruppi) e i bambini più grandi della classe sono un ottimo aiuto per permettere al bimbo di acquisire nuove capacità senza sperimentare la frustrazione del fallimento.

 

2. Abbiamo fatto conoscere ed utilizzare ai nostri bambini gli algoritmi!

Un algoritmo è un procedimento che risolve un determinato problema attraverso un numero finito di passi elementari. In questo caso il problema è stato esposto all’inizio dell’attività attraverso la storia, ovvero far giungere il robottino fino alla sua navicella senza incorrere negli ostacoli. Seppur può sembrare un’attività banale, essa non lo è affatto poiché richiede l’attivazione di abilità cognitive specifiche come ad esempio la concettualizzazione del problema e l’attivazione della “previsione”. Se un bambino comanda al suo compagno “robottino” di fare un passo ma sul quadrato è stato disegnato un ostacolo, probabilmente non avrà attivato la previsione del movimento. Se un bimbo comanda di aggirare l’ostacolo, esso sta prevedendo una serie di passi che non sono ancora stati messi in pratica nella realtà, ma solo attraverso l’astrazione dei movimenti.

 

3. Hanno attivato la capacità del problem solving

Secondo lo psicologo Gaetano Kanizsa: « Un problema sorge quando un essere vivente, motivato a raggiungere una meta, non può farlo in forma automatica o meccanica, cioè mediante un’attività istintiva o attraverso un comportamento appreso».

Nel nostro caso i bambini devono riuscire a portare il robot alla navicella spaziale. Il problema è che sul percorso ci sono numerosi ostacoli e per aggirarli devono attuare una serie di strategie.

Per Piaget ed Inhelder vi è una distinzione tra immagini riproduttive (evocanti oggetti, situazioni o eventi noti) ed immagini anticipatorie (rappresentanti oggetti costruiti solo mentalmente). Essi affermavano che le immagini visive servivano da punto di partenza nell’attività di concretizzazione dei pensieri evocati dai simboli verbali e dai simboli matematici; questi ultimi, per la loro natura, sono astratti ma il solutore se ne fa un’immagine concreta (e questo è punto cruciale nel problem solving): proprio le immagini visive sono la chiave di volta di questa concretizzazione. In questa attività, la rappresentazione concreta del problema viene data dal tappeto nero, gli ostacoli, la navicella e la maschera per il robottino (immagini riproduttive), utili affinché i bambini possano sviluppare immagini anticipatorie (se faccio muovere di un passo il robottino, incapperà nell’ostacolo?)

Bruner distingue tre fasi di rappresentazione:

a) Esecutiva: fase in cui il mondo del bambino appare dominato dal “linguaggio” dell’azione, la realtà è assimilata dal soggetto nei termini di ciò che si fa o che si può fare

b) Iconica: si passa dal concreto reale al mondo delle immagini mentali astratte;

c) Simbolica: questa fase consiste nella “rappresentazione attraverso dei simboli” (ad es. il linguaggio). In un contesto matematico quando il bambino entra in contatto con simboli astratti inizia una rappresentazione simbolica.

Per Bruner, questi tre modi di rappresentazione si sviluppano in quest’ordine e ciascuno di essi è la base cognitiva per il successivo poiché sono collegati in modo evolutivo.

 

4. Nella memoria emozionale del bambino l’errore sarà unicamente un tentativo.

Sappiamo bene che l’apprendimento non si riferisce solo all’acquisizione di nuove conoscenze e capacità, ma esso fa riferimento anche agli atteggiamenti, i valori e le abitudini; riguarda pertanto tutta la sfera della personalità e non solo l’ambito delle conoscenze e della capacità esecutive. La dimensione emotiva svolge un ruolo fondamentale nell’apprendimento dei bambini soprattutto in età infantile. In questo caso, emozioni e sentimenti si intrecciano contribuendo attivamente (in maniera positiva o negativa), all’apprendimento. L’emozione positiva si trasforma così in sentimento positivo, ossia nel desiderio di apprendere, che gioca un ruolo primario soprattutto nell’ infanzia, periodo nel quale si innescano meccanismi di memorizzazione cosciente e volontaria. È in questo caso che l’errore (far giungere il robottino sull’ostacolo) deve essere unicamente inteso come tentativo attuato.

5. Ci stiamo avvicinando al coding

Come già detto in un precedente articolo, il termine coding contiene numerose sfaccettature, in generale può essere tradotto come l’attività di “fare” codice, o meglio di dare istruzioni, sì perché il linguaggio di programmazione nient’altro è se non l’indicare (attraverso delle regole stabilite) una serie di istruzioni (comandi) al pc che ha conseguentemente il compito di eseguirli.

Abbiamo gettato le basi del coding, poiché attraverso i comandi dati al robottino, si sono susseguite una serie di istruzioni che lo hanno portato fino alla meta!

Annunci

5 buoni motivi per lavorare con Scratch in classe

Pubblicato in data 14 gennaio 2016 su “Scuola e Tecnologia

Fino ad un anno fa, quando parlavo di Scratch ai colleghi, dovevo specificare bene cosa fosse e perché lo trovavo così interessante. Oggi fortunatamente sembra essere entrato nel linguaggio comune di molti insegnanti.

Se ancora ci fosse qualcuno che non lo conosce, di seguito vi riporto una brevissima descrizione:

Scratch (nome derivato dalla tecnica dei DJ che mixando e remixando i dischi provocano l’inconfondibile suono) viene ideato dal gruppo del Lifelong Kindergarten del MIT, guidato da Mitchel Resnick, e si ispira alla teoria costruzionista dell’apprendimento di Seymour Papert.

Scratch

a seconda domanda che all’epoca mi ponevano i colleghi (e che ancora in molti oggi mi ripropongono ) è: “ma perché se sono un insegnante dovrebbe interessarmi?

In realtà di motivi ce ne sono tantissimi. Provo ad elencare quelli secondo me più rilevanti:

1.Sviluppo del pensiero computazionale. In un recente articolo ho elencato una serie di attività unplugged, le quali senza l’utilizzo di computer, facilitano lo sviluppo del computational thinking. È pertanto vero che non è necessario utilizzare i mezzi informatici, ma è anche possibile fare una torta senza uova, latte, burro e cioccolato…ma sicuramente non sarà gustosa come se avessimo aggiunto tutti questi ingredienti! Allo stesso modo possiamo scegliere o meno di utilizzare il pc, non dimentichiamoci però che i nostri allievi sono quelli definiti “nativi digitali” o i ragazzi della “generazione app”. Personalmente odio queste etichette, ma non vi è dubbio che essi sono circondati dalle tecnologie. Muoversi all’interno di un ambiente familiare permetterà loro da un lato di sentirsi confortati e dall’altro saranno più disposti a mettersi in gioco.

2.Imparare a programmare. Questo è uno dei motivi che viene ancora oggi lungamente discusso quando lo espongo. In realtà ciascuno di noi impara a leggere e a scrivere seppur in pochi poi professionalmente diventano scrittori. L’abilità di saper leggere e scrivere è fondamentale per potersi collocare in un determinato contesto storico-culturale. Stessa cosa accade per la programmazione. Ogni giorno che passa siamo sempre più legati ai supporti informatici. Imparare a programmare permetterà ai nostri allievi di uscire dalla logica di meri fruitori diventando loro stessi degli sviluppatori. Una volta lessi una frase che mi fece pensare a lungo, essa diceva (più o meno così): nel futuro esisteranno due categorie di uomini, quelli comandati dalle macchine e quelli che comanderanno le macchine. Chi vorresti che fossero i tuoi figli? Certamente è un pochino apocalittica e fantascientifica, ma credo che spieghi benissimo l’importanza della conoscenza del linguaggio di programmazione indipendentemente dalle scelte professionali future.

3.Imparare ad imparare attraverso il problem solving. Le Raccomandazioni del parlamento europeo e del consiglio del 18 dicembre 2006 relative alle competenze chiave per l’apprendimento permanente (lifelong learning) contengono cinque punti fondamentali affinché la Conoscenza (con la C maiuscola!) possa diventare la forza motrice per lo sviluppo della nostra società. Una delle competenze necessarie è l’imparare ad imparare, ovvero sviluppare l’abilità di perseverare nell’apprendimento, di organizzare il proprio apprendimento sia a livello individuale che in gruppo a seconda delle proprie necessità, e alla consapevolezza relativa a metodi e opportunità. Il Problem solving, inteso come la capacità di risolvere problemi attraverso l’attivazione di processi cognitivi atti a trovare strategie efficaci, è una delle attività che favorisce il ragionamento e permette di apprendere dagli errori e di trovare soluzioni alternative spronando appunto alla perseveranza nell’apprendimento.

4.Sviluppare le competenze trasversali. Sempre più spesso siamo chiamati a lavorare in team. Chi lavora nella scuola sa bene quanto sia difficile a volte trovare un punto di incontro tra diversi attori seppur il fine ultimo sia condiviso e ben chiaro. Aiutare i nostri allievi a sviluppare il proprio “saper essere” attraverso attività collaborative, permetterà loro di affinare l’intelligenza emotiva. Sembra paradossale accostare attività informatiche con le competenze emotive, ma in realtà esse sono strettamente legate se si guarda ai gruppi di lavoro. Progettare attività didattiche collaborative con Scratch favorirà il collaborative learning e la peer education.

5.Iniziare a concepire l’errore unicamente come tentativo svolto. Durante una lezione su Scratch che ho tenuto all’Università di Roma 3 agli studenti del cdl di Scienze della Formazione Primaria, il Prof. Fabio Bocci intervenne sottolineando come il termine errore derivi dal latino error -oris, ovvero errare. Attraverso l’errare, ovvero l’esplorare è possibile scoprire. Ed ecco che l’errore tanto temuto dai nostri allievi diventa unicamente una modalità di apprendimento e non più un fallimento. La paura di fallire spesso impedisce il mettersi in gioco, diventa un blocco mentale che accompagna lo studente lungo tutta la propria carriera scolastica. Se l’errore non equivale più al fallimento, a qualcosa di cui ci si debba vergognare, ma diviene occasione di miglioramento, allora l’errore riacquista un significato neutro. Durante una conferenza stampa un giornalista chiese a Thomas Alva Edison : “Dica, Mr. Edison, come si è sentito a fallire duemila volte nel fare una lampadina?”. Ebbene, la risposta di Edison fu: “Io non ho fallito duemila volte nel fare una lampadina; semplicemente ho trovato millenovecento-novantanove modi su come non va fatta una lampadina”.

 

Dall’ora di informatica al coding

Pubblicato in data 9 Dicembre 2015 su “Scuola e Tecnologia

In principio era l’informatica.

Se torniamo indietro di qualche anno (ma in alcune scuole posso garantire che ancora oggi avviene ciò) era facile trovare l’ora di informatica, dove gli alunni venivano fatti spostare dalla propria aula verso la cosiddetta sala informatica. L’informatica all’epoca era pensata come una disciplina a sé stante, dove il docente addetto (già perché vi era un decente specifico, spesso lo “smanettone” dell’istituto capace di accedere al misterioso mondo contenuto nell’elaboratore elettronico), proponeva i primi passi nell’utilizzo del computer. L’informatica era pertanto quasi una disciplina a parte, slegata da tutte le altre e quasi fantascientifico era ipotizzarne un qualsiasi tipo di collegamento con gli altri insegnamenti. Anche la “sala” informatica o per le scuole più avanzate il “laboratorio” di informatica (oggi aula multimediale), aveva una struttura, un setting, standardizzato.

Anche l’informatica, seppur come già detto, era considerata “autonoma”, subiva le logiche di una didattica di tipo trasmissivo-informativo. Questa logica conteneva (e contiene) in sé alcuni assunti che possono essere così riassunti:

  • La conoscenza è un insieme di oggetti;
  • La mente è un contenitore (e parlando di alunni delle primarie, il contenitore è vuoto);
  • Se l’emittente comunica A, il ricevente recepisce A;

La metodologia era pertanto abbastanza semplice: il docente mostrava e spiegava, gli alunni eseguivano.

Imbuto di norimberga

Questo è ciò che avveniva in Italia, almeno fino alla fine degli anni ’90.

Con l’inserimento di un interfaccia sempre più user friendly e con la diffusione di internet, il pc diventa un oggetto “amico” per un pubblico sempre più ampio.

il pc dell'anno

L’ introduzione dei computer all’interno delle diverse realtà lavorative (spesso forzata da parte dalla dirigenza) permette alle diverse generazioni di rompere il ghiaccio.

Parallelamente anche nelle scuole il pc inizia ad assumere una diversa funzione. Da strumento relegato in un laboratorio, viene inserito (ma non integrato!) nelle classi, spesso come supporto per gli alunni disabili.

Se da un lato le generazioni più “anziane” devono fare i conti con i computer sul lavoro, le generazione più giovani iniziano a scoprire i videogame: Nintendo e Sony si affacciano sui mercati introducendo un nuovo modo di rapportarsi ai supporti informatici.

Quando in Italia nei primi anni del duemila i giovani iniziano a diventare fruitori di videogiochi, in America, (ma attenzione, circa 20 anni prima!!), un matematico di nome Seymour Papert, capisce il valore pedagogico del computer e lo introduce (stavolta integrandolo) nelle logiche di insegnamento.

Secondo Papert è possibile utilizzare il computer come ambiente d’apprendimento facilitante nella costruzione di nuove idee. Il computer viene usato dai bambini (grazie allo sviluppo da parte di Papert del linguaggio di programmazione LOGO), come macchina nella creazione di artefatti cognitivi facendo nascere all’interno di ambienti didattici quello che oggi viene definito “coding“.

Il termine coding contiene numerose sfaccettature, in generale può essere tradotto come l’attività di “fare” codice, o meglio di dare istruzioni, sì perché il linguaggio di programmazione nient’altro è se non l’indicare (attraverso delle regole stabilite) una serie di istruzioni (comandi) al pc che ha conseguentemente il compito di eseguirli.

Se l’interfaccia userfriendly ha avvicinato il vasto pubblico all’uso del pc, allo stesso tempo ha fatto smarrire la consapevolezza di ciò che “c’è dietro”: il codice appunto.

Già nel 2006, le raccomandazioni di Lisbona sul fronte delle “competenze chiave” distingueva le competenze di base in campo scientifico e tecnologico, associabili alle ore di informatica, dalle competenze digitali, associabili al più ampio coding.

Il 23 Settembre 2015 il MIUR ha dato avvio all’iniziativa “Programma il futuro” rivolta in particolare agli alunni della primaria. Il coding entra ufficialmente nelle scuole e questa volta addirittura dalla porta principale, ma cosa accade in realtà nelle aule?

Molte insegnanti non hanno mai avuto esperienza di coding, se ne sente parlare tantissimo ma poche hanno toccato con mano cosa vuol dire realmente “fare codice” e farlo in una logica costruttivista e non più (come accadeva per le ore di informatica) secondo un metodo istruttivo-trasmissivo.

Il tentativo del MIUR rischia pertanto di trasformare l’ora del coding nelle vecchie ore di informatica dove nuovamente ritroveremo questa attività separata da tutto il resto. E’ pertanto indispensabile coinvolgere gli insegnanti in attività specifiche al fine di vedere un utilizzo del coding connesso con le altre discipline.

Le insegnanti che hanno avuto la possibilità di sperimentare cosa vuol dire programmare (qui un articolo sulla recente esperienza del Teacher Dojo portata avanti dal Laboratorio di Tecnologie Audiovisive dell’Università di Roma 3) sanno bene che questa attività è essenzialmente multidisciplinare: dal digital storytelling, alla risoluzione di problemi ed esercizi matematici/geometrici, dall’educazione ambientale all’astronomia, ecc ecc.

Tutta la didattica può essere trasformata grazie all’utilizzo del pensiero computazionale, poiché esso è un processo mentale per la risoluzione di problemi costituito dalla combinazione di metodi caratteristici e di strumenti intellettuali, entrambi di valore generale.

Se nella risoluzione di problemi matematici è chiaro come sia necessario attuare un ragionamento di tipo scientifico (osservazione, formulazione di un’ipotesi, attuazione di un esperimento, analisi dei risultati), spesso ciò non è così evidente nelle altre discipline. In realtà il ragionamento per uno studente è identico, così come lo è per qualsiasi altra persona che si trova ad affrontare ogni giorno un dato problema (e non parlo di quelli accademici!).

Immaginiamo di essere arrivati a casa e di non trovare più le chiavi per entrare…non utilizziamo forse lo stesso ragionamento?

Dall’osservazione della situazione (non ho le chiavi) alla formulazione di un’ipotesi (potrei averle lasciate in macchina/ufficio/…), passando per l’attuazione dell’esperimento (ho guardato in macchina/ufficio/ e non ci sono) fino all’analisi dei risultati (al momento non posso entrare in casa); si ripartirà con la formulazione di nuove ipotesi (la vicina dovrebbe avere una copia delle mie chiavi) passando per tutte le altre fasi e così via.

Insegnare a programmare vuol dire pertanto dare la possibilità di imparare le logiche del pensiero computazionale e in senso più lato imparare ad imparare. Proprio per questo motivo è importante oltrepassare le logiche dell’informatica tradizionale per arrivare a parlare di coding. Per fare ciò sarà però indispensabile superare la didattica usuale per attuare nuove strategie di insegnamento dove il docente diviene in questo nuovo contesto un facilitatore di apprendimento.

Da segnalare che dal 7 al 15 Dicembre vi è la settimana nazionale del Piano Scuola Digitale, evento fortemente voluto dal ministro Giannini.

Ulteriori informazioni, spunti e materiali sul progetto sono reperibili sul sito www.programmailfuturo.it o attraverso il profilo Twitter @Programma_il_Futuro.

C’erano una volta le foto…adesso ci sono le gif!

Articolo pubblicato su ltaonline in data 23 Novembre 2015

Impossibile non affermare che uno degli assi nella manica di Facebook è stato per molto tempo la possibilità di condividere foto (oltre che stati, post e video). Non solo foto personali, quelle che infatti riuscivano a raggiungere la viralità (espressione metaforica utilizzata per indicare il trasferimento di un contenuto pubblicato online a sempre più persone, con una diffusione paragonabile a quella di un contagio in ambito biologico) erano molto spesso i cosiddetti meme. I meme non sono altro che immagini accompagnate da frasi ironiche che in qualche modo le strappano dal proprio contesto per adattarle a situazioni specifiche. Come non ricordare quelli su Silvio Berlusconi che nel 2013 prometteva la restituzione dell’IMU?

berluska

Oppure i sempreverdi meme di Chack Norris (basati sui Chuck Norris facts) ?

Da qualche mese però i meme sembrano essere stati soppiantati da un’altra forma virale: le Graphics Interchange Format meglio conosciute come gif. I file con estensione .gif sono un insieme di immagini mandate a una determinata  velocità e che girando in loop (ovvero riprodotte a ciclo continuo) sono capaci di presentare un piccolo filmato. La logica che è dietro le gif realizzate con delle foto è la stessa che viene utilizzata nella creazione di cartoni animati, cioè entrambe si basano essenzialmente sulla resistenza delle immagini sulla retina.

pupazzo

Le gif possono essere create non solo con delle foto ma anche partendo di filmati selezionandone la parte interessata.

ForceAwakens6

Al momento su Facebook è però possibile solo inserire il link delle gif (tra l’altro solo sui profili e non sulle pagine), mentre non è possibile crearle direttamente utilizzando questo social network.
È pertanto necessario prenderle da altre fonti, uno tra gli archivi più forniti e utilizzati è Tumblr. Ma come si creano le gif? In realtà esistono numerosi programmi che ne consentono la creazione anche ai meno esperti. Tumblr stesso ha da pochissimo messo a disposizione una nuova funzione per la creazione di gif.  Basterà aprire un post fotografico e verranno selezionati direttamente dalla galleria, gli elementi “giffabili”.
Di archivi ne esistono molti, un altro da consultare (e che come Tumblr offre anche la possibilità di crearne di proprie) è Giphy. Da segnalare infine un’ ultima novità in campo .gif, ovvero le Cinemagraph gif, cioè foto in cui si muove soltanto un elemento mentre gli altri restano bloccati.

Francesca Lazzari