Questo sito utilizza cookies tecnici e di terze parti per funzionalità quali la condivisione sui social network.
Cliccando su Accetto, scorrendo questa pagina o cliccando su qualunque suo elemento si acconsente all'uso dei cookie. Se non si modificano le impostazioni del browser, l'utente accetta. Ulteriori informazioni.


Scuola dell' Infanzia
 
icona

Scuola Primaria
 
icona

Scuola Secondaria
 

See full screen

Per Leggere la storia della mappa ed il lavoro fatto dagli studenti nel PON “La scuola riscopre Nocera- Storia, Arte e Tradizioni”, cliccare sul seguente LINK.

 

News in Evidenza

CONTIAMO LE MELE - CODING, INDUSTRIA E DIVERTIMENTO

 

Docente: prof. Luca Scalzullo

Classe: IIE e IIF

Metodologia: PBL, Cooperative Learning, Coding

Per chi volesse vedere su SCRATCH il lavoro vi allego il link di riferimento https://scratch.mit.edu/projects/282439694/

 

INTRODUZIONE

 

È ormai da qualche anno che il coding è entrato nella scuola ed è da qualche anno che nelle mie classi è attività curriculare continua.

 

Parto dalla convinzione che non siamo davanti ad una nuova disciplina. Non serve aumentare il carico didattico degli studenti già ampiamente oberati da tutto quello che pretendiamo da loro.

 

Il coding è un gioco. Certo e come tale deve essere percepito dagli studenti, siano essi della Scuola dell’Infanzia, della Scuola Primaria o della Secondaria di I Grado. Certo un gioco, una sfida, un problema da risolvere insieme, discutendo, ragionando, proponendo soluzioni senza l’intervento del docente che, in disparte, osserva, guida suggerisce ed a volte induce in errore per verificare la capacità di convergenza verso un risultato finale.

 

Ma questo è come lo applico. In realtà cosa è il Coding? Se ne sono scritte di cose e ne hanno parlato persone e figure ben più importanti ed autorevoli di me, ma posso darne certo una visione dal basso, da chi, tra i banchi, ne vede i risultati.

 

Il coding è creatività.

Se intendiamo la creatività come la capacità di percepire un’idea al di là dei sensi immaginando i passi da seguire per realizzarla, verificando di volta in volta l’efficacia delle soluzioni e allora il Coding rappresenta uno strumento enorme per svilupparla. Nell’attività che vi presento, i ragazzi hanno usato Scratch. In genere usiamo Scratch dopo aver fatto una solida pratica con la piattaforma Programma il Futuro dove i famosi blocchi logici servono a risolvere dei problemi (labirinti in genere) proposti dal sistema.

Scratch stravolge questo approccio presentando uno stage bianco, vuoto. È davanti a quello stage che comincia il cammino verso la soluzione. Se non abbiamo un’idea da realizzare, fosse anche far fare una semplice camminata al gattino, non saremo mai in grado di utilizzare nessuno degli strumenti, nessuna delle istruzioni che la piattaforma ci mette a disposizione.

 

Il coding è iterazione.

Beh lo dicevo prima. Abbiamo un’idea e immaginiamo una serie di passi per realizzarla e portarla a termine. Capita che la soluzione non ci piaccia, che non ci soddisfi, che la camminata sia troppo veloce, che il punto di arrivo non sia quello desiderato, che la rotazione sia sbagliata e cose di questo genere, tutti intoppi capitati a tutti gli utenti di Scratch. Ecco la sua meraviglia. Non hai necessità di un tutor che ti segua e che ti dica l’errore. L’errore lo trovi da solo e provi a correggerlo, e torni indietro sui tuoi passi e cambi e modifichi fino a che non trovi un risultato soddisfacente. E ciclicamente raffini e modifichi e provi a migliorare imparando sempre più ad ogni tentativo.

 

Il coding è interazione.

Io e i miei studenti col coding ci giochiamo, inutile negarlo. Col coding ci si diverte, con Scratch si ride e lo si fa insieme. Qualcuno inserisce le istruzioni, qualcuno pensa ad una soluzione, qualcuno suggerisce idee e alternative. I più pronti assistono i più lenti, i più entusiasti coinvolgono i più scettici imparando a gestire il gruppo, percependo che la forza del gruppo supera la capacità del singolo.

 

Il coding è logica.

Quando parliamo di sviluppo del Pensiero Computazionale parliamo proprio di questo. La tanto celebrata capacità di trovare soluzioni a problemi anche non scolastici in maniera algoritmica, sequenziale e logica è la vera anima di Scratch e di qualsiasi altra piattaforma con cui si fa coding. Come vedremo nell’attività presentata, un problema grande si risolve meglio se frammentato in una serie di problemi più piccoli più facilmente affrontabili. Questo approccio induce con relativa rapidità, enormi cambiamenti nei ragazzi, anche nel modo stesso di approcciarsi allo studio, di organizzare il tempo a disposizione o banalmente, di preparare un discorso per una interrogazione. La rigidità e la sequenzialità della programmazione (che sia a blocchi logici o con una sintassi precisa poco importa) ha come risultato una morbidezza ed una versatilità di ragionamento che non può essere negata.

 

PROBLEMA E DISCUSSIONE

 

Alla luce di quanto raccontato, non è importante su cosa far esercitare i ragazzi, una idea vale l’altra, conta il processo, meno il risultato raggiunto. Ci siamo limitato a prendere spunto da un esercizio proposto dal libro di testo (Technologica della DEA e scritto nello specifico da Andrea Ferraresso).

L’idea è quella di simulare un processo industriale in cui un nastro trasportatore porta una mela colorata da una parte all’altra dello schermo dove viene contata e ne viene riconosciuto il colore. Il processo continua per sempre con mele di colore casuale.

I ragazzi da soli hanno analizzato la soluzione presente sul libro ed hanno proposto una serie di varianti (quella definitiva è quella presentata in seguito).

Lo sforzo della discussione è stato quello di frammentare il problema creando una serie di step intermedi da risolvere.

 

STEP 1 - Inserire il nastro trasportatore.

STEP 2 - Inserire la mela e farla camminare lungo lo schermo creando un ciclo di ripetizione.

STEP 3 - Creazione della casualità del colore.

STEP 4 - Variabili e contatori.

STEP 5 - Riconoscere i colori e contarli

STEP 6 - Inserire dettagli

 

Vediamo come è andata.

 

DESCRIZIONE DELLA SOLUZIONE

STEP 1 - Il nastro Trasportatore.

 

Sembrava essere la parte più semplice della progettazione. Un’immagine, uno sprite ad esempio una semplice barra disegnata poteva bastare. Ed invece l’aspetto grafico pare riveste un momento importante. I ragazzi non si accontentano, quello che costruiscono e progettano “DEVE PIACERE”, per dirla con loro. Ed allora hanno trovato una clipart e la hanno modificata sfruttando le capacità di una loro compagna particolarmente brava ad usare Photoshop.

Hanno tolto lo sfondo salvando l’immagine su sfondo trasparente.

La prima cosa che hanno fatto è stato impostare la posizione iniziale in quella procedura di inizializzazione che hanno imparato ad applicare ogni inizio progetto.

Un nastro trasportatore, poi, vibra durante il suo funzionamento ed i ragazzi ne hanno simulato il movimento cambiando l’altezza della posizione di un solo passo. Questo valore ha richiesto un bel pò di prove. La determinazione dello spostamento e del tempo di attesa tra uno spostamento e un altro li ha impegnati in accesissime discussioni in classe. Di seguito le righe di codice col commento dei ragazzi.

Uno dei ragazzi, alla fine, quando tutto sembrava deciso, racconta ai compagni di come il nastro trasportatore nell’officina meccanica dove lavora il padre, faccia un rumore insopportabile. Ed allora i ragazzi hanno scelto tra le possibilità fornite da SCRATCH due rumori da inserire e li hanno inseriti entrambi.

Avevano il problema della contemporaneità del suono. Inserire il comando di riproduzione del suono in sequenza secondo la filosofia di SCRATCH, avrebbe sortito solo l’effetto di riprodurli in sequenza, uno dietro l’altro.

L’idea della sincronizzazione dimostra una maturità e una consapevolezza nell’utilizzo dello strumento informatico enorme. I ragazzi hanno creato una doppia situazione di inizio che consente ai suoni di essere riprodotti contemporaneamente.

In figura il caricamento dei suoni e i codice per farlo suonare insieme.

 

 

STEP 2 - Flusso di mele dal colore casuale

 

I ragazzi hanno caricato lo sprite della mela inizializzandone la posizione. L’idea era quella di far scorrere la mela luongo lo schermo facendo cambiare costume in maniera casuale ad ogni ripetizione.

Hanno creato subito il movimento utilizzando il comando ‘SCIVOLA IN N SECONDI’ simulando il cammino uniforme del prodotto sul nastro trasportatore.

 

STEP 3 - Cambio casuale del colore delle mele

 

All’inserimento dell’opzione di cambio costume, si sono accorti dell’assenza di costumi diversi per lo sprite in oggetto.

I ragazzi, allora, hanno duplicato i costumi ed, utilizzando le possibilità di editing delle immagini proprio di SCRATCH, hanno creato mele dal colore diverso (GIALLO, VERDE e BLU, oltre all’originale ROSSO).

Alla fine del percorso hanno imposto la sparizione dello sprite, lo spostamento di nuovo nella posizione iniziale e la sua nuova apparizione, il tutto in un ciclo ‘PER SEMPRE’.

Per cambiare il colore hanno usato il blocco ‘NUMERO CASUALE’ sfruttando la numerazione dei costumi. Nella foto il codice relativo alle mele

STEP 4 - Variabili e contatori

 

Questa è sempre la parte più delicata quando a programmare sono ragazzi delle scuola media. Il concetto di variabile impone un enorme livello di astrazione ed uno sforzo mentale di difficile gestione.

L’idea di una scatola informatica in cui inserire un valore che cambia di continuo durante l’esecuzione del progetto a volta aiuta, almeno in fase di visualizzazione.

In questo caso siamo stati facilitati dalla natura stessa per lavoro, ovvero dal dover contare il numero di mele del singolo colore.

I ragazzi hanno fatto passare anche la proposta di contare il numero di mele complessivo.

In figura i blocchi del codice scritto dai ragazzi

Le variabili vengono aggiornate ogni volta che viene riconosciuto il colore. In questo caso i ragazzi hanno usato il concetto di messaggio. Abbiamo riso tutti insieme pensando ai messaggi come ai segni che i giocatori di scopone scientifico si fanno per far capire al compagno di squadra le carte in mano.

Quando il programma riconosce il colore della mela (tra poco vediamo come) l’invio di un messaggio permette di aggiornare le variabili come indicato in figura.

STEP 5 - Riconoscere i colori e contarli

 

Beh qui i ragazzi hanno inteso fare un omaggio al loro professore. Hanno scelto come CONTATORE un operaio incarnato in uno sprite a forma di orco, alto, pancione e senza capelli, insomma proprio simile, se non per il colore della pelle, a chi vi sta scrivendo.

Frank, questo il nome dello sprite, è stato immediatamente posto in secondo piano, in modo da apparire dietro il nastro trasportatore.

I ragazzi hanno controllato i costumi e hanno deciso di modificarne uno, sempre con il motore grafico di SCRATCH. Hanno creato un costume in cui l’orco aveva il braccio alzato. La figura illustra alcune delle fasi di questa creazione.

Non resta che permettere al gigante verde di riconoscere il colore delle mele. È bastato utilizzare una delle opzioni nella categoria OPERATORI, inserendo in un ciclo SE/ALLORA il blocco STA TOCCANDO ‘SPRITE’. Ovviamente, a seconda del colore è qui che viene inviato a tutti il messaggio precedentemente descritto. Al contatto tra mela e orco, l’orco cambia costume e dice ad alta voce il colore della mela. In figura tutta la sequenza di comandi.

STEP 6 - Inserire i dettagli

 

Il grosso del lavoro poteva avere anche questa come conclusione, ma i ragazzi hanno aggiunto alcuni dettagli.

Innanzitutto uno sfondo. Hanno scelto una foto in bianco e nero di un vecchio opificio industriale.

Poi hanno voluto dare una mano a chi segue il gioco indicando la mela che di volta in volta viene contata. Una specie di contatore grafico che appare sotto la visualizzazione della variabile. Insomma, una ulteriore mela che compare, del colore giusto e per pochissimo tempo, sotto la variabile contatore quando questa viene aggiornata.

Hanno inserito un’altra mela di dimensioni diverse, più piccola e nascosta all’inizio che, all’arrivo del messaggio cambia colore e posizione come indicato in figura.

Infine un tocco divertente messo a disposizione dalla versione 3.0 di SCRATCH. Hanno usato l’estensione TEXT TO SPEECH, per far parlare il gigante.

Utilizzando i blocchi di questa estensione e la voce da giganti, hanno permesso all’ORCO non solo di dire il colore della mela che di volta in volta appare, ma anche di contare il numero complessivo di mele dicendo ad alta voce tutti i multipli di dieci implementando una ulteriore variabile CONTA.

CONCLUSIONI

 

Il risultato migliore ottenuto non è la godibilissima visione del processo industriale, quanto la capacità ciclica dei ragazzi di frammentare il problema generale in tanti problemi di minore entità, di crearsi una scaletta di passaggi da seguire, di dare corpo a quanto ideato e di risolvere le tante complesse difficoltà che di volta in volta si presentavano.

Come dire, non è la meta a rendere interessante il viaggio, ma tutti il percorso intrapreso per raggiungerla.

Da docente ho apprezzato la forza di gruppo che il coding genera. Discussioni, soluzioni, proposte ed a volte anche votazioni fatte per scegliere tra una soluzione ed un’altra.

Non ci sono conclusioni senza rilanciare. Un’idea maturata con la professoressa di matematica, è stata quella di calcolare le percentuali delle singole mele rispetto al totale e la frequenza di uscita dei singoli colori, implementare cioè, su un semplice giochino, anche un’analisi statistica. Ovviamente la sfida è aperta e i ragazzi aspettano tanti remix.

Notizie ed eventi