Predisposizione di esempi pratici e applicabili in classe volti al miglioramento delle competenze logico-matematiche e delle capacità organizzative degli allievi mediante l’uso di software di programmazione con forte grado di interattività, opensource e gratuiti. Si mostrerà come il “Creative Computing” possa agevolare lo sviluppo del pensiero strutturato (computational thinking) assieme al pensiero creativo mediante la programmazione.
4. La seguente presentazione è un’ampliamento del primo corso svolto nel 2014: Insegnare a progettare il
proprio apprendimento nato dal mio contributo al “69° carnevale della matematica” con tema:
“Macchine matematiche antiche e moderne” e si sviluppa con ulteriori contributi.
Il mio intervento si è concentrato su esempi pratici, sperimentati durante le mie lezioni, in cui espongo
suggerimenti ed idee su come insegnare ai bambini e agli adolescenti a programmare questa “macchina
matematica” (il computer), in modo che possano da grandi imparare a programmare “macchine
matematiche” più complesse.
L’intento di questo corso, che si svolgerà in 4 lezioni, è quello di mostrare esempi pratici e applicabili in
classe volti al miglioramento delle competenze logico-matematiche e delle capacità organizzative degli
allievi mediante l’uso di software di programmazione con forte grado di interattività, opensource e gratuiti.
Si mostrerà come il “Creative Computing” possa agevolare lo sviluppo del pensiero strutturato
(computational thinking) assieme al pensiero creativo utilizzando il coding (programmazione).
Per contatti ed ulteriori informazioni rimando alle ultime pagine di questa lezione.
Grazie
Ulteriori approfondimenti e risorse a questo corso possono essere trovate sul mio sito personale al
seguente link:
http://www.maffucci.it/
Le slide utilizzate sono suscettibili di variazioni/correzioni che potranno essere fatte in ogni momento.
Prof. Michele Maffucci
Apprendimento e programmazione Introduzione
CC-BY-SA
6. Prof. Michele Maffucci
Apprendimento e programmazione Perché?
CC-BY-SA
Osservazione 1
Perché accade?
Perché in generale non si insegna ad
imparare (*)
difficoltà degli studenti
nell’affrontare la programmazione
della loro apprendimento
(*) tecniche per studiare e progettare
7. Prof. Michele Maffucci
Apprendimento e programmazione Perché?
CC-BY-SA
Osservazione 2
Queste azioni, informatiche, sono da
insegnare, non nascono naturalmente
si da per acquisito che lo studente
impari da solo a studiare, a
memorizzare
8. Prof. Michele Maffucci
Apprendimento e programmazione Perché?
CC-BY-SA
non solo nozioni
Lo studente, ma soprattutto l’insegnante, dovrebbe aggiungere alla propria
azione didattica il modulo:
che in altro modo può essere tradotto in:
impara ad ordinare i tuoi pensieri
impara a risolvere i problemi
impara a programmare
in questo modo lo studente avrà la competenza nel formalizzare
logicamente qualsiasi tipo di progetto.
impara a pensare
9. Perché?
Perché la dispersione è da prevenire!
Prof. Michele Maffucci
Apprendimento e programmazione Perché?
CC-BY-SA
Quando?
Ma quando iniziare questa azione?
Subito!
Dalle scuole elementari
11. Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
Un robot virtuale
Light-Bot è un gioco particolarmente adatto per allievi della scuola elementare e
media che consente di apprendere concetti di programmazione senza dover
digitare nessuna linea di codice.
Mediante istruzioni grafiche bisognerà comandare il movimento di un piccolo robot.
Il gioco è largamente usato in molte scuole americane e russe, è un modo perfetto
far apprendere con divertimento la programmazione senza scontrarsi con un muro
fatto di linee di codice.
Software multipiattaforma:
14. Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
Il linguaggio è costituito dalle seguenti istruzioni:
a sinistra vedete il simbolo grafico
a destra la traduzione in “informatichese”
Le istruzioni
Il linguaggio
15. Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
Il primo programma
main:
forward();
forward();
light();
main:
avanti();
avanti();
accenti_luce();
linguaggio grafico
linguaggio “informatichese”
linguaggio “informatichese -
italiano”
Le istruzioni
Il linguaggio
16. Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
Il secondo programma
main:
jump();
turnRight();
forward();
light();
main:
salta();
gira_a_destra();
vai_avanti();
accendi_luce();
linguaggio grafico
linguaggio “informatichese”
linguaggio “informatichese -
italiano”
Le istruzioni
Il linguaggio
17. Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
Nella vita di ogni giorno ogni singola azione può essere scomposta in procedure
più semplici e le procedure in Light-bot vengono così indicate:
Esempio:
main:
forward();
proc1();
proc1();
proc1:
jump();
jump();
light();
Le istruzioni
Il linguaggio
19. Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
Le istruzioni
Incominciamo!
Segui il link o fai click
sull’immagine per
incominciare a programmare
all’interno della tua finestra
browser.
L’ambiente di prg.
20. Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
Le istruzioni
Incominciamo!
Selezione della lingua
L’ambiente di prg.
21. Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
Per cancellare i progressi effettuati click sul
Slot1 > click su cestino.
Programmazione
L’ambiente di prg.
1
2
3
22. Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
Cinque i percorsi possibili:
1. Base
2. Procedure
3. Cicli
4. Sprite Box
5. Code.org
I primi tre percorsi possono essere i tre
moduli didattici principali su cui costruire
le vostre lezioni di informatica.
Programmazione
L’ambiente di prg.
1 2
3
23. Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
Sprite BOX è un coding game
Code.org permette di generare il
certificato che attesta il completamento
del percorso “un’Ora del Codice”
Programmazione
L’ambiente di prg.
4
5
24. Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
Prima di incominciare il robot vi spiegherà come funziona l’interfaccia di
programmazione.
All’inizio il robot vi dirà:
1. “Ho bisogno del tuo aiuto per illuminare tutte le piastrelle blu!”
2. “Il comando “light” mi dice di illuminare una piastrella”
Programmazione
1 2
L’ambiente di prg.
25. Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
1. “per programmarmi premi sui comandi che trovi sotto per aggiungerli nello
spazio MAIN”
2. “quando hai finito premi >”
Programmazione
1 2
L’ambiente di prg.
26. Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
1. “se vuoi che io ti ripeta queste istruzioni premi sul pulsante ?”
2. “buona fortuna”
Programmazione
1 2
L’ambiente di prg.
27. Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
Nel primo programma viene chiesto di effetuare due passi in avanti ed accendere
la luce
Programmazione 1/2
L’ambiente di prg.
28. Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
Se il risultato è giusto si accenderà la luce.
Programmazione 2/2
L’ambiente di prg.
29. Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
Nel sesto programma viene chiesto di eseguire un percorso con più salti e più
accensioni di luce:
Programmazione 1/2
L’ambiente di prg.
31. Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
La realizzazione dei programmi potrà essere fatta tutti insieme su una LIM oppure
da soli o per gruppi su computer o chi potrà su tablet.
Programmazione
32. Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
Light-bot è anche disponibile per smartphone iOS e Android.
Programmazione
34. Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
Completare il livello Basics in non più di 15 minuti
Esercizio
36. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Un gioco indirizzato ai bambini delle scuole elementari che si sviluppa in 1 ora di
impegno. Il piano didattico è strutturato in 4 lezioni che il bambino percepisce come 4
livelli di gioco, in cui vengono affrontati 4 concetti fondamentali della programmazione:
1. Cos’è l’informatica echi sono i Foos (in altro modo le sequenze)
2. Comandi e parametri
3. Ancora sequenze
4. Loop
Soluzione 2: The Foos
37. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Disponibile per ogni
piattaforma
1 ora di lezione
A fiine lezione rilascio di
un certificato (diplomino)
Piano di lavoro per il
docente e soluzioni
Soluzione 2: The Foos
40. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Utilizzare il percorso
didattico di
studio.code.org
Soluzione 3
Soluzione 3: studio.code.org
41. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
La sezione STUDIO di code.org
consente di strutturare un percorso
completo di base di informatica che
potrà agevolmente essere
personalizzato dal docente.
Tutte le sperimentazioni (impostate
come gioco) aggiungono ad ogni passo
concetti di informatica, logica e
matematica che l’allievo ritroverà nei
successivi anni di studio utilizzando
linguaggi di programmazione più
complessi.
Ogni sezione è guidata da filmati e testi
(tutti prelevabili) che guidano nello
svolgimento di tutte le esercitazioni.
Tutte le esercitazioni possono essere
impiegate dalle scuole elementari ai
primi due anni di scuola superiore.
Soluzione 3: studio.code.org
43. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Corsi per tutte le età da svolgere in circa 1 ora di tempo.
Non farsi ingannare dalla grafica “elementare” adatta per allievi giovanissimi, gli esercizi
possono essere usati anche come propedeutici a corsi di informatica di più alto livello.
Ad esempio se si intende sviluppare un percorso di informatica utilizzando Scratch pouò
essere utile impostare lezioni introduttive in cui svolgere gli esercizi: “L’ora del codice”
L’ora del codice
Soluzione 3: studio.code.org
45. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Ogni lezione è guidata da un video
Ogni lezione è guidata da un video di presentazione, con possibilità di prelevare il video e
poterlo visualizzare localmente sul proprio computer.
I video sono sottotitolati anche in italiano.
Prelevare il video
L’ora del codice
Frozen Soluzione 3: studio.code.org
46. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Ogni lezione è guidata da un testo di spiegazione
Ogni lezione è guidata da un testo (in italiano) che spiega come svolgere l’esercitazione.
L’ora del codice
Frozen Soluzione 3: studio.code.org
47. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Interfaccia che guida alla comprensione
L’ora del codice
Frozen Soluzione 3: studio.code.org
48. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Obiettivo da raggiungere ad ogni passo
L’ora del codice
Frozen Soluzione 3: studio.code.org
51. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Utilizzo di un linguaggio di
programmazione visuale in cui per
scrivere codice si trascinano e
rilasciano blocchi logici a forma di
puzzle che devono essere incastrati
per costruire il programma.
Ogni "blocco" corrisponde ad una riga
di codice reale.
In 20 brevissime lezioni possono
essere appresi i concetti informatici di
base utilizzati in ogni tipo di
applicazione.
L'obiettivo è quello di programmare il
movimento di un ucellino (Angry Bird)
attraverso un labirinto.
L’ora del codice
il labirinto Soluzione 3: studio.code.org
52. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Sul lato sinistro viene visualizzato il labirinto attraverso cui il programma deve
guidare Angry Bird. Le spiegazioni per ciascun puzzle sono scritte al di sotto del
labirinto.
L’ora del codice
il labirinto Soluzione 3: studio.code.org
53. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
La "cassetta degli attrezzi" visualizzata nel mezzo, contiene le istruzioni per guidare
Angry Birds. Devono essere usate per costruire il programma.
Ogni lezione prevede l’uso di
un limitato numero di blocchi
(istruzioni) su cui è possibile
modificare il valore di alcuni
parametri.
L’ora del codice
il labirinto Soluzione 3: studio.code.org
54. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Sulla destra è presente l’area di lavoro, nella quale dovranno essere spostati i
blocchi prendendoli dalla cassetta degli attrezzi. Unendo i blocchi si costruisce il
programma. Per eliminare un blocco è sufficiente spostarlo nel cestino situato
nell’angolo superiore destro.
Alcuni esercizi prevedono l’uso obbligato di istruzioni che vengono presentate
subito nell’area di lavoro e che non possono essere cancellati.
L’ora del codice
il labirinto Soluzione 3: studio.code.org
55. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Per fare più di un'azione, spostare più blocchi nell'area di lavoro mettendoli uno
sotto l'altro. Angry Birds eseguirà le istruzioni associate ai blocchi procedendo
dall'alto verso il basso.
L’ora del codice
il labirinto Soluzione 3: studio.code.org
56. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Dal pulsante mostra codice sarà possibile visualizzare la traduzione da blocchi
logici a JavaScript, tra i linguaggi di programmazione più usati al mondo.
L’ora del codice
il labirinto Soluzione 3: studio.code.org
58. Laboratorio
creare una storia o inventare un gioco
(storytelling)
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione il labirinto Soluzione 3: studio.code.org
59. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Creare giochi usando il Laboratorio. I giochi migliori hanno una storia ed ogni storia ha i
suoi personaggi. Gli studenti impareranno a far sì che i personaggi, quali streghe, alieni
e animali, parlino, si muovano ed interagiscano tra loro. Alla fine di questa lezione, gli
studenti sapranno realizzare un gioco a partire da zero e condividerlo con gli amici.
L’ora del codice
Laboratorio Soluzione 3: studio.code.org
60. Flappy
creazione di un gioco interattivo
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
61. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Insegnare a rendere interattivi i programmi con azioni da tastiera.
Lo studente imparerà in 10 minuti a realizzare il famosissimo gioco: Flappy Bird.
Imparerà cos’è un evento e cos’è un gestore di eventi.
L’ora del codice
Flappy Soluzione 3: studio.code.org
63. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Corsi di 20 ore per principianti di ogni età.
Percorsi completi, con unità didattiche ben strutturate, con piano di lavoro già impostato
(in lingua inglese) pronte per essere impiegati in qualsiasi percorso di informatica di
scuola elementare e media.
Le attività includono anche alcune esercitazioni da svolgere con carta e penna.
Soluzione 3: studio.code.org
64. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Corsi di 20 ore
Panoramica dei corsi Piano di lavoro per ogni corso
Soluzione 3: studio.code.org
69. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Corsi di 20 ore
Immediata visualizzazione dello stato di avanzamento dei progressi conseguiti in modo
che l’allievo abbia immediatamente percezione (e soddisfazione) del suo
apprendimento e dell’aumento delle proprie competenze.
Soluzione 3: studio.code.org
70. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Corsi di 20 ore
Presenza di attività senza il collegamento alla rete.
Soluzione 3: studio.code.org
73. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Corso introduttivo di informatica per scuole elementari e medie inferiori
(in 20 lezioni)
Questo corso in 20 lezioni introduce i concetti fondamentali dell'informatica e della
programmazione. Il corso è progettato per l'uso nelle scuole elementari e medie inferiori,
ma è divertente per imparare a qualunque età.
Soluzione 3: studio.code.org
75. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Soluzione 4: Run Marco
Un gioco che potrebbe essere definito
come “gioco avventuroso di
programmazione” con cui gli studenti
possono giocare su iPad, Android,
Kindle Fire, oppure online.
Gli studenti imparano a programmare
attraverso il gioco utilizzando blocchi da
incastrare.
La rappresentazione degli oggetti
funzionali di base è fatta sia attraverso il
testo scritto che attraverso l’immagine in
modo che il gioco possa essere
compreso sia in età prescolare che
durante i primi anni di scuola
elementare.
Attualmente è possibile raggiungere il
decimo livello e sono in via di
realizzazione le successive fasi di gioco.
83. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Spostare i blocchi presenti nell’area di programmazione (a sinistra) per consentire lo
spostamento di Marco
Soluzione 4: Run Marco
86. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
La raccolta di tutti gli oggetti incontrati nel tragitto costituisce la chiave (una testa di un leone) che
permetterà l’apertura di un porta di pietra che permette di raggiungere il “mondo” successivo.
Soluzione 4: Run Marco
89. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Soluzione 5: Scratch
Per usare scratch non è
necessario avere
competenze da
programmatore.
L’utilizzo è completamente
grafico e programmare
vuol dire operare con
mattoncini colorati che
uniti insieme costituiscono
la struttura del
programma.
L’atto dell’imparare a
programmare avviene
costruendo storie
interattive, giochi in
generale programmi
multimediali.
1
2
3
90. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Storie interattive
Animazioni
Giochi
Attività musicali
Attività artistiche
1
2
3
4
5
“...Mentre creano e
condividono progetti i ragazzi
imparano concetti matematici
e computazionali
fondamentali, imparano nel
contempo a pensare più
creativamente, a ragionare
sistematicamente e a lavorare
collaborando…”
dalle parole del team di sviluppo di Scratch
Cosa si può costruire
Soluzione 5: Scratch
92. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Corso introduttivo
Breve corso introduttivo sull’uso di Scratch reperibile ai seguenti link: link1 - link2
Soluzione 5: Scratch
94. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Soluzione 6: Blokly
Puzzle per programmare
Blockley è un ambiente di programmazione
grafico, l’utente sposta dei blocchi, simili a
tasselli di un puzzle, per realizzare le proprie
applicazioni. Similitudini di programmazione a
Blocky e Scratch.
Non è necessario avere una connessione ad
internet per usare Blockley, infatti se a scuola
si possiede una connessione lenta, o
inesistente, nessun problema, scaricate il
tutorial in un unico file da 3MB e poi eseguite
il tutto o sul computer o su una chiavetta USB.
Sul sito di riferimento:
https://code.google.com/p/blockly/ potrete
trovare gli ultimi aggiornamenti con più
esercizi.
95. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Soluzione 6: Blokly
Puzzle per programmare
Un buon modo per insegnare ai bambini ad usare Blockley è quello di eseguire il tutorial “labirinto”
96. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Soluzione 6: Blokly
Puzzle per programmare
10 esercizi guidati di programmazione in cui dovrete spostare, utilizzando i comandi messi a
disposizione, un omino all’interno di un labirinto.
Una volta che avrete unito i blocchi, potrete eseguire il programma facendo click sull’apposito pulsante:
97. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Soluzione 6: Blokly
Puzzle per programmare
Nel caso venga commesso un errore, sarete avvertiti e vi verrà richiesto di riprovare a riscrivere il
programma:
99. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Soluzione 6: Blokly
Puzzle per programmare
In fondo a sinistra della schermata di editing trovate i due pulsanti:
Rispettivamente:
● visualizzare il codice JavaScript generato;
● condividere il programma con altri utenti.
101. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Soluzione 7: Crunchzilla
Imparare JavaScript
Crunchzilla, tre percorsi di apprendimento alla programmazione JavaScript, per
allievi delle scuole elementari, medie e superiori.
103. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Soluzione 8: Hackety Hack
Imparare Ruby
Hackety Hack, insegna le basi della programmazione in Ruby partendo da zero.
Non è necessaria nessuna precedente esperienza di programmazione.
105. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Soluzione 9: Kids Ruby
Imparare Ruby
Con Kids Ruby gli studenti realizzeranno divertentissimi programmi in Ruby in
modo estremamente semplice e coinvolgente, adatto per allievi di scuola
elementare e medie. Il software multipiattaforma funziona su: Mac, Windows,
Linux, Raspberry Pi.
107. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Soluzione 10: Stencyl
Creare giochi
Stencyl è una piattaforma di sviluppo di videogiochi, particolarmente adatta per studenti di scuola
media e scuola superiore. Lo sviluppo del gioco non avviene digitando lunghissime linee di codice, ma
strutturando programmi che ricordano quelli sviluppati con Scratch. Nella versione gratuita è possibile
creare giochi in Flash che funzionano in qualsiasi browser, mentre con le versioni commerciali in
abbonamento annuale, sarà possibile creare programmi che funzionano su qualsiasi computer, tablet e
smartphone.
109. Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 5: BeeBot
CC-BY-SA
L’ape robot
Per i più piccoli: imparare la programmazione con la robotica.
Bee Bot una piccola ape robot in grado di essere programmata dal bambino mediante pulsanti posti sul
dorso della piccola ape.
111. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
L’ape robot
Ottimo, sia per migliorare le competenze logiche matematiche, ma anche per migliorare l’orientamento
spaziale ma anche nello studio della geometria elementare.
Il rapporto di collaborazione didattica nato con l’IC Vittorino da Feltre di Torino ha avviato una serie di
sperimentazioni informatiche, tra queste la progettazione di un percorso didattico con BeeBot realizzato
dalla maestra Bruna Moresco per i suoi allievi della classe 4’C (a.s. 2013/14).
Queste le schede gentilmente prodotte dalla maestra per documentare l’attività didattica.
“Bee-bot” ha la forma di un’ape un po’ arrotondata, sul dorso si
notano quattro frecce con i comandi: AVANTI, INDIETRO, DESTRA,
SINISTRA.
Al centro vi è il pulsante “GO” e , sotto alle frecce, vi sono due
pulsanti blu, uno a destra e l’altro a sinistra, che servono
rispettivamente per mettere il robot in pausa e resettare i comandi
dati.
Questo strumento è servito in un primo momento per imparare le
moltiplicazioni e le divisioni per 10- 100- 1000 con i numeri decimali e,
in un secondo momento per progettare e costruire percorsi più
complessi.
L’esperienza Soluzione 5: BeeBot
112. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Matematica
MOLTIPLICAZIONI E DIVISIONI PER 10-100-1000
Procedimento:
Costruire un percorso lineare, composto da sette blocchi rettangolari a forma di freccia, della lunghezza
di 15 cm (corrispondente al passo del robot) e della larghezza di 7,5 cm.
1/3
L’esperienza Soluzione 5: BeeBot
113. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Matematica
● Su ogni casella scrivere i simboli per identificare la posizione delle cifre: migliaia, centinaia, decine, unità, decimi,
centesimi, millesimi, separando la parte intera dalla parte decimale con la virgola.
● Applicare una virgola di cartoncino, con il nastro adesivo, alla bocca dell’ape e sistemarla nella casella delle unità.
● Posizionare il numero di partenza sul percorso, ad esempio 3,18 X 100= il 3 in corrispondenza delle unità, l’1 dei
decimi e l’8 dei centesimi.
2/3
L’esperienza Soluzione 5: BeeBot
114. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
L’ape robot
● Programmare il robot, in modo che proceda in avanti o all’indietro, di tanti passi quanti ne richiede l’operazione da
svolgere.
● Premere il tasto “GO”.
● L’ape, avanza lungo il percorso, trasporta la virgola applicata sulla bocca e, al termine del tragitto, gli allievi leggono
il risultato ottenuto.
3/3
L’esperienza Soluzione 5: BeeBot
115. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Percorsi con BeeBot
A piccoli gruppi gli alunni creano un percorso
condiviso, composto da più caselle che preveda
l’utilizzo di tutti i comandi dell’ape robot.
Dopo aver ideato e concordato il circuito, si passa alla
fase di realizzazione, le frecce disegnate sul
cartellone, devono avere le seguenti dimensioni: 15
cm di lunghezza e 7,5 di larghezza.
L’esperienza Soluzione 5: BeeBot
116. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Percorsi con BeeBot
Durante le prove gli allievi si accorgono che Bee-bot
ruota a destra o a sinistra con un angolo di 90° e per
proseguire con il disegno di una nuova freccia,
bisogna lasciare circa un cm di spazio, altrimenti l’ape
esce dal tracciato.
Dopo varie prove e correzioni, si passa alla coloritura
del percorso e alla programmazione dei vari passaggi
tramite le frecce posizionate sul dorso del robot.
L’esperienza Soluzione 5: BeeBot
117. Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Percorsi con BeeBot
Ogni alunno, poi, verifica la propria capacità di programmare l’ape in modo
che percorra esattamente sia il tragitto creato con i compagni del gruppo di
lavoro, sia quello degli altri gruppi.
L’esperienza Soluzione 5: BeeBot
119. Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 6: BeeBot
CC-BY-SA
Il software BeeBot
Per chi però non dispone
dell’oggetto fisico è possibile
utilizzare un software gratuito
per iPad e iPhone che
permette di svolgere in
virtuale le medesime
operazioni che si farebbero
con la versione reale del
robot.
Con il programma Bee Bot
bisogna far seguire un
percorso all’ape dirigendola
nella posizione in cui è
presente un fiore. La
programmazione iniziale
avviene anche in questo caso
mediante le frecce direzione,
una volta inserite la sequenza
di istruzioni il programma
viene eseguito mediante il
pulsante “Go”.
Sito di riferimento.
Il software BeeBot
120. Connessione al mondo
reale con MakeyMakey
Soluzione 13
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
121. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Soluzione 13: MakeyMakey
Connessione al mondo reale
MakeyMakey è un oggetto in grado di rendere “fisica” l’interazione tra programmi
realizzati dagli studenti ed ambiente circostante.
Con MakeyMakey si potrà ad esempio creare periferiche in grado di interagire con i
programmi realizzati in Scratch e rendere gli oggetti più diversi oggetti interattivi.
Fare musica usando come tastiera delle banane o usando le scale o ancora
giocare a Super Mario con un block notes. Tutto ciò con MaKey MaKey costituito
da un circuito elettronico che si connette al computer via USB e alla periferica
esterna (vegetali o oggetti inanimati… quello che si vuole )
124. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Connessione al mondo reale
Non bisogna farsi spaventare dall’elettronica! Nulla di complesso.
La scheda si utilizza collegando dei fili ad oggetti fisici e un cavo USB al
computer.
Soluzione 13: MakeyMakey
126. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Connessione al mondo reale
Per imparare ad utilizzare MakeyMakey ho realizzato un tutorial in cui
vengono dati suggerimenti su possibili utilizzi.
Soluzione 13: MakeyMakey
127. Realizzare un laboratorio
di informatica con
Raspberry Pi
Soluzione 14
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
128. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Soluzione 14: Lab. informatica con Raspberri Pi
Raspberry PI
Il Raspberry Pi è una single-board computer di dimensioni ridottissime ad un costo di circa 30€,
progettato e realizzato dalla Raspberry pi foundation. La scheda è stata realizzata per stimolare
l'insegnamento dell'informatica e della programmazione per i bambini, dando loro un ambiente aperto
e stimolante.
Connessioni USB, Ethernet, video HDMI e composito, audio. Per le caratteristiche tecniche consultare
il link. Allestire un laboratorio realizzato con questa scheda potrebbe esse estremamente conveniente
e pratico, o ancora per gli studenti: “In ogni zainetto un Raspberry PI per il proprio apprendimento”.
135. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Soluzione 15: Coder
Diventare programmatori
Per gli studenti delle superiori interessante utilizzare Raspberry PI come piattaforma di sviluppo. Lo
studente potrebbe portare con se una memoria SD su cui è installato Coder un ambiente di sviluppo
OpenSource, gradevole, semplice, isegnato per la scuola, fatto per chi vuole imparare la
programmazione.
Coder trasforma un Raspberry Pi in un semplice e piccolo server web personale, un ambiente di
sviluppo web-based, l’ambiente ideale per l’apprendimento dell’HTML, CSS e Javascript. Dieci minuti
per configurare il sistema e sarete pronti per sperimentare e costruire applicativi web.
Coder è stato realizzato dal Google Creative Lab di New York.
Video
137. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Soluzione 16: Lego Mindstorms NXT
Robotica
LEGO Mindstorms NXT è un
kit robotico programmabile sia
da computer che manualmente
rilasciato dalla Lego. Viene
utilizzato soprattutto con il
linguaggio di programmazione
NXT-G, linguaggio di
programmazione grafico
costituito da blocchi funzionali
che permettono di operare su
motori e sensori. Il tal modo
l’azione dell’imparare la
matematica e l’informatica si
traduce nella realizzazione di
un robot. L’NXT può essere
programmato anche con altri
linguaggi tra cui: NXC, NBC,
RobotC, e BricxCC.
139. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Robotica
In occasione del seminario di formazione del PP&S (Problem Posing&Solving) dedicati agli insegnanti di
matematica, informatica e materie scientifiche delle scuole secondarie di secondo grado, ho realizzato un
breve corso introduttivo sull’uso di di Lego Mindstorms NXT e vuole essere un esempio pratico sul modo
con cui insegnare matematica ed informatica con la robotica. Le slide sono reperibili ai seguenti link: link1 -
link2
Soluzione 16: Lego Mindstorms NXT
141. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Libri
Suggerimenti
● JavaScript for Kids
● Super Scratch Programming Adventure!
● Learn to Program with Scratch
● Python for Kids
● Think Like a Programmer
i libri sono disponibili sia in formato elettronico che cartaceo.
143. Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Insegnare a programmare
“Insegnamo ai bambini a programmare” di Mitch Resnick del MIT Media Lab.
Resnick spiega, in modo divertente e attraverso esempi e dimostrazioni, quali siano i vantaggi che si
ottengono insegnando ai bambini a programmare, in modo che possano essere in grado non solo di
“leggere” le nuove tecnologie ma anche di crearle.
Programmare non è solo per fanatici dell’informatica, ma è qualcosa che possono fare tutti.
Video
Idee ispiratrici
145. Prof. Michele Maffucci
Apprendimento e programmazione Allievo demotivato?
CC-BY-SA
Pensieri
Utilizzando un linguaggio da informatico, per chi conosce la programmazione C, l’insuccesso
scolatico nasce perché nel proprio “programma di apprendimento” non vengono incluse le
librerie (funzioni operative) necessarie per affrontare risolvere i problemi.
#include (meraviglia.h)
#include (precisionePignoleria.h)
#include (umilta.h)
#include (openSorce.h)
#include (dream.h)
in altro modo:
guardare al mondo con meraviglia
essere precisi nelle proprie azioni di progetto
tanta umiltà
pensiero ed azioni didattiche open
sognare