Il Viaggiatore
Strumenti
Educazione digitale
Didattica online
Mappe didattiche
Biografie e immagini
Programmi IRC
Irc Infanzia e Primaria
Irc Scuola media
Irc Scuola superiore
Primaria
Articoli per approfondire
Schede di valutazione
Prove di verifica
Lettere. Secondaria I e II grado
Approfondimenti
Idee per il docente
didattica digitale
Storia e Geografia. Secondaria I e II grado
Storia Antica
Storia medievale
Storia Moderna e Contemporanea
Il Novecento
Storia in classe
Geografia, ambiente
Laboratori di apprendimento
Mappe concettuali, idee ed esempi
Laboratorio per il supporto
Laboratorio di lettura
Laboratori di scrittura
Laboratorio di informatica
Laboratorio di scrittura web
Laboratori linguistici
Laboratorio di matematica
Laboratorio steam
Laboratori professionali
Laboratori creativi
Arte e immagine
Educazione musicale
Scienze motorie
Filosofia. Secondaria II grado
Filosofia Antica
Filosofia Medievale & Moderna
Filosofia Contemporanea
Materiali e riflessioni
Educazione civica
scuola primaria
scuola media
scuola superiore
Filmografia didattica
Scuola primaria
Scuola media
Scuola superiore
Dizionario teologico-filosofico essenziale
Articoli
I BLOG
I Blog di Sesto
I Blog di Pratolino
I Blog di Calenzano
I Blog di Vicchio
Libri & Letture online
Collaboratori
Domande frequenti
Il Viaggiatore
Strumenti
Educazione digitale
Didattica online
Mappe didattiche
Biografie e immagini
Programmi IRC
Irc Infanzia e Primaria
Irc Scuola media
Irc Scuola superiore
Primaria
Articoli per approfondire
Schede di valutazione
Prove di verifica
Lettere. Secondaria I e II grado
Approfondimenti
Idee per il docente
didattica digitale
Storia e Geografia. Secondaria I e II grado
Storia Antica
Storia medievale
Storia Moderna e Contemporanea
Il Novecento
Storia in classe
Geografia, ambiente
Laboratori di apprendimento
Mappe concettuali, idee ed esempi
Laboratorio per il supporto
Laboratorio di lettura
Laboratori di scrittura
Laboratorio di informatica
Laboratorio di scrittura web
Laboratori linguistici
Laboratorio di matematica
Laboratorio steam
Laboratori professionali
Laboratori creativi
Arte e immagine
Educazione musicale
Scienze motorie
Filosofia. Secondaria II grado
Filosofia Antica
Filosofia Medievale & Moderna
Filosofia Contemporanea
Materiali e riflessioni
Educazione civica
scuola primaria
scuola media
scuola superiore
Filmografia didattica
Scuola primaria
Scuola media
Scuola superiore
Dizionario teologico-filosofico essenziale
Articoli
I BLOG
I Blog di Sesto
I Blog di Pratolino
I Blog di Calenzano
I Blog di Vicchio
Libri & Letture online
Collaboratori
Domande frequenti
Homepage
Laboratorio steam
Programmare con Scratch
Programmare con Scratch
Videogiochi, animazioni grafiche, storie interattive, simulazioni, ipertesti: sono sempre più numerosi i progetti didattici che si avvalgono di questo tipo di oggetti informatici. E costruirli sta diventando sempre più facile, grazie ad ambienti di sviluppo amichevoli che, oltre a consentire di ottenere risultati soddisfacenti con poco sforzo, permettono di capire meglio anche la logica degli algoritmi e quindi dei computer. È il caso di
Scratch
, il linguaggio a blocchi sviluppato nel 2007 dai ricercatori del
Lifelong Kindergarten Group
dell’MIT MediaLab di Boston, guidati da Mitchel Resnick.
Una vasta comunità virtuale
La codifica dei programmi in Scratch è molto semplice e consiste nell’impilare blocchi di forma e colore diverso, a seconda dell’istruzione che si vuole utilizzare: proprio come si fa con i mattoncini delle costruzioni, che vengono incastrati pezzo dopo pezzo. Un approccio che sa di ludico, ma che in realtà permette di avvicinarsi con profitto ai concetti di base della programmazione e del
computational thinking
. Non solo. In pieno spirito 2.0, il sito di Scratch è diventato il punto di riferimento di una vera e propria comunità virtuale che può trovare e condividere manuali gratuiti, gallerie di progetti, materiali informativi, video esplicativi, forum di discussione e permette di scaricare più di 6 milioni (al primo ottobre 2014) di progetti completamente gratuiti con licenza
Creative Commons
o di caricare i propri progetti condividendoli con gli altri utenti sparsi per il mondo. Scratch, che è un prodotto gratuito, può essere utilizzato direttamente online oppure scaricato in una versione offline (
Scratch 2.0
), che può essere costantemente aggiornata mano a mano che vengono aggiunte nuove funzionalità.
Gli elementi base:
sprite
,
stage
,
script
L’elemento base di Scratch è lo
sprite
, un oggetto grafico come la figurina del gatto che rappresenta l’icona del programma stesso. È possibile utilizzare sprite messi a disposizione da Scratch, oppure disegnarli a piacere attraverso un semplice programma di disegno o, ancora, utilizzare immagini importate da file o scattate con una macchina fotografica digitale o con la webcam. Gli sprite, inoltre, possono essere personalizzati con costumi e suoni diversi. Lo
sprite
viene collocato all’interno di un’area denominata stage, palcoscenico, dentro la quale può interagire con altri sprite durante l’esecuzione del programma, eseguendo azioni descritte in uno o più script, il vero e proprio codice associato ad ogni sprite e formato da blocchi impilati. In pratica, gli
script
rappresentano le istruzioni che indicano allo sprite che cosa deve fare: parlare, muoversi, suonare, nascondersi, mostrarsi, eseguire calcoli e tanto altro ancora.
Uno sguardo all’ambiente
Diamo insieme un’occhiata all’ambiente di sviluppo di Scratch 2.0.
Oltre alla barra dei menu in alto, dove si trovano i soliti comandi di apertura e salvataggio dei file, l’ambiente è suddiviso in tre aree. A sinistra troviamo lo stage, che parte di solito quando si fa clic sul pulsante con la bandierina verde, posto sopra lo stage stesso. Al centro troviamo l’elenco dei blocchi per codificare il programma, suddivisi in categorie; sono in pratica i mattoncini che si utilizzano per costruire il programma impilandoli nella sequenza desiderata. Infine a destra c’è l’area per programmare, detta
area Script
, in cui si trascinano e si impilano con la tecnica del
drag and drop
i blocchi che servono alla codifica del programma.
Imparare a programmare
I blocchi sono suddivisi in 10 categorie di colore diverso in base all’azione che effettuano. Nelle categorie Movimento, Aspetto, Suono si trovano i blocchi che permettono di applicare allo sprite le animazioni e i suoni desiderati; nella categoria Penna, i blocchi per sviluppare programmi di scrittura e disegno; nelle categorie
Controllo
,
Operatori
,
Variabili
e
Liste
, i blocchi per codificare le principali strutture algoritmiche (“se... allora...”; “altrimenti”; “ripeti fino a quando”; “ripeti n volte” ecc.) che agiscono sulle variabili. E ancora: i blocchi per la gestione degli eventi che lanciano l’esecuzione degli script stanno nella categoria
Situazioni
; quelli per testare il verificarsi di certe situazioni nella categoria
Sensori
e infine quelli nuovi che si possono creare associando loro uno script in modo da gestire i sottoprogrammi nella categoria
Altri Blocchi
.
Uno script viene mandato in esecuzione in seguito al verificarsi di un determinato evento (per esempio
Quando si clicca sulla bandiera verde
,
Quando si preme un tasto
,
Quando si riceve un messaggio
). Il collegamento tra blocchi può avvenire solo secondo modalità predeterminate: per esempio, sopra un blocco della tipologia
Cappello
, alla quale appartiene
Quando si clicca sulla bandiera verde
, non è possibile incastrare nessun altro blocco. In questo modo la scrittura dei programmi risulta semplificata, perché vengono eliminati gli errori di tipo sintattico.
Ulteriori spunti per imparare a programmare in Scratch possono essere trovati leggendo le
Scratch cards
, oppure consultando la sezione All tips che si trova in alto a destra nell’ambiente di sviluppo di Scratch.
Verso una didattica innovativa
Tutto pronto quindi per programmare? Sembrerebbe di sì. Ma, come spesso capita, “avere una bici” non significa per forza “essere capaci di pedalare”. Occorre a questo punto sforzarsi di trovare esercitazioni che permettano di sfruttare al meglio le potenzialità dello strumento, per raggiungere gli obiettivi desiderati in base al contesto in cui si agisce. Un aiuto ci viene scartabellando il materiale informativo che si trova sul sito di Scratch e scaricando i numerosi progetti condivisi in rete, per cogliere suggerimenti e idee su come affrontare alcuni temi in modo non del tutto canonico. Per esempio, è possibile introdurre il concetto di contatore attraverso la progettazione e realizzazione di un programma per la gestione di un semplice quiz, in cui a inizio elaborazione un contatore viene posto a zero e incrementato di un'unità ad ogni risposta corretta. Oppure insegnare a far sì che lo sprite insegua il cursore del mouse realizzando quindi animazioni che possono essere utilizzate nello sviluppo di un videogioco più complesso. Anche su Youtube si trovano diversi video che possono aiutare non solo a imparare a programmare in Scratch, ma anche a trovare idee nuove da usare in classe.
Da queste idee possono nascerne altre per modulare la didattica coniugando, quando possibile, aspetti ludici al rigore scientifico. Una scommessa non facile ma molto stimolante, che richiede al docente di rimettersi in gioco per appassionare la platea e per non buttare via un’ottima occasione di dimostrare capacità e professionalità.
Calendario dei paesaggi
Agenda 2030
Progetto PlasticART
egheneto2014@gmail.com