Scratch & Coding – Imparare a programmare divertendosi
In questo articolo vi parlerò dell’importanza della programmazione.
Programmare è una attività che, a differenza del pensiero di molti, è alla portata di tutti e che potrebbe, anzi dovrebbe, essere introdotta fin dai primi di anni scuola elementare. Un software molto utilizzato in tal senso è Scratch, del quale vi parlerò approfonditamente nella seconda parte dell’articolo.
Di seguito vi riporto gli argomenti che verranno trattati:
- Siamo tutti programmatori
- Perché fare coding a scuola?
- Coding
- LOGO – Il primo linguaggio di programmazione per bambini
- Scratch
- Conclusioni
Buona lettura.
Siamo tutti programmatori
La vita è fatta di regole, fin da quando siamo bambini. Per esempio:
- Quando nevica bisogna prendere l’ombrello e aprirlo quando si esce.
- Si deve utilizzare la lettera maiuscola per scrivere i nomi propri di persona (Mario), i soprannomi (Riccardo Cuor di Leone), gli appellativi antonomastici (il Poeta – Dante) e gli pseudonimi/nomi d’arte.
Quelle che vi ho appena scritto sono sì regole, ma sono anche esempi di coding puro, o programmazione.
Ogni volta che facciamo ragionamenti, applicando regole di comportamento e processo, stiamo agendo come esecutori di un codice di programmazione.
Non vi ho ancora convinto? Ecco altri esempi di coding:
- I musicisti che eseguono uno spartito.
- Un medico che effettua una diagnosi.
- Un investigatore che risolve un caso.
- Un bambino che, invece di lavarsi le mani prima di mangiare, se le dipinge con le tempere…sì, anche questo è coding, con un baco di esecuzione.
Tutte le attività della nostra vita non sono altro che il frutto dell’esecuzione di un codice che abbiamo nel tempo acquisito e appreso.
La programmazione, tanto per chiarire, non è una pratica didattica ad appannaggio solo delle discipline matematiche o tecnico-scientifiche.
Tutt’altro.
Perché fare coding a scuola?
Fare approcciare i bambini alla programmazione ha ricadute immediate nell’ambito logico-matematico e nella risoluzione dei problemi in generale, contribuendo allo sviluppo del pensiero logico.
Saper tradurre idee in codice è espressione di creatività e incentiva la responsabilizzazione e il ruolo attivo dell’individuo, la collaborazione tra pari e lo scambio cognitivo.
Programmare fin da piccoli concorre inoltre al raggiungimento delle competenze digitali, soprattutto nella sua componente scientifica e tecnologica.
Coding
Prima di continuare, vorrei fare un po’ di chiarezza su quello che per me è il significato della parola coding.
Il coding non è:
- Una disciplina di insegnamento.
- Una materia.
- Uno strumento pensato solo per particolari discipline.
Il coding è un metodo didattico basato prevalentemente sul problem solving.
Affrontare e risolvere in modo efficace un problema richiede capacità di:
• Analisi
• Scomposizione in problemi più semplici.
• Rappresentazione utilizzando modelli risolutivi.
• Utilizzo degli strumenti cognitivi e linguistico-formali a nostra disposizione.
Pensiero computazionale
Ciò di cui ho parlato nel precedente paragrafo venne denominato da Jeannette Wing pensiero computazionale (se volete, potete leggere la versione in italiano del suo articolo pubblicato nel 2006). L’intento di Jannette Wing era semplice: estendere e applicare il modo con cui gli informatici affrontano i problemi a tutte le discipline e attività di apprendimento e di insegnamento.
In che modo intendeva raggiungere il suo intento? Proponendo a tutti gli studenti un corso intitolato: “Ways to Think Like a Computer Scientist“.
Pensare come un informatico è personalmente la definizione più corretta, dunque, di pensiero computazionale.
Il coding è per tutti
Il pensiero computazionale è una capacità trasversale utile in qualsiasi ambito (vita privata, studio, lavoro ecc.) ed è opportuno svilupparla il prima possibile. La scuola è l’ambiente ideale per sviluppare tale capacità.
L’approccio al coding permette di:
- Sperimentare in prima persona.
- Fare esperienze pratiche con qualche cosa (il programma) che consente il controllo dell’errore.
- Provare diverse strade, sbagliare e dagli errori imparare e tentare nuove soluzioni.
- Vivere l’apprendimento come scoperta.
- Poter lavorare in autonomia senza l’aiuto dell’adulto.
- Favorire lo sviluppo della creatività e dei processi logici.
Trova l’errore…debugging!
Debuggare, o fare debug di un codice, è un’attività cognitiva complessa perché presuppone l’analisi critica di procedure e di algoritmi per l’individuazione e la correzione di errori.
Sbagliare diventa d’obbligo: l’errore non è qualcosa da nascondere, ma un’opportunità di crescita.
Che attività si possono fare
Le tipologie di attività che possono essere svolte per approcciare un bambino alla programmazione sono di diverso tipo:
- Lezioni tradizionali o “unplugged”, ovvero senza l’utilizzo di un computer.
- Lezioni tecnologiche.
- Utilizzo della robotica educativa.
La robotica educativa
L’uso di robot programmabili permette di validare immediatamente il codice in maniera evidente.
Perché la robotica?
- Stimola il pensiero creativo e divergente.
- È inclusiva.
- Incentiva le esperienze “open-ended”, ovvero avere a che fare con problemi senza soluzione.
- Permette di vedere la tecnologia non solo come strumento dispensativo ma anche come mediazione attiva (un vero AMBIENTE di apprendimento).
- Incrementa l’attenzione dello studente perché anche l’insegnante è a sua volta stimolato a provare cose nuove, a formarsi e ad aggiornarsi continuamente.
- Sprona gli studenti a pensare in modo costruttivo imparando CON la macchina e non DALLA macchina.
LOGO – Il primo linguaggio di programmazione per bambini
Nel 1967 il matematico, informatico e pedagogista Seymour Papert inventò LOGO, un vero e proprio linguaggio di programmazione che potesse essere usato direttamente dai bambini per realizzare applicazioni, ovvero per fare coding. LOGO è tuttora alla base di tutti i linguaggi e sistemi di programmazione con cui si definiscono i comportamenti dei robot educativi e dei sistemi di coding per la didattica, primo fra tutti Scratch. Molto probabilmente non lo sapevate, Scratch è stato realizzato nello stesso laboratorio scientifico di LOGO, il MIT (Massachusetts Institute of Technology) di Boston, fondato tra l’altro proprio da Papert.
Nei successivi paragrafi vi guiderò alla scoperta di Scratch, dalla sua installazione fino a proporvi un piccolo tutorial di programmazione con del codice funzionante, prendendolo come campione di tutti i sistemi di coding didattici basati sul LOGO tra i quali figurano:
- Blockly
- Kojo
- LOGO stesso
- Tynker
- Swift Playgrounds
- Twinery
- Lego Mindstorms Education EV3
Scratch
A oggi, febbraio 2022, Scratch è alla versione 3.29.1 e può essere utilizzato per fare coding direttamente online all’indirizzo scratch.mit.edu oppure scaricando l’eseguibile e installandolo nel proprio computer.
Scratch online
Per passare alla versione del sito in italiano, scorrere in fondo alla home page e selezionare la lingua “Italiano” dal menu a tendina.
Il menu principale è composto da diverse voci, le più importanti sono:
- Crea: per creare un nuovo progetto Scratch e iniziare a programmare.
- Esplora: una collezione di migliaia di progetti realizzati da altri utenti e dai quali prendere spunto ricopiando o modificando blocchi di codice.
Modificare o copiare un progetto già esistente è un’operazione del tutto lecita, anzi incoraggiata dalla comunità Scratch, poiché favorisce la condivisione, il confronto e la collaborazione nella realizzazione di progetti didattici.
Le altre voci del menu sono:
- Idee: una raccolta dei tutorial per iniziare ad approcciarsi a Scratch.
- Info: informazioni generali su Scratch.
- Unisciti alla comunità Scratch: cliccando su questo link avrete la possibilità di registrarvi a Scratch, potendo così accedere a una propria area personale e riservata nella quale salvare i lavori che via via realizzerete e che potranno essere condivisi con altri utenti.
- Entra: per accedere alla propria area privata.
Scratch offline
È consigliato usare Scratch online ma è comunque possibile installare l’applicazione sul proprio computer per utilizzarlo nella sua versione offline.
In fondo alla pagina, nell’elenco di voci “Risorse” trovate la voce Scarica sul tuo computer. Cliccando su di essa sarete rediretti alla pagina di download dove potrete scegliere per quale sistema operativo scaricare il programma. Attualmente sono disponibili le versioni per i seguenti sistemi operativi:
- Windows
- Mac
- ChromeOS
- Android
Creare un progetto
Cliccando sulla voce del menu Crea andiamo a creare il nostro primo esempio.
Scratch usa una metafora teatrale per la sua interfaccia, organizzata in spazi ben definiti. Nell’immagine riconosciamo lo stage, o palcoscenico, che al momento vede al centro un solo attore, un gattino, in attesa di conoscere le sue battute.
Il termine inglese che indica il copione recitato dagli attori è script e con scripting, spesso usato come sinonimo di coding, negli ambienti informatici professionali intendiamo l’attività di scrittura del copione, ovvero del codice.
Il copione del gattino, e in generale degli attori (in Scratch chiamati Sprite) collocati sullo stage, si scrive nella finestra centrale che all’inizio del progetto è ovviamente vuota:
Le battute del copione, ossia le istruzioni del codice, e i comandi che vogliamo fare eseguire dall’attore vengono scelti da un set di comandi predefiniti, organizzati per tipologie e categorie:
Per decidere quale azione fare compiere al nostro gattino non si deve fare altro che scegliere il comando, trascinarlo nello script e rilasciarlo, incastrandolo con il comando precedente, esattamente come se stessimo componendo un puzzle.
L’insieme dei comandi incastrati tra loro formano il copione, o meglio il programma, dell’attore selezionato.
Figure geometriche
Qualora volessimo sviluppare le capacità di analisi geometrica di un bambino, facendogli per esempio scoprire le proprietà dei poligoni, potremmo chiedere al bambino di “Spiegare al gatto come si disegna un quadrato, un pentagono o un ottagono…” e così via fino ad arrivare magari al cerchio, facendogli così fare una scoperta inattesa.
Cominciamo dal quadrato che è il poligono più semplice, formato da quattro lati uguali collegati tra loro a formare degli angoli retti.
Se mettessimo una penna in mano al gatto in modo da fargli lasciare una traccia non appena si muove, cosa dovremmo dirgli affinché si muova disegnando un quadrato?
I comandi che dovremmo assegnare potrebbero essere:
- Tieni la penna con la punta puntata sul terreno.
- Muoviti di N passi (N corrisponde a quanto vogliamo che sia lungo il lato del quadrato).
- Gira a destra (o a sinistra) di 90°.
- Spostati di Tot passi…, ripetendo le stesse azioni per quattro volte.
Ecco come si traduce il tutto in Scratch:
Vi spiego come ho ottenuto il codice.
Dal menu dei comandi, categoria Situazioni, ho trascinato nell’area dello script il comando che definisce la situazione nella quale lo script deve essere eseguito. In questo caso ho impostato l’esecuzione quando si cliccherà sulla bandiera verde di esecuzione del progetto (“quando si clicca su“).
Dalla sezione Penna (aggiunta dalle estensioni in basso a sinistra) ho invece scelto le istruzioni “pulisci” e “penna giù” che puliscono lo stage e fanno tenere al gatto la penna con la punta in giù in modo che muovendosi lasci una traccia.
Dalla sezione Controllo ho scelto l’istruzione di “ripetizione” indicando di voler ripetere per quattro volte le istruzioni di seguito indicate. Queste istruzioni sono state prese dalla tipologia Movimento e fanno muovere il gatto di 100 passi e poi ruotarlo di 90 gradi.
Avremo così un quadrato con ogni lato lungo 100 passi. Cliccando sulla bandierina potrete verificare il corretto funzionamento:
Aumentiamo ora il livello di difficoltà. Se proponessimo ai bambini di far disegnare al gatto un pentagono?
Dopo una serie di tentativi ci si accorgerà che sarà sufficiente far ripetere per cinque volte (tanti quanti sono i lati del poligono) le istruzioni cambiando l’angolazione da 90° a 72°.
E per quanto riguarda un ottagono? Analogamente ai precedenti esempi, si modificheranno il numero di passi e le angolazioni e si arriverà a una soluzione di questo tipo:
Nel fare questi tre esempi, si noterà che moltiplicando il numero dei lati con l’angolo da questi formato, il risultato è costante: 360°. Qui, probabilmente, a qualche alunno potrebbe accendersi una lampadina: per realizzare un cerchio potremmo trattarlo come un poligono di 360 piccolissimi lati con un’angolazione di 1°, la più piccola possibile. Esatto!
Vi ho appena mostrato un esempio di costruzionismo. Con questi primi esempi in Scratch si apprendono competenze geometriche attraverso gli artefatti cognitivi offerti dal coding e rappresentando la conoscenza concretamente, dovendola insegnare al gatto. Dopotutto, non esiste miglior modo di imparare qualcosa se non insegnandolo.
Si può andare oltre l’ambito strettamente matematico e geometrico. Con questa applicazione è possibile realizzare esperienze di storytelling, animando e facendo dialogare tra loro i personaggi all’interno di scene esattamente come se fossero in una rappresentazione teatrale interattiva, adattativa e multimediale.
Animazioni e storytelling
Liberiamo innanzitutto la scena selezionando il gatto e cliccando sull’icona del cestino presente nell’angolo in altro a destra.
Aggiungiamo ora un altro tipo di personaggio, per esempio un orso che cammina, selezionandolo tra gli sprite nella libreria di Scratch. In alternativa è possibile disegnare o caricare un’immagine presente sul proprio computer.
Per aggiungere un nuovo sprite posizionatevi con il puntatore del mouse sopra l’icona del gatto (la trovate in basso a destra nel pannello “Sprite“) dopodiché selezionate la voce “Scegli uno Sprite” (icona della lente di ingrandimento). Dalla finestra di selezione degli sprite, cerchiamo quello con l’etichetta “Bear-walking” e portiamolo nello stage selezionandolo con un doppio click:
Ora che abbiamo l’orso sulla scena vediamo come modellarlo.
Notiamo che sulla colonna a sinistra ci sono tre tab: Codice, Costumi, Suoni.
Quando è selezionato il tab Codice, sulla colonna a sinistra vengono presentate le categorie di comandi dalle quali attingere per definire le azioni da far svolgere allo sprite.
Selezionando invece il tab Costumi possiamo visualizzare i vari costumi con i quali lo sprite può essere animato sulla scena.
Il tab Suoni permette di gestire i differenti suoni che lo sprite può essere in grado di eseguire e fare ascoltare.
Clicchiamo sul tab Costumi e noteremo che l’orso sarà già fornito di ben otto costumi:
Ogni costume ha un’etichetta bear-walk-a, bear-walk-b ecc. Selezionando un costume questo viene mostrato sul riquadro centrale ed è pronto, se vogliamo, per essere personalizzato con colori, dimensioni e altri attributi utilizzando gli appositi strumenti messi a disposizione da Scratch. È anche possibile creare un nuovo costume partendo da un costume già esistente, crearne uno da zero oppure caricando un’immagine dal proprio computer.
Per il nostro esempio limitiamoci a osservare la disponibilità dei costumi dello sprite selezionato. Noterete che ogni costume è stato creato in modo che, qualora venissero proposti in rapida sequenza, darebbero la percezione dell’orso che cammina. Questa è la tecnica di animazione usata dai primi cartoni animati Disney, realizzati appunto mostrando velocemente una dopo l’altra singole tavole disegnate dando all’occhio umano l’illusione del movimento.
Dunque, se volessimo far camminare il nostro orso, non dovremmo fare altro che mostrare in rapida sequenza i suoi costumi.
Possiamo anche selezionare un suono da far riprodurre all’orso. Clicchiamo quindi sul tab Suoni:
Da questa schermata prendiamo visione dei suoni che lo sprite è in grado di eseguire. Di default il nostro sprite ha solo un piccolo suono pop associato ma possiamo ovviamente arricchirlo andando ad aggiungere un nuovo suono. Cliccando sul pulsante con l’icona della lente di ingrandimento (in basso a sinistra) attingeremo da una libreria di suoni predefinita da Scratch, oppure:
- potremo registrare direttamente il suono dal microfono del computer;
- caricare un file sonoro in formato (.mp3, .wav ecc.) presente sul nostro computer;
- fare scegliere un suono random a Scratch.
Andiamo nella libreria di Scratch:
Come si vede dall’immagine i suoni sono organizzati per categoria, per il nostro esempio selezioneremo la categoria Animali e sceglieremo il suono Grunt. Per ascoltare un’anteprima prima di confermarne la scelta, basta cliccare il pulsante play. Per aggiungere il suono al nostro sprite, fare doppio click sul suono.
Clicchiamo ora sul tab Codice e vediamo come tradurre la nostra idea di animazione sonora in codice.
Prima di tutto decidiamo l’evento che deve dare inizio all’esecuzione dello script. Come abbiamo visto in precedenza, in Scratch tale evento è rappresentato dalla bandierina verde. Andiamo dunque nella categoria Situazioni e trasciniamo nella zona centrale dello script la situazione “quando si clicca sulla bandierina verde“.
Ora dobbiamo far emettere il verso all’orso, perciò dalla categoria di script Suono selezioniamo l’azione “avvia riproduzione suono Grunt” e incastriamola subito sotto la situazione di avvio.
Selezioniamo quindi il suono che vogliamo avviare:
Cliccando sull’icona della bandiera verde sentirete eseguire il suono una sola volta, con l’orso che rimarrà fermo. Animiamolo!
Abbiamo visto che lo sprite dispone di otto costumi, potremmo quindi utilizzarli in sequenza e farli scorrere ad esempio per due volte. In totale, quindi, l’orso dovrà cambiare costume sedici volte.
Andiamo nella categoria Controlli e prendiamo il comando di ripetizione:
Indichiamo il numero di volte che l’azione si dovrà ripetere, quindi sedici. Che cosa deve ripetere l’orso? Stiamo parlando del passaggio di costume a ogni ripetizione. In pratica, se il primo costume dell’orso fosse bear-walk-a il successivo sarebbe bear-walk-b e così via.
Dalla categoria Aspetto cerchiamo il comando “passa al costume seguente” e trasciniamolo all’interno del blocco di ripetizione:
Come prima, clicchiamo sulla bandiera verde. Noteremo che, mentre il suono viene eseguito, l’orso cambia costume creando un effetto animato, ma troppo rapido. Il cambio di costume è infatti troppo veloce, l’orso corre anziché camminare.
Per rallentare il nostro orso è necessario aggiungere il comando “attendi 0.2 secondi” nel blocco “ripeti 16 volte“. Così facendo ci sarà una pausa di 0.2 secondi tra un costume e l’altro:
Provate ora a cliccare sulla bandiera verde. Noterete che l’orso finalmente cammina.
Partendo da questo codice potrete provare a ricreare un piccolo zoo aggiungendo alla scena altri animali e suoni.
Con questo esempio vi ho dimostrato come la logica, la matematica, l’arte e la musica possano coesistere nella realizzazione di un progetto. Questa è la didattica per competenze in azione e, in sintesi, il valore del coding a scuola per tutte le discipline.
Tornando all’orso…e se potesse parlare?
Storytelling
Facciamo entrare in scena un altro animale per farlo dialogare con l’orso. Questo ci permetterà di dimostrare le tecniche di storytelling realizzabili via coding con Scratch.
Come abbiamo fatto per l’orso che cammina (“Bear-walking“), torniamo nel menu di selezione di uno sprite e cerchiamo il leone (etichetta “Lion“):
Una volta che il leone appare nello stage, trascinatelo nella posizione iniziale che più preferite:
Nella parte inferiore dell’editor sono elencati tutti gli sprite inseriti. Per modificare le proprietà di uno sprite sarà sufficiente cliccare sull’icona corrispondente. Accertiamoci dunque di continuare a lavorare sull’orso, selezionandolo.
Vogliamo che il leone entri in scena dopo che l’orso ha terminato di camminare e che lo saluti chiedendogli cosa sta facendo.
Dobbiamo dunque sincronizzare le azioni dei due sprite: l’orso finisce la camminata, il leone entra e saluta. Per far sapere al leone che è il momento di entrare in scena e dunque avviare l’esecuzione del suo script, possiamo usare la tecnica dei messaggi che consiste nell’inviare a tutti gli oggetti di Scratch un particolare messaggio, come quando in un centro commerciale sentiamo un annuncio del tipo: “Il signor Bianchi è atteso alle casse”. È un messaggio inviato indiscriminatamente a tutti, al quale però solo il signor Bianchi reagirà.
Un meccanismo simile è realizzabile in Scratch ed è molto utile per sincronizzare personaggi e azioni tra personaggi tramite coding.
Andiamo dunque nella sezione Situazioni e cerchiamo l’istruzione “invia a tutti…“:
Attenzione a non selezionare l’istruzione “invia a tutti…e attendi” che, a differenza dell’altra appena citata, sospende l’esecuzione dello script dopo aver inviato il messaggio.
Trasciniamo “invia a tutti…” nel nostro blocco di codice dopodiché personalizziamo il messaggio. Per farlo, clicchiamo sull’icona a triangolino a fianco di “messaggio1“, selezioniamo “nuovo messaggio…” e scriviamo per esempio “salutaOrso” (non è richiesta una particolare sintassi nella denominazione dei messaggi ma consiglio comunque un nome breve, inerente all’azione e possibilmente senza spazi):
Se provassimo a eseguire lo script, cliccando sull’oramai nota bandiera verde, non noteremmo alcuna differenza rispetto a prima. Non abbiamo infatti ancora istruito il leone a reagire al messaggio.
Andiamo dunque a definire il comportamento di “Lion“, ovvero il suo script. Innanzitutto, selezioniamolo dall’elenco degli Sprite posto sotto lo stage.
La prima cosa che vogliamo far fare al nostro leone è sparire. All’inizio, la scena dovrà essere tutta dell’orso che, al termine della sua passeggiata, incontrerà il leone e parlerà.
Nello script del leone dovremo:
- trascinare la situazione “quando si clicca sulla bandierina verde“,
- far eseguire l’azione “nascondi“, che si trova nella sezione Aspetto,
- posizionarlo dove vogliamo che si trovi. Per questo utilizziamo l’istruzione “vai a x: … y: …“, recuperabile dalla sezione Movimento. Potete inserire manualmente i valori delle due coordinate oppure farli calcolare automaticamente trascinando il Leone nella posizione dello stage che preferite. Ogni punto dello stage è mappabile con le coordinate x e y sfruttando il sistema di riferimento cartesiano:
Lo script del leone sarà così composto:
Il leone rimarrà in questo stato fino a quando non intercetterà il messaggio “salutaOrso” inviato appunto dall’orso.
Andiamo quindi ad aggiungere un altro script per istruire il comportamento del leone nel caso in cui si dovesse verificare la situazione: “quando ricevo salutaOrso”.
È possibile definire per uno stesso sprite diversi script distinti, ciascuno associato a una particolare situazione di avvio. L’azione che il leone dovrà compiere sarà di salutare l’orso chiedendogli come sta e poi inviare a sua volta un messaggio personalizzato in modo che l’orso possa intercettarlo e proseguire con la battuta successiva del dialogo:
Il comando “dire…per…secondi” si trova nella sezione Aspetto e quando viene eseguito mostra di fatto un fumetto, in corrispondenza del personaggio, comprensivo di testo e per un certo lasso di tempo. Testo e tempo sono specificati nel comando stesso.
Il messaggio nuovo che andremo a creare e inviare a tutti lo chiameremo “salutaLeone“.
Se provassimo a eseguire lo script ci accorgeremmo che qualcosa non va. Il leone è sì sparito dalla scena ma non appare dopo che l’orso ha smesso di camminare. Cosa manca? Abbiamo dimenticato di inserire l’istruzione che mostra lo sprite e lo colloca nella posizione in cui vogliamo che inizi a parlare.
Correggiamo dunque lo script andando ad aggiungere l’istruzione “mostra” (sezione Aspetto) e l’istruzione “scivola in 1 secondi a x: 153 y: -136” recuperabile dalla sezione Movimento. Questa istruzione applica un effetto di scivolamento, ovvero di spostamento graduale e sequenziale, dalla posizione di partenza fino alla posizione indicata dalle coordinate. L’animazione è effettuata con la velocità definita dalla durata impostata in secondi.
Di seguito lo script risultante:
Riprovando a eseguire tutti gli script noterete che il risultato è coerente con quello atteso.
Modelliamo ora il comportamento dell’orso che risponde al saluto del leone.
Selezioniamo nuovamente lo sprite Orso e modifichiamo lo script aggiungendo la nuova situazione che intercetta il messaggio “salutaLeone” e risponde al saluto:
Qualora volessimo prolungare il dialogo potremmo aggiungere l’invio di un nuovo messaggio come fatto in precedenza. Potremmo anche far entrare in scena altri personaggi, facendoli intervenire nel dialogo sempre grazie alla sincronizzazione effettuata tramite l’invio di messaggi e la gestione delle ricezioni con rispettive situazioni.
Manca ancora qualcosa, lo stage finora è vuoto, nudo. Sarebbe carino vedere chiacchierare il leone e l’orso in mezzo a una foresta, o una savana…manca un vestito allo stage. Possiamo scegliere un’immagine e settarla sfondo, per esempio. Per farlo andate nel pannello “Stage“, che trovate a fianco del pannello “Sprite“, e con il mouse posizionatevi sopra l’icona blu e selezionate la voce “Scegli uno sfondo“.
La gestione dello stage in Scratch è identica a quella di uno sprite, ritroviamo infatti le tab Codice, Sfondi (Costumi per gli sprite) e Suoni. Questo significa che anche lo stage può avere un comportamento definito da propri script, oltre alla possibilità di avere uno sfondo ed effetti sonori.
Per le finalità di questo tutorial limitiamoci ad aggiungere uno sfondo cliccando sulla tab Sfondi. Per farlo, è sufficiente eseguire un doppio click sull’immagine desiderata (per esempio Forest) oppure realizzarne una ex novo o caricare un file dal proprio computer:
Dopo aver aggiunto lo sfondo molto probabilmente occorrerà rivedere le posizioni degli sprite. Spostate in caso gli sprite nella posizione che preferite e, se necessario, modificate i parametri delle coordinate x e y negli script degli sprite.
Il mio tutorial termina qui. Se nel frattempo vi siete registrati sulla piattaforma Scratch, potete salvare il progetto nella vostra libreria online oppure, se avete utilizzato la gestione offline, potete salvarlo sul vostro pc.
Conclusioni
Abbiamo visto come il coding possa spaziare tra diverse materie: matematica, geometria, linguistica, arte, scienza e musica. Ciò che vi ho illustrato è solamente uno scorcio sul vasto panorama delle possibili applicazioni.
Utilizzando Scratch si possono far realizzare dai ragazzi simulazioni di battaglie storiche oppure dei veri e propri videogiochi nei quali applicare leggi fisiche insegnate in classe. I limiti di questo metodo didattico sono dati dall’immaginazione degli insegnanti.
Nel Web è possibile trovare molti esempi, spunti e modelli da cui trarre ispirazione. Anche la comunità Scratch, sempre più popolosa, è ricca di progetti interessanti da cui partire.
Sono certo che grazie a questo giocattolo vedremo in futuro un sacco di applicazioni fantastiche sviluppate dai nostri ragazzi.