Insegnare a progettare il proprio apprendimento con il coding - Lezione 1
-
Upload
michele-maffucci -
Category
Education
-
view
6.237 -
download
2
Transcript of Insegnare a progettare il proprio apprendimento con il coding - Lezione 1
Insegnare a progettare il proprio apprendimento con il coding
Lezione 1Prof. Michele Maffucci
CC-BY-SA Prof. Michele Maffucci
CC-BY-SA
Prof. Michele Maffucci
Argomenti
● Introduzione● Perché?● Soluzione 1: Light-bot
○ Il linguaggio○ L’ambiente di programmazione
● Soluzione 2: The Foos● Soluzione 3: studio.code.org - costruire un percorso didattico
○ l'ora del codice○ corsi di 20 ore○ corso introduttivo di informatica di 20 lezioni
● Soluzione 4: Run Marco● Soluzione 5: Scratch● Soluzione 6: Blockly● Soluzione 7: Crunchzilla● Soluzione 8: Hackety Hack● Soluzione 9: Kids Ruby● Soluzione 10: Stencyl● Soluzione 11: Bee-Bot
○ L’esperienza dell’IC Vittorino da Feltre● Soluzione 12: Il software Bee-Bot● Soluzione 13: connessione al mondo reale con MakeyMakey● Soluzione 14: Realizzare un laboratorio di informatica con Raspberry Pi● Soluzione 15: Coder● Soluzione 16: Lego Mindstorms NXT● Qualche libro da acquistare● Idee ispiratrici● Allievo demotivato?
Struttura della lezione
CC-BY-SA
Apprendimento e programmazione
Introduzione
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
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
Perché?
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Prof. Michele Maffucci
Apprendimento e programmazione Perché?
CC-BY-SA
Osservazione 1
Perché accade?
Perché in generale non si insegna ad imparare (*)
difficoltà degli studentinell’affrontare la programmazione della loro apprendimento
(*) tecniche per studiare e progettare
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
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
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
Light-botSoluzione 1
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
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:
Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
Un robot virtuale
Software multipiattaforma:
Il linguaggio di programmazione
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
Il linguaggio è costituito dalle seguenti istruzioni:
a sinistra vedete il simbolo graficoa destra la traduzione in “informatichese”
Le istruzioni
Il linguaggio
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
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
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
L’ambiente di programmazione
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
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.
Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
Le istruzioni
Incominciamo!
Selezione della lingua
L’ambiente di prg.
Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
Per cancellare i progressi effettuati click sulSlot1 > click su cestino.
Programmazione
L’ambiente di prg.
1
2
3
Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
Cinque i percorsi possibili:
1. Base2. Procedure3. Cicli4. Sprite Box5. 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
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
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.
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.
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.
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.
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.
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.
Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
Il programma sarà:
Programmazione 2/2
L’ambiente di prg.
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
Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
Light-bot è anche disponibile per smartphone iOS e Android.
Programmazione
Esercizio
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Prof. Michele Maffucci
Apprendimento e programmazione Soluzione 1: Light-Bot
CC-BY-SA
Completare il livello Basics in non più di 15 minuti
Esercizio
The Fooshttp://www.thefoos.com/hourofcode/
Soluzione 2
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
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 parametri3. Ancora sequenze4. Loop
Soluzione 2: The Foos
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
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Soluzione 2: The Foos
Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Costruire un percorso didattico(suggerimento)
Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Utilizzare il percorso didattico di
studio.code.orgSoluzione 3
Soluzione 3: studio.code.org
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
Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
L’ora del codice
Soluzione 3: studio.code.org
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
Frozen
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Soluzione 3: studio.code.org
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
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
Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Interfaccia che guida alla comprensione
L’ora del codice
Frozen Soluzione 3: studio.code.org
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
Il labirinto
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
L’ora del codice
il labirinto Soluzione 3: studio.code.org
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
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
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
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
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
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
Esercizio
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Eseguire i 20 esercizi del labirintoin non più di 20 minuti
il labirinto Soluzione 3: studio.code.org
Laboratoriocreare una storia o inventare un gioco
(storytelling)
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione il labirinto Soluzione 3: studio.code.org
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
Flappycreazione di un gioco interattivo
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
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
Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Corsi di 20 ore
Soluzione 3: studio.code.org
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
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
Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Corsi di 20 ore Corso 1
Soluzione 3: studio.code.org
Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Corsi di 20 ore Corso 2
Soluzione 3: studio.code.org
Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Corsi di 20 ore Corso 3
Soluzione 3: studio.code.org
Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Corsi di 20 ore Corso 4
Soluzione 3: studio.code.org
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
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
Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Corsi di 20 ore
Piano di lavoro per ogni lezione
Soluzione 3: studio.code.org
Prof. Michele Maffucci
Apprendimento e programmazione
CC-BY-SA
Corso introduttivo di informatica di
20 lezioni
Soluzione 3: studio.code.org
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
Run Marcosoluzione 4
https://www.allcancode.com
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
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.
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Il gioco on-line prevede l’installazione di un plug-in
Soluzione 4: Run Marco
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Ad installazione avvenuta la pagina del gioco verrà ricaricata
Soluzione 4: Run Marco
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Inserire la lingua dell’utente
Soluzione 4: Run Marco
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Avviare il programma
Soluzione 4: Run Marco
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Selezionare il percorso (possibile per ora 1 solo percorso)
Soluzione 4: Run Marco
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Mappa del viaggio
Soluzione 4: Run Marco
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Partenza - click su “SI!” per visualizzare la guida
Soluzione 4: Run Marco
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
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Un click sulla freccia per proseguire nell’avventura
Soluzione 4: Run Marco
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Ogni tragitto deve essere implementato con funzioni diverse
Soluzione 4: Run Marco
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
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Mappa dei 10 livelli - (i livelli successivi saranno implementati a breve)
Soluzione 4: Run Marco
ScratchSoluzione 5
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
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
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
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Come incominciarescratch.mit.edu
Soluzione 5: Scratch
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
BlocklySoluzione 6
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
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.
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”
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:
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:
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Soluzione 6: Blokly
Puzzle per programmare
Alla decima lezione bisognerà manipolare istruzioni di cicli e scelte:
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.
CrunchzillaSoluzione 7
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
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.
Hackety HackSoluzione 8
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
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.
Kids RubySoluzione 9
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
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.
StencylSoluzione 10
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
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.
BeeBotSoluzione 11
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
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.
L’esperienza dell’IC Vittorino da Feltre
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Soluzione 5: BeeBot
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
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
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
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
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
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
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
Il software BeeBotSoluzione 12
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
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
Connessione al mondo reale con MakeyMakey
Soluzione 13
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
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 )
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Connessione al mondo reale
Soluzione 13: MakeyMakey
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Connessione al mondo reale
Soluzione 13: MakeyMakey
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
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Connessione al mondo reale
Video
Soluzione 13: MakeyMakey
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
Realizzare un laboratorio di informatica con
Raspberry PiSoluzione 14
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
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”.
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Soluzione 14: Lab. informatica con Raspberri Pi
Raspberry PI
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Soluzione 14: Lab. informatica con Raspberri Pi
Raspberry PI
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Soluzione 14: Lab. informatica con Raspberri Pi
Raspberry PI
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Soluzione 14: Lab. informatica con Raspberri Pi
Raspberry PI
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione Soluzione 14: Lab. informatica con Raspberri Pi
Raspberry PI
CoderSoluzione 15
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
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
Lego Mindstorms NXTSoluzione 16
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
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.
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
Robotica
Soluzione 16: Lego Mindstorms NXT
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
Qualche libro da aquistare
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
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.
Idee ispiratrici
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
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
Allievo demotivato?
Prof. Michele MaffucciCC-BY-SA
Apprendimento e programmazione
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
GrazieProf. Michele Maffucci
www.twitter.com/maffucci/www.facebook.com/maffucci.it/plus.google.com/+MicheleMaffucci/
it.linkedin.com/in/maffucci
Licenza presentazione: