Code.org: i blocchi (e spiegazioni) per ottenere l’attestato dell’Artista

Articolo pubblicato su Scuola e Tecnologia in data 15 marzo 2016″

Il MIUR, in collaborazione con il CINI ha avviato  il progetto “Programma il Futuro” (che fa parte della più conosciuta “labuonascuola”) con l’obiettivo di fornire alle scuole una serie di strumenti per formare insegnanti e studenti in merito ai concetti di base dell’informatica.
Code.org è un sito che raccoglie una serie di attività distinte in base ai destinatari (studenti/insegnanti) in merito al movimento chiamato “Hour of code” che vede coinvolte decine di milioni di studenti in più di 180 nazioni.  Molte colleghe alle prese con i percorsi proposti su code.org (qui il link) mi hanno chiesto aiuto in merito all’attività chiamata “Artista”.

Questa attività è composta da 10 esercizi in cui attraverso delle sfide (man mano sempre più difficili) si viene introdotti alla programmazione a blocchi. Vediamo insieme come superare i 10 step (ottenendo l’attestato di fine percorso) ma soprattutto in questo breve articolo cercherò di spiegarvi il motivo per cui devono essere scelti dei blocchi piuttosto che altri.

Esercizio 1: l’introduzione all’esercizio ci fornisce oltre all’esplicitazione dell’obiettivo (ovvero disegnare un quadrato) anche una serie di indicazioni (utilizzare il blocco gira a destra e  il blocco vai avanti nonché la misura di quanto deve essere lungo ogni lato).

Artista1_start

Pertanto quello che dovremmo fare in questo livello sarà unicamente testare quanto suggerito. A seguito del blocco di default, ovvero “Quando si clicca su Esegui” cioè lo Start dell’esercizio, inseriamo i blocchi suggeriti. Iniziamo con “Vai avanti di 100 pixel” , questo perchè il nostro personaggio (l’Artista) per poter disegnare ha bisogno di camminare. Attraverso il blocco inserito, l’artista si muoverà di 100 pixel disegnando una linea retta. Un quadrato è un quadrilatero con quattro angoli congruenti  (90 gradi) quindi il secondo blocco da inserire è “Gira a destra di 90 gradi“. Ripetendo i comandi appena inseriti per ciascun angolo avremmo completato il primo esercizio.

Artista1_code

Una volta completato ogni step vi consiglio di andare a vedere il codice che abbiamo appena scritto (e che abbiamo verificato) anche nella modalità JavaScript .

Artista1_finish

Rotto il ghiaccio con il primo esercizio passiamo velocemente al seguente.

Esercizio 2: in questo step abbiamo l’obiettivo di disegnare un rombo. Un rombo è un poligono di 4 lati che ha tutti i lati della stessa lunghezza (congruenti). Nell’introduzione di questo livello ci viene indicato che i lati sono lunghi 150 pixel mentre gli angoli saranno di due tipi, 60 e 120 gradi. I comandi saranno pertanto “Quando si clicca su Esegui” , comando per lo Start, “Vai avanti di 150 pixel“, cioè la lunghezza del lato, “Gira a sinistra di 120 gradi” per fare l’angolo ottuso, di nuovo “Vai avanti di 150 pixel” e poi “Gira a sinistra di 60 gradi” per fare l’angolo acuto.

Artista2_code

Esercizio 3: la nuova forma geometrica in sfida è l’esagono. Grazie all’introduzione sappiamo che ogni lato è lungo 100 pixel  e che ciascun angolo è di 60 gradi. Andremo pertanto a disegnare un esagono regolare con i sei lati di uguale lunghezza e con i sei angoli congruenti. Niente di più facile, basterà infatti ripetere i comandi così come suggeriti nell’introduzione, cioè dopo il blocco “Quando si clicca su Esegui“, inseriamo “Gira a destra di 60 gradi” ripetendo il tutto per completare l’esagono.

Artista3_code

Esercizio 4: in questo esercizio troviamo una delle caratteristiche tipiche dei linguaggi di programmazione, ovvero i “cicli”. Probabilmente molti di voi già sanno cosa sono i cicli anche se nel linguaggio comune (prelevato da quello musicale) li definiamo Loop. Il loop in musica è un campione che si ripete. Nel coding è la stessa cosa, ovvero possiamo definire un ciclo come un insieme di comandi che si ripetono per un numero di volte ben definito (nel linguaggio di programmazione nulla deve essere lasciato al caso!), in questo caso le volte indicate nelle istruzioni sono 6 (come i lati dell’esagono che dobbiamo disegnare).

Artista4_code

Esercizio 5: in questo step non dobbiamo inserire nessun codice poichè ci viene già fornito dall’esercizio. Dobbiamo invece capire il numero da inserire per il comando del ciclo. Contando le punte della figura geometrica, possiamo inserire il numero esatto, ovvero 12 all’interno del blocco “Ripeti …volte esegui“.

Artista5_code

Esercizio 6: questo è lo step in cui molte colleghe hanno iniziato ad avere problemi. Niente paura, vediamo le indicazioni iniziali. Ci viene richiesto di utilizzare un blocco nuovo per ridurre le stringhe di codice. Rispetto all’esercizio 5 in cui abbiamo inserito molti blocchi, in questo step ridurremmo il loro numero comandando di ripeterli due volte. Mi speigo meglio. Il ciclo che abbiamo visto prima era composto dai seguenti blocchi: “Vai avanti di 60 pixel“, lunghezza del lato, “Gira a destra di 30 gradi“, e ancora “Vai avanti di 60 pixel” e poi “Gira a destra di 150 gradi” per chiudere l’angolo. Questi primi 4 blocchi vengono seguiti da altrettanti blocchi uguali. Pertanto si potrebbe semplificare il tutto comandando il “ripeti per 2 volte” il ciclo appena indicato.

Artista6_code

Esercizio 7: in questa sfida dobbiamo capire di quanti gradi dovremmo girare il nostro personaggio per disegnare correttamente la figura indicata. Il suggerimento dato nell’introduzione (dividi il numero di gradi di un cerchio per il numero di ripetizioni) ci fornisce immediatamente la risposta, ovvero 360 (gradi del cerchio) / 6 (numero delle ripetizioni) = 60 ( i gradi che deve girare a sinistra l’artista).

Artista7_code-1

Esercizio 8: un nuovo concetto informatico ci viene presentato allo step 8, ovvero la funzione. Una funzione (detta anche subroutine, routine, procedura, sottoprogramma o metodo) è un particolare costrutto sintattico che permette di raggruppare una sequenza di istruzioni in un unico blocco di istruzioni espletando così una determinata e in generale più complessa operazione. L’importanza, la praticità e i vantaggi di una funzione stanno nel fatto che può essere “chiamata” e “richiamata” in diversi punti del programma ogni volta in cui si ha la necessità di farlo come se fosse una singola istruzione senza la necessità di doverne riscrivere tutto il relativo codice. La funzione in questo caso definita “Draw a flower“, contiene la stringa dei comandi necessari per disegnare un fiore. Senza dover inserire ogni volta tutti i blocchi che comandano all’artista di disegnare il fiore, possiamo “richiamare” la funzione, avendo l’unica accortezza (così come suggerito nell’introduzione dell’esercizio 8), di far saltare in avanto il personaggio di 150 pixel.

Artista8_code

Esercizio 9: questo esercizio è utile per prendere confidenza con i blocchi di programmazione e con le funzioni. Ci viene infatti richiesto di disegnare una composizione di quadrati, triangoli o ottagoni partendo dai comandi che sono stati inseriti per disegnare gli esagoni. Essendo un esercizio libero, di seguito vi riporto solo qualche esempio.

Artista9_code

Artista9_code1

Artista9_code2

Artista9_code3

Esercizio 10: siamo giunti alla fine del percorso. Questo ultimo esercizio ci fornisce la massima libertà per inserire blocchi e funzioni in modo da mostrare a tutti il nostro lato artistico! Una volta terminata la propria opera vi invito a condividerla!.

Cliccando su condividi otterremo l’attestato finale.

hourofcode-certificate

Buona Ora del codice a tutti :-)

Francesca Lazzari

Annunci

Dalla mimosa al coding, la lunga lotta delle donne per la parità

Pubblicato su Scuola e Tecnologia in data 4 Marzo 2016

Durante il mio ultimo anno di università, il Prof. di Storia della scuola ci consigliò di leggere “Prima della quiete. Storia di Italia Donati”. Per chi non conosce Italia Donati, qui trovate un interessante articolo. Sinteticamente può essere considerata l’insegnante simbolo di un’Italia (siamo nel 1880) che stenta a concedere dignità e autonomia a quelle donne che si trovano lontane dalle proprie famiglie. Inutile nascondere che mi innamorai immediatamente di quel testo e della sua autrice.

Elena Gianini Belotti che per 20 anni ha diretto il Centro Nascita Montessori di Roma, è anche l’autrice di “Dalla parte delle bambine”.

Dalla parte delle bambine” è un testo crudo e a volte scomodo, in cui vengono riportati i numerosi condizionamenti culturali che ciascuno di noi subisce nel corso del proprio sviluppo. Condizionamenti diversi a seconda del genere in cui le bambine appunto ne escono perdenti.

La Belotti nel suo testo afferma: “L’operazione da compiere, che ci riguarda tutti, ma soprattutto le donne perché ad esse è affidata l’educazione dei bambini, non è quella di tentare di formare le bambine ad immagine e somiglianza dei maschi, ma di restituire a ogni individuo che nasce la possibilità di svilupparsi nel modo che gli è più congeniale, indipendentemente dal sesso cui appartiene”.

Nessun genitore non potrà non trovarsi d’accordo, eppure è quello che ciascuno di noi inconsapevolmente non fa. ‎

Ed eccoci arrivati ad oggi, sì perché il testo della Belotti risale al 1973, ma seppur è cambiato il contesto storico, quello sociale sembra non essersi evoluto.

Spesso nei miei articoli parlo di coding e di pensiero computazionale, riporto in forma di testo, esperienze, idee e progetti utili per le colleghe insegnanti che vogliono introdurre metodologie didattiche innovative per facilitare l’apprendimento delle cosiddette STEM (ovvero scienza, tecnologia, ingegneria e matematica).

Ma cosa centra il coding e in senso più lato il pensiero computazionale con Elena Gianini Belotti ed Italia Donati?

La risposta è semplice e basta osservare i numeri. La mancanza di donne nei settori informatici è un problema ben documentato: in Italia solo il 23% degli iscritti alla facoltà di Ingegneria è donna. Percentuale che sale al 38% fra gli studenti delle facoltà scientifiche in generale. (Per approfondire qui un estratto da: Rosti L., 2006, “La segregazione occupazionale in Italia“).

donne-stem

Cosa possiamo fare per avvicinare le ragazze al coding e per permettere loro di essere autonome nel seguire i propri interessi anche se essi vengono generalmente considerati come materie e argomenti più prettamente maschili?

  • Innanzitutto dobbiamo farci ambasciatrici di un’uguaglianza di genere avendo consapevolezza delle barriere sociali e culturali che ci circondano. Loredana Lipperini con il suo più attuale  “Ancora dalla parte delle bambine” può aiutarci nell’individuare come riviste, tv, pubblicità e più in generale i nuovi media, bombardino costantemente le nostre figlie ghettizzandole con etichette preconfezionate.
  • Cominciare fin da piccoli. In un precedente articolo dal titolo “Coding alla materna? Yes we can!” ho parlato di come sia possibile introdurre anche i bambini più piccoli nelle logiche del pensiero computazionale. Esistono molte attività unplugged (qui una lista) tra cui scegliere. I Lego, i puzzle, battaglia navale sono solo alcuni dei giochi che favoriscono lo sviluppo del problem solving. Sarebbe pertanto opportuno far utilizzare questi giochi a tutti (anche alle bambine senza considerarli giochi da maschio).
    Trovare organizzazioni che puntano sulla diffusione del codice (e che abbiano una buona percentuale di ragazze già iscritte). Dalla mia esperienza di Mentor in contesti didattici/ludici in cui insegniamo il coding ai bambini, è facile vedere come i maschi siano in numero maggiore rispetto alle femmine. Ciò potrebbe (ed uso il condizionale) essere uno svantaggio per quelle bambine che vedendosi, soprattutto nella fascia di età tra i 7e i 12 anni, in minoranza si allontanano da un’attività che invece trovano interessante. Esistono delle organizzazioni rivolte esplicitamente alle ragazze, ad esempio  Girls Who Code e Girls code it better .
  • Mostrare modelli vincenti. Non è un caso se tutte (o quasi, non generalizziamo!) le ragazze italiane da grandi vogliono fare la Velina ed i ragazzi i calciatori. Se i modelli di ruolo che vedono vincenti ed osannati da genitori e dallo show business sono questi, è indubbio che crescendo vorranno diventare dei cloni dei loro idoli. Se per i ragazzi il mito è quello del calciatore, mito che prevede abilità fisiche, impegno sportivo, etc… per le ragazze l’unico asso nel mazzo capace di introdurle nel mondo patinato dello spettacolo è la bellezza. Se invece mostriamo loro ad esempio la simpaticissima, intelligente, energica, coinvolgente e bella (bellezza che diviene una delle tante qualità e non l’unica!) Samantha Cristoforetti, ingegnere, aviatrice, astronauta militare italiana e prima donna italiana negli equipaggi dell’Agenzia Spaziale Europea, forse inzieranno a voler sostituire la carta della bellezza con altre qualità. Di donne così ne abbiamo oggi e ne abbiamo avute in passato, donne che tutto il mondo ci invidiano: Rita Levi-Montalcini, Fabiola Gianotti, Arianna Menciasi, Margherita Hack, etc…

carte

Incoraggiare la nostra/vostra scuola ad insegnare il coding. In un passato articolo dal titolo “Dall’informatica al coding” a cui vorrei aggiungere un ironico quanto amaro sottotitolo, ovvero cosa (non) è cambiato, ho cercato di ripercorrere brevemente il passaggio da quella che negli anni ‘80-90 veniva chiamata ora di informatica e che oggi viene definito coding, senza però aver mutato la metodologia di insegnamento e tantomeno le logiche pedagogiche che contraddistinguevano la prima. Incoraggiare la vostra scuola ad insegnare il coding, non vuol pertanto dire prevedere un momento avulso dalle classiche discipline, ma vuol dire integrare il coding in esse (e non tra di esse!!). In una lezione ho paragonato il coding al parmigiano. Esso può essere mangiato da solo, ma non è meglio spolverarlo sopra un buon piatto di spaghetti (magari al ragù)? Se intendo insegnare il piano cartesiano, posso farlo con Scratch! E non utilizzo Scratch per spiegare il coding. Il nodo sta proprio qui. 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!

coding-quote

Francesca Lazzari

La creatività di una maestra trasforma la merenda in un gioco computazionale

Articolo pubblicato su Scuola e Tecnologia in data 29 febbraio 2016

Una delle credenze che intendo sfatare fa riferimento al fatto che il pensiero computazionale sia qualcosa legato alla tecnologia. Non c’è niente di più sbagliato che avere questa convinzione!

Addirittura Jeannette Marie Wing, ovvero colei che ha portato alla ribalta tale concetto, ha affermato che si tratta di una competenza fondamentale per tutti, non solo per gli informatici, e ha sostenuto l’importanza di integrare le idee computazionali in altre discipline.

Se in un precedente articolo ho parlato già di attività unplugged (ovvero senza l’utilizzo di strumenti informatici) e pensiero computazionale, oggi vorrei raccontarvi l’idea di una maestra che ha trasformato la merenda (quella sana!) in un gioco computazionale.

Alcuni mesi fa una collega mi ha chiesto un suggerimento. Intendeva proporre un qualcosa affinché i suoi alunni  abbandonassero la cattiva abitudine di portare come merenda delle patatine fritte, panini con insaccati, merendine etc…, e si avvicinassero maggiormente alla frutta di stagione.

Sorpresa dalla richiesta, visto che non mi occupo di educazione alimentare, le chiesi il motivo per il quale avesse pensato proprio a me. Mi rispose che aveva letto un mio articolo (questo) e voleva trovare il modo di integrare il gamification con la sua materia (la matematica) con il pensiero computazionale.

Non vi nascondo che ci ho pensato a lungo, poi alla fine mi è venuta in mente un’immagine che avevo visto scorrendo gli aggiornamenti su Twitter.

Abbiamo pertanto messo in atto un piccolo gioco unplugged di logica computazionale basato sulla frutta di stagione.

La collega ha chiesto a ciascuno studente di portare a merenda 3 frutti, ovvero una mela, una pera ed una banana. Ha poi creato tre medaglie (per dare maggiore validità alle logiche del gamification) e il giorno dopo in classe ha mostrato questa immagine:

piccola

Una volta che tutti avevano disposto sul proprio banco la merenda ha distribuito dei post-it. Su ogni post-it gli studenti potevano fare delle ipotesi di valore e attaccarle al frutto.

Ma perchè questo compito rientra nel pensiero computazionale? Semplicemente perchè un’attività del genere consente agli studenti di trasformare un problema complesso in molteplici sottoprocedure.

Infatti, preso nel suo insieme questo problema di logica, sembra abbastanza complicato da poter essere risolto.

Ma proviamo a scomporlo insieme. Sappiamo che la somma delle banane è 16, possiamo pertanto ipotizzare che ciascuna valga 8.

Il passo successivo è trovare il valore degli altri due frutti.

Anche qui dobbiamo procedere per ipotesi. Intanto possiamo partire da un dato oggettivo, ovvero che le mele sono due. Ma forse abbiamo poche informazioni, ed ecco arrivare in nostro aiuto l’operazione successiva.

La terza operazione in qualche modo può aiutare a dare conferma alle ipotesi appena fatte.

Assegnando con certezza alla banana il valore di 8, possiamo confermare che la pera vale 2 e pertanto assegnare il valore di 10 alla mela.

Scomporre un problema di logica in piccole operazioni “autonome” ci ha permesso di trovare la soluzione.

Vedete come questo gioco attiva complessi processi di problem solving?

Gli alunni della collega si sono divertiti. Hanno prima risolto due giochi di logica e poi hanno mangiato “gli oggetti dei loro problemi”.

La settimana successiva ha ripetuto il gioco chiedendo agli studenti di dividersi in gruppi e di inventare loro le operazioni consegnando al “gruppo rivale” la scheda contenente la sfida.

Il risultato è stata una merenda computazionale!

E voi riuscite a risolverlo?  😉

compito-2-copia

Un game per la didattica? Sì, se lo faccio io con Scratch!

Pubblicato su Scuola e Tecnologia in data 15 febbraio 2016

Nel precedente articolo, ho mostrato come in 5 minuti è possibile iniziare ad utilizzare Scratch con il Digital Storytelling.

Per spiegare meglio l’utilizzo di Scratch ho provveduto a creare un secondo mini Videotutorial (qui il link al primo).

Questo tutorial ha come obiettivo quello di creare una schermata introduttiva ad un game didattico.

In questo tutorial pertanto vedremo come inserire uno sfondo, come far muovere uno Sprite ed anche come aggiungere suoni nonché la voce dei nostri bimbi per doppiare i  personaggi!

Come nel precedente articolo, anche per questo secondo tutorial ho creato un piccolo video, qui il link al #2 Videotutorial per seguire i diversi passaggi su youtube!

Per progettare un game didattico è importante pianificare cosa si vuole far apprendere ai nostri alunni. Ipotizziamo di voler ripassare le addizioni.

Come per la volta precedente raggiungiamo l’indirizzo di Scratch, ovvero  https://scratch.mit.edu/ , clicchiamo su Entra ed inseriamo le credenziali di accesso.

Vicino al nostro Username vi è il seguente simbolo:  v

 

00

 

Cliccandoci si aprirà un menù a tendina. Scegliendo “Le mie cose” vedrete i progetti che avete salvato in precedenza.

Ora però clicchiamo su Crea per aprire un nuovo progetto.

 

1.Inserire nuovi Sprite (i passi dettagliati per inserire nuovi Sprite sono spiegati nel precedente tutorial. In questo articolo procederò, per i punti già visti, in maniera spedita).

Possiamo utilizzare dei personaggi (Sprite) già presenti nella Libreria di Scratch, altrimenti vi ricordo che è anche possibile farli disegnare dai vostri alunni e poi scannerizzarli ed inserirli nel progetto.

Io utilizzerò il granchio (Crab) che abbiamo già visto come uno dei protagonisti nel precedente tutorial. Pertanto una volta selezionato cliccherò su Ok nella libreria ed esso mi apparirà sulla Tela.

 

2.Eliminare gli Sprite che non vogliamo utilizzare

Visto che intendo creare un ambiente marino, eliminerò il gatto che viene dato come Sprite di default ovvero come personaggio predefinito. Cliccando con il tasto destro sullo Sprite del gatto, si aprirà un menù a tendina e sceglierò Cancella.

1

3.Inserire uno sfondo

Nel precedente tutorial abbiamo lavorato con lo sfondo bianco (Tela), esso viene nominato da Scratch in Backdrop1. In questo progetto però voglio inserire uno sfondo (Stage) marino.

2

 

Così come per gli Sprite, anche per gli sfondi esiste una libreria. Cliccando su “Scegli uno sfondo dalla libreria”, andrò ad aggiungere lo sfondo della spiaggia detta “Beach Malibu”.

 

3

Non è già più bello il nostro progetto?!

 

Così come per gli Sprite, anche per gli sfondi non solo è possibile sceglierli dalla libreria offerta da Scratch, ma è possibile caricarne di propri (pensate che bello far inserire delle foto/disegni fatti dai bambini!), disegnarli attraverso l’editor, o addirittura utilizzare la webcam per catturare un’immagine.

4. I blocchi

Il primo blocco che andremo ad inserire sarà “Quando si clicca su bandierina verde” (che si trova nella categoria Situazioni). Procediamo inserendo un breve testo. Vi ricordate come si fa per far parlare gli Sprite? Scegliamo dalla categoria Aspetto il blocco “dire per n. secondi”

Al mio Sprite farò dire: “Aiutami a raccogliere 2 stelle marine e 3 pesci” per 5 secondi e poi

Sei pronto?” per 2 secondi

4

4.1 La categoria movimento

Per dare maggiore vivacità al progetto, facciamo “tuffare” lo Sprite nel mare. Per fare ciò dobbiamo aggiungere dalla categoria Movimento il blocco “Scivola in n. secondi a X e Y

Questo blocco ci introduce ad uno degli argomenti che più adoro quando parlo di Scratch ovvero il piano cartesiano. Se la maggior parte di noi ha avuto esperienze terribili con il piano cartesiano, grazie a Scratch i nostri alunni saranno salvi!

Provate a posizionare il cursore del mouse sullo sfondo e muovendolo lentamente  guardate cosa accade nell’angolo in fondo a destra. I numeri accanto ad X e Y, si susseguono mentre noi muoviamo il mouse. Questo perchè ogni punto sullo sfondo è un punto che è inserito nell’asse delle ascisse (X) e nell’asse delle ordinate (Y).

Il mio Sprite è posizionato esattamente in X: -169 e Y: -98

5

Immaginate quante attività potreste proporre con Scratch per far apprendere (giocando) ai vostri alunni il piano cartesiano!!

 

Per ora ciò che vogliamo conoscere è la posizione esatta di dove vogliamo far “tuffare” lo Sprite. Muovendo il cursore nel mare possiamo scegliere un punto.

Inserendo il blocco “Scivola in 3 secondi a X: 88 e Y: 34” il mio granchio camminerà fino al mare. Aggiungendo il blocco dire “tuffiamoci!” concluderemo la schermata introduttiva al game.

Lo scivola in n. secondi sta ad indicare la velocità in cui il nostro Sprite si muoverà dal punto in cui è collocato al punto che gli abbiamo indicato (in questo caso da X: -169 e Y: -98, ovvero la partenza, a X: 88 e Y: 34, cioè l’arrivo). Aumentando i secondi il nostro Sprite camminerà più lentamente, riducendoli si muoverà più in fretta…fate una prova!

 

  1. I suoni

Un tuffo non può essere tale se non accompagnato dal classico rumore dello Splash. Ma come si fa ad inserire un suono? Sopra i blocchi (Script)  troviamo delle linguette. Clicchiamo su Suoni

6

Anche quì, come per gli Sprite e gli Sfondi, Scratch ci offre la possibilità di scegliere un suono dalla libreria (simbolo megafono), registrare l’audio (simbolo microfono), importare un file audio (simbolo cartella aperta).

Per ora sceglierò un suono dalla libreria, ovvero dalla categoria Effetti prenderò il Water drop.

7

Come per lo Sprite di default, anche nei Suoni troviamo il suono pop dato come predefinito. Allo stesso modo, cliccando con il tasto destro del mouse sul suono pop, scegliamo Cancella. In questo modo nella nostra libreria di suoni avremo soltanto il Water drop.

Inseriamo ora il suono nell’animazione. Torniamo sulla linguetta dei blocchi, cioè su Script.

Nella categoria Suoni dei blocchi (contraddistinti dal colore fucsia) scegliamo “Produci suono Water drop” ed inseriamolo dopo il blocco dire “Tuffiamoci!”.

8

  1. Il blocco Nascondi

Al termine dei blocchi inseriti fino ad ora, aggiungiamo dalla categoria Aspetto, il blocco “Nascondi”. Questo blocco comanderà al nostro Sprite di sparire dando l’effetto finale del tuffo in mare.

N.B il blocco “Nascondi” prevede però un blocco “Mostra” se vogliamo che al termine della nostra animazione lo Sprite torni visibile.

Pertanto subito sotto al blocco “Quando si clicca su bandierina verde”  inseriamo il blocco “Mostra”. Ogni volta che riavvieremo la schermata attraverso la bandierina verde, lo Sprite sarà nuovamente visibile.

9

Attenzione!  Stessa cosa dovremmo farla per la posizione, altrimenti quando cliccheremo su bandierina verde il nostro Sprite si troverà lì dove gli abbiamo comandato di scivolare in precedenza. Per far posizionare lo Sprite sempre nel punto desiderato basterà inserire il bloccoVai a X e Y” presente nella categoria Movimento subito dopo il blocco “Mostra”. Differentemente dal blocco “Scivola in n. secondi a X e Y”, questo farà immediatamente posizionare lo Sprite nel punto iniziale scelto. Nel mio caso sarà “Vai a X:-169 e Y:-88

10

Abbiamo terminato l’introduzione al game didattico. Se volete potete aggiungere la voce dei vostri alunni allo Sprite scelto. La procedura l’abbiamo intravista quando abbiamo scelto di inserire il blocco  “Produci suono Water drop”. Andando sulla linguetta in alto Suoni e cliccando sull’icona del microfono e poi cliccando sul tasto Rec (il tasto tondo) si potrà procedere a registrare la voce.

Il tasto modifica posto accanto al pulsante Rec permette di tagliare la registrazione eliminando i secondi di silenzio iniziali.

Una volta effettuata la registrazione si andrà sulla categoria dei blocchi Suono e si sceglierà il blocco “Produci suono Registrazione 1”, “Produci suono Registrazione 2” e così via.

11

Nel prossimo tutorial andremo avanti con il game didattico e faremo “acciuffare” al granchio le stelle marine e i pesci richiesti.

Scratch per le insegnanti: guida pratica per utilizzarlo in classe

Articolo pubblicato su Scuola e tecnologia in data 03 febbraio 2016

Molte colleghe mi hanno chiesto una piccola guida per poter prendere confidenza con Scratch in modo da poterlo proporre in classe sentendosi sicure nell’affrontare questo tipo di attività con i propri alunni.

Ho pensato a lungo a cosa proporre, ovviamente molto dipende dai destinatari dell’esercitazione, pertanto ho deciso di individuare un’ipotetica classe di alunni della quinta ed ho immaginato un’insegnante che volesse utilizzare Scratch per riprendere le prime lezioni di inglese sotto forma di Digital Storytelling.

1

Per spiegare meglio l’utilizzo di Scratch ho provveduto a creare un mini Videotutorial, dove oltre ad illustrare le funzionalità di Scratch spero possa trasmettervi soprattutto la facilità di utilizzo dello stesso.

Il primo videotutorial (sto pensando di proporne altri con obiettivi didattici diversi visto le richieste) ha come obiettivo quello di creare un mini-dialogo in lingua inglese utilizzando i termini appresi durante le lezioni frontali. Essi fanno riferimento al saluto tra pari, la propria presentazione nonché la conoscenza dell’altro.

Qui il link al #1Videotutorial (durata video 5 minuti e 40 secondi!)

Per chi non potesse vedere il video, di seguito riporterò alcuni screenshot dove andrò ad illustrarvi i passaggi eseguiti.

  1. Effettuare la registrazione sul sito di Scratch collegandosi alla pagina: https://scratch.mit.edu/Per prima cosa (anche se non è indispensabile) consiglio di effettuare la registrazione sul sito di Scratch. Per le insegnanti questo è molto utile perchè da un lato avrete modo di accedere a tutti i progetti dei vostri allievi (una volta creata una specifica galleria e lo vedremo in un altro Videotutorial) e dall’altro avrete sempre a portata di mano anche i vostri progetti personali.La registrazione è molto semplice, basterà cliccare su “Unisciti alla comunità di Scratch” e poi scegliere un username ed una password. Dovrete successivamente indicare un indirizzo di posta elettronica sul quale vi arriverà una mail per poter confermare l’iscrizione  e quindi attivare l’account.Se invece siete già registrati su Scratch sarà sufficiente loggarsi.

1

  1. Cliccare su crea.

Il tasto crea permette di entrare nella modalità di creazione di un progetto di Scratch. La schermata che vi si aprirà di default è questa, ma niente panico, ora vi spiego tutto!

Il riquadro bianco che contiene l’immagine di un gattino (che è il logo di Scratch) si chiama tela. Il gattino viene definito invece Sprite.

3

Sotto alla tela vi sono una serie di icone, passando con il mouse sopra ciascuna di esse vi appariranno delle breve informazioni. La prima icona fa riferimento al fatto che Scratch offre una galleria, detta libreria, di Sprite già presenti . La seconda icona (quella rappresentata con un pennello) indica la possibilità di disegnare (attraverso una schermata simile a Paint) uno Sprite, la terza icona indicata con una cartella sta a rappresentare la possibilità di caricare delle immagini presenti sul nostro pc, hard disk, usb, etc; ed infine l’ultima raffigurata con una macchinetta fotografica offre la possibilità di scattare una foto attraverso la web cam.

Per questa prima attività, scegliamo di utilizzare uno Sprite preso dalla libreria di Scratch.

La libreria degli Sprite

La libreria offre moltissimi Sprite che vengono raggruppati in categorie grazie al menù laterale sinistro. Non mi soffermerò sulla libreria, ma vi invito a curiosare nelle varie categorie.

4

  1. Scegliere un secondo Sprite

Nel mio videotutorial ho scelto di inserire come secondo Sprite il granchio, voi potete scegliere quello che preferite.

  1. Dare i comandi agli Sprite

Ora entriamo nel vivo della programmazione a blocchi. Ogni Sprite ha una schermata personale di destra. In questo spazio inseriremo le linee di comando per ciascuno.

I comandi sono contenuti negli Script. Essi sono raggruppati per tipologia contraddistntii ciascuno per colore.

Iniziamo i nostri comandi inserendo il blocco “quando si clicca su bandierina verde” che è di colore marroncino e che fa parte del gruppo “Situazioni” (man mano che utilizzerete i blocchi vi ricorderete anche come sono divisi per categorie).

La bandierina verde è lo Start del game o in questo caso del digital storytelling.

Il secondo blocco che inserirò è il dire (che si trova all’interno della categoria Aspetto). Attraverso questo blocco farò dire ciò che io vorrò al gattino. In questo esempio voglio fargli dire hello. Cliccando nello spazio bianco all’interno del blocco posso agire sul testo e modificarlo a mio piacere, ad esempio scrivendo ciao.

5

Cliccando in alto sulla bandierina verde (ricordate abbiamo dato il comando) il nostro sprite dirà Hello! Facciamo la prova.

N.B Esiste un blocco dire ed un blocco dire per n. secondi . La differenza è che i secondi indicati sono quelli per cui il balloon ovvero il fumetto resterà visibile sulla tela. In questo caso 2 secondi. Fate una prova nell’aumentare e diminuire i secondi sul blocco dire.

Il blocco successivo sarà l’attendi n.secondi, in questo caso lascerò 1 secondo. Andando avanti capirete l’importanza di questo blocco.

Passiamo al secondo Sprite, ovvero il granchio.

Cliccando sul granchio in basso nel riepilogo degli Sprite, vedrete che la sua finestra dei comandi presente sulla destra è in realtà vuota. Questo perchè come abbiamo detto, fino ad ora abbiamo “programmato” le azioni del gattino.

Anche al granchio aggiungiamo il blocco “quando clicco su bandierina verde”. In questo caso il granchio non dirà immediatamente hello, ma dovrà attendere il saluto del gattino. Come possiamo fare?

Aggiungiamo il blocco “attendi un secondo” e poi il blocco “dire per n. secondi”. Grazie a questo blocco il granchio risponderà subito dopo che il gattino lo avrà salutato.

Clicchiamo prima sullo Stop, ovvero il tasto rosso accanto alla bandierina verde per bloccare qualsiasi processo in corso e poi clicchiamo su bandierina verde per vedere il saluto tra i due Sprite.

7

Torniamo allo Sprite del gattino e clicchiamo in basso su di esso. Nella linea dei comandi aggiungiamo il blocco “dire per n. secondi” e facciamogli porre una domanda. Essa potrebbe essere (visto l’obiettivo didattico di cui sopra) What’s your name?

Cambiamo Sprite e clicchiamo sul granchio. Aggiungiamo il blocco “attendi n. secondi” e anche qui inseriamo il blocco “dire“. A questo punto il granchio potrà rispondere “My name is Crub”.

Ora clicchiamo sul tasto rosso di stop e poi su bandierina verde e godiamoci la breve animazione che avremo creato.

9

Ovviamente tutto questo tutorial è dedicato a voi insegnanti (nel caso voleste sperimentarvi su Scratch), ma in classe come si può portare tale attività?

Con i bambini vi assicuro che è tutto più semplice. Basterà proporgli l’obiettivo e tramite tentativi ed errori saranno in grado in pochissimo tempo di realizzare l’attività.

Potremmo pertanto dichiarare in classe l’obiettivo didattico, ovvero far parlare due personaggi (Sprite) tra loro, ma in lingua inglese. Diremo che i personaggi dovranno salutarsi e uno di loro dovrà chiedere all’altro come si chiama e il secondo personaggio dovrà rispondergli.

Oltre ad attivare il pensiero computazionale, il problem solving, il Creative Thinkering, se li farete lavorare a coppie essi si abitueranno ad attivare strategie comunicative nei confronti dell’altro, la mediazione, etc…ovvero tutte le competenze trasversali utili nei lavori tra gruppi.

Nel prossimo videotutorial vi spiegherò come inserire uno sfondo e come far muovere gli Sprite ed anche come aggiungere la voce dei bimbi per doppiare i nostri Sprite!

Battaglia navale con i Lego per insegnare agli studenti le tabelline

Pubblicato in data 27 gennaio 2016 su Scuola e Tecnologia

Ho trovato molto interessante l’idea di quella mamma che per insegnare la chimica ai propri figli ha utilizzato uno dei loro giochi preferiti, ovvero “Battaglia navale”, sostituendo il classico tabellone con la tavola periodica degli elementi (qui il link per saperne di più).

L’idea mi è piaciuta per diverse ragioni, la prima è stata la creatività. Non sempre nell’ambito della didattica si riesce e/o si intendono sperimentare nuove forme di insegnamento. L’altro motivo è stato per il fatto che questo genitore si è calato nel ruolo di figlio ed ha scelto quello che più piaceva a lui. Fin troppo spesso le parole apprendimento e divertimento appaiono lontane, ma credo che ciò debba cambiare!

Fin dai primi mesi di vita è proprio attraverso il gioco che il bambino può esplorare il mondo intorno a sé mettendo in campo un ampio spettro di abilità (sensoriali, motorie, cognitive, affettive, espressive, sociali, etc…).

A partire dalla didattica in aula fino alla formazione aziendale (vedi il gamification) si sta pian piano riscoprendo il valore del gioco e come questo faciliti la motivazione nonché i processi di apprendimento. Il gioco in questo contesto diviene elemento ed attività fondamentale per lo sviluppo della personalità di ogni essere umano.

Calando l’idea di mamma Karyn Tripp, ai problemi di casa nostra, ho pensato di replicare il gioco utilizzando come “tabellone” per il piano orizzontale quello delle tabelline unito però anche ai pezzi della Lego.

lego_battaglia navale

Come piano verticale possiamo utilizzare invece una base della Lego a cui avremmo inserito sia nella parte orizzontale in alto che nella parte laterale sinistra, gli stessi simboli della Lego utilizzati per il tabellone precedente.

lego_battaglia navale copia

Sempre sul piano verticale possiamo quindi posizionare i mattoncini Lego come navi della nostra flotta.

lego-bricks-large

Il gioco funzionerà come nel classico “Battaglia navale” chiamando le coordinate. In questo caso però non useremo il termine A-5 o B-8 ma diremo 3X3. Sì perchè diversamente dalla Battaglia navale classica o quella con la tavola periodica degli elementi, in questa delle tabelline ci troveremo ad avere alcuni risultati uguali. Ad esempio non si potrà semplicemente chiamare il 12 poiché esso sarà il risultato sia del 4X3 che del 3X4 (posizionati pertanto su righe e colonne diverse). Sarà importante quindi esplicitare la moltiplicazione e poi darne il risultato.

Se portato in classe questo gioco permetterà ai nostri alunni di divertirsi e nello stesso tempo di imparare a memoria le tabelline senza nemmeno accorgersene!

Piaget e Bruner individuano la scuola come luogo privilegiato di introduzione del bambino nel mondo della conoscenza, luogo di apprendimento nonché laboratorio per la conquista della razionalità, e se ciò è vero tanto più lo è la possibilità per le insegnanti di movimentare le energie cognitive ed affettive dei loro alunni al fine di ottenere il miglior processo di apprendimento nelle varie attività proposte.

Francesca Lazzari

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!

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.

Gamification: quando il gioco diventa serio

Pubblicato in data 15 aprile 2013 su ltaonline

Se l’Università della Pennsylvania decide di aprire un corso dedicato al gamification e la rivista Fortune Magazine nel numero di Ottobre del 2011 pubblica un articolo sull’argomento, vuol dire che il gioco si sta facendo serio.

Ma cos’è il gamification? Potremmo quasi definirlo come un parlare dell’essenza stessa del gioco (quindi passione, divertimento e competizione) applicato al mondo reale, ovvero in tutti quei contesti e situazioni di non-gioco. Se parlassimo di gamification d’impresa come lo definisce il Wall Street Journal in un articolo ad esso dedicato, significherebbe progettare soluzioni che sfruttano i principi del gioco ma che sono applicati a processi organizzativi specifici (dal back office alla formazione, dallo sviluppo di carriere alla gestione delle vendite).

cracker

Il gamification d’impresa non è una vera e propria innovazione, basta pensare che circa cento anni fa la Cracker Jack Company inseriva nelle proprie confezioni di snack piccole sorprese. Da allora moltissime altre aziende (anche nel nostro paese, ad esempio gli ovetti Kinder) attuarono la stessa idea per incrementare le vendite dei propri prodotti.

Il connubio gioco e affari non è pertanto nuovo, innovativo è invece il voler puntare sull’anima stessa del business grazie alle nuove tecnologie attivando sempre più il desiderio di competere. Se ci si sofferma un secondo in più a riflettere ci si renderà immediatamente conto di come il gamification è in grado di influenzare il comportamento umano basandosi su tre semplici costrutti psicologici: l’abilità, la motivazione e l’innesco.

Il gioco richiede all’individuo una serie di abilità che vengono generalmente date per scontate: attenzione focalizzata, gestione del tempo ed elasticità mentale. La disponibilità a mettersi in gioco, il desiderio di impegnarsi, il valore (anche sociale) dei risultati ottenuti, rientrano nella categoria della motivazione. Infine l’innesco deve indirizzare l’utente ad agire. C’è chi ad esempio come Mario Herger, senior innovation strategist dell’impresa SAP in California, ha sfruttato il gamification per trasformare il processo tradizionalmente noioso di fatturazione in una competizione.

Secondo Gabe Zichermann, organizzatore del “gsummit” a New York, il motivo per cui il gamification sta andando così di moda è che la maggior parte dei posti di lavoro delle persone sono tremendamente soporiferi.

Se invece parlassimo di videogame ed educazione scopriremo che anche in questo caso il connubio non è recente. I videogiochi sono la forma di intrattenimento dominante del nostro tempo, poiché strumenti potenti in grado di motivare il comportamento, ma Tom Malone, che oggi lavora presso la Sloan School of Business al MIT, nel 1980 aveva già posto l’attenzione sulla relazione tra videogiochi ed apprendimento (vedi anche il post di Andrea Patassini).

Il Gamification non interessa solo il business o i processi di apprendimento/insegnamento, il gioco può infatti essere trasferito anche all’interno di contesti più ampi quali ad esempio quelli che hanno una ricaduta immediata sull’impatto sociale.

Wolkswagen nel 2009 lanciò la Fun Theory, una competizione che aveva come scopo quello di applicare il divertimento al comportamento sociale per rendere la vita, l’ambiente e il mondo qualcosa di migliore. Kevin Richardson,vincitore della Fun Theory del 2011, aveva ipotizzato di monitorare non solo la velocità di guida delle persone attraverso dei segnalatori visivi (oggetti che anche in Italia ormai sono di uso comune), ma di legare ad essi la possibilità di essere estratti in una lotteria (qui il link al video).

Ogni automobilista, che veniva individuato al di sotto del limite di velocità consentito, entrava automaticamente a far parte dei possibili vincitori di un premio in denaro (i proventi derivavano dalle multe per eccesso di velocità). L’idea è stata talmente rivoluzionaria che la città di Stoccolma ha deciso di attuarla: in tre soli giorni i guidatori hanno ridotto la velocità del 3%.

La Nike ha invece incorporato il game all’interno del fitness. Chi non conosce la Nike Fuel Missions? Un gioco alimentato dal movimento quotidiano degli utenti che tiene traccia degli esercizi degli stessi e ne monitora i progressi attuando una competizione furiosa tra i giocatori.

Il Gamification sta cavalcando l’onda del successo grazie all’espansione fulminea delle tecnologie mobili, dei social e del cloud nonché delle persone disposte a mettersi in gioco nel vero senso della parola.