Lezione 2: Programmare con Angry Birds
Programmazione | Algoritmi | Labirinto | Sequenza di istruzioni
Panoramica
Usando i personaggi del gioco Angry Birds, gli alunni svilupperanno algoritmi sequenziali per spostare un uccellino da un lato di un labirinto, all'altro lato dove si trova un maialino. A tal fine, metteranno insieme i blocchi di codice in una sequenza lineare, facendoli muovere dritti, girare a sinistra o girare a destra.
Traguardo di apprendimento
In questa lezione, gli alunni svilupperanno abilità di programmazione e debugging su una piattaforma informatica. Il formato di questi esercizi in cui il codice è raffigurato da dei blocchi grafici, aiuta gli alunni ad apprendere i concetti base dell'informatica, senza doversi preoccupare di imparare una specifica sintassi.
Pianificazione
Introduzione (4 min)
Attività ponte - Programmazione (10 min)
Anteprima degli esercizi online con tutta la classe (3 min)
Attività principale (30 min)
Conclusione (5 - 10 min)
Approfondimenti
Visualizza in Code Studio
Obiettivi
Gli alunni saranno in grado di:
- tradurre i movimenti in una serie di istruzioni
- identificare e individuare gli errori in un programma
Preparazione
- Esercitati con la lezione 2 del Corso C - Esercizi online - Sito web per identificare i punti potenzialmente più critici per la tua classe.
- (Facoltativo) Scegli un paio di esercizi da fare in gruppo con tutta la classe.
- Assicurati che ogni alunno abbia un Diario di bordo - Le proprie riflessioni.
Collegamenti
Attenzione! Fai una copia di tutti i documenti che intendi condividere con gli alunni.
Per gli insegnanti
- Corso C - Esercizi online - Sito web
- Suggerimenti per le principali attività dei corsi di Fondamenti di informatica - Suggerimenti
Per gli alunni
- Corso C, Lezione 2, Labirinto - Pagina ponte - Schermata in PDF
- Blocchi tradizionali del labirinto - Scheda da ritagliare
- Diario di bordo - Le proprie riflessioni
Glossario
- Algoritmo - Un elenco di passaggi per completare un compito.
- Bug (errore) - Parte di un programma che non funziona correttamente.
- Debugging (correzione degli errori) - Individuazione e risoluzione di problemi in un algoritmo o in un programma.
- Sequenza di istruzioni - Mettere le istruzioni nell'ordine corretto al fine di farle eseguire da un computer.
Supporto
Segnala un errore
Guida didattica
Introduzione (4 min)
Ripasso dell'attività tradizionale
Questa lezione si basa su molti concetti che gli alunni hanno appreso nella lezione tradizionale "Costruire le fondamenta". È importante riprendere alcuni concetti (come perseveranza e debugging) in modo che la classe possa trarne il massimo vantaggio anche attraverso il lavoro online.
Visualizzazione - Mostra agli alunni le immagini dell'attività "Costruire le fondamenta", svolta nella lezione precedente.
Confronto - Chiedi agli alunni perché hanno dovuto superare la difficile esperienza di creare una struttura seguendo regole predeterminate.
- Ricordi qualche concetto che abbiamo imparato?
- Perseveranza, frustrazione, debugging
- Quando commetti un errore, dovresti arrenderti? Gettare via tutto e ricominciare da capo?
Transizione - Dopo esserti assicurato che i tuoi alunni ricordino bene "Costruire le fondamenta", puoi passare all'Attività ponte.
Attività ponte - Programmazione (10 min)
Transizione da tradizionale a tecnologico
Questa breve attività aiuterà gli alunni a mettere in relazione le idee di perseveranza e debugging con gli esercizi che stanno per eseguire online.
Visualizzazione - Proietta in classe l'immagine della schermata Corso C, Lezione 2, Labirinto - Pagina ponte - Schermata in PDF. Assicurati di aver precedentemente posizionato i blocchi di movimento nell'area di lavoro usando le schede da ritagliare Blocchi tradizionali del labirinto - Scheda da ritagliare come mostrato nel seguito:
Illustrazione - Spiega agli alunni che gli stai mostrando un'area di lavoro che assomiglia a quella che vedranno quando inizieranno a svolgere gli esercizi sul sito di Code.org. Come insegnante, fagli sapere che sei "così intelligente" che hai già inserito tutto il codice di cui avrai bisogno per risolvere questo esercizio, poi chiedigli di guardarti mentre lo "Esegui" muovendo il dito (o qualche altro indicatore) lungo il percorso.
Non passerà molto tempo prima di imbatterti in un blocco di dinamite (TNT): fingi frustrazione!
Confronto
- Come pensate che mi senta in questo momento?
- Dovrei rinunciare?
- Dovrei buttare via tutto il codice e ricominciare da capo?
Riflessione - Come posso risolvere questo programma, in modo da non finire nella dinamite?
Esercitazione - Chiedi agli alunni di escogitare delle soluzioni per fare in modo che l'uccellino eviti la dinamite. A seconda del livello della tua classe, potresti chiedere di correggere gli errori uno ad uno, eseguendo ogni volta il "programma" tutti insieme, oppure gli alunni potrebbero essere in grado di sistemare l'intero programma, prima di provarlo tutti insieme.
Condivisione - Chiedi ad alcuni volontari di aiutarti a spostare i blocchi nella giusta posizione. Insieme alla classe, "esegui" il "programma" più e più volte, correggendo gli errori, finché l'uccellino non fa ciò che dovrebbe. Continua a sottolineare i momenti che riguardano la perseveranza, la frustrazione e il debugging.
Quando la tua classe raggiunge il maialino, celebra non solo i loro successi, ma anche la loro perseveranza!
Anteprima degli esercizi online con tutta la classe (3 min)
Ora gli alunni dovrebbero essere pronti a vedere un vero esercizio in azione!
Suggerimenti
Alcuni alunni potrebbero avere difficoltà a far andare l'uccellino nella direzione corretta, in particolare quando l'uccellino non si dirige verso l'alto. Ricorda agli alunni che quando diciamo "gira a sinistra" o "a destra", stiamo dando le indicazioni dal punto di vista dell'uccellino.
Illustrazione - Svolgi l'esercizio 5 della lezione 2 insieme a tutta la classe. È lo stesso esercizio che hanno appena visto nell'attività ponte. Mentre lavori su questo esercizio con la classe, ricorda agli alunni che è normale fare errori e ricordagli che l'unico modo per avere successo è essere perseveranti. Collega i limiti degli esercizi tecnologici con i limiti che gli alunni hanno affrontato nella lezione tradizionale "Costruire le fondamenta". (Quando hai completato "Costruire le fondamenta", avevi solo x stuzzicadenti e y caramelle gommose. Ora hai solo 3 blocchi vai avanti
e 2 blocchi gira a
.) Sottolinea che con queste limitazioni può essere più difficile trovare la soluzione, ma tu credi in loro!
Confronto - Qualcuno ricorda come si risolve questo esercizio?
Come insegnante, decidi se far rispondere gli alunni dai loro posti oppure se farli venire al computer per trascinare personalmente i blocchi uno ad uno.
Transizione - Ora che gli alunni hanno visto svolgere un esercizio online, dovrebbero essere pronti ad iniziare a risolvere gli esercizi in autonomia. Dirigiti in aula computer o rendi disponibili i dispositivi da usare in classe.
Attività principale (30 min)
Corso C - Esercizi online - Sito web
Suggerimenti
Mostra agli alunni il modo corretto per aiutare i compagni di classe:
- non sederti sulla sedia del compagno che vuoi aiutare
- non usare la tastiera del tuo compagno
- non toccare il mouse del tuo compagno
- assicurati che il tuo compagno sia in grado di descrivere la soluzione ad alta voce prima di andar via
Girando tra i banchi - Gli insegnanti svolgono un ruolo fondamentale nell'insegnamento dell'informatica, creando un ambiente vitale e collaborativo. Durante gli esercizi online, il ruolo dell'insegnante è principalmente di incoraggiamento e supporto. Le lezioni tecnologiche sono pensate per essere fruite in autoapprendimento, quindi gli insegnanti dovrebbero evitare di intervenire quando gli alunni rimangono bloccati. Ecco alcune idee su come comportarsi.
- Quando possibile, usa la Programmazione in coppia - Video per gli alunni.
- Stimola gli alunni con domande/sfide da affrontare con il proprio compagno.
- Le domande che restano senza risposta, possono essere girate ad un gruppo vicino, che potrebbe già conoscerne la risposta.
- Ricorda agli alunni di seguire sempre tutto il processo di debugging prima di rivolgersi a te.
- Chiedi agli alunni di descrivere il problema che stanno avendo. Cos'è successo? Che cosa sarebbe dovuto succedere? Questo cosa ti suggerisce?
- Ricorda agli alunni frustrati che la frustrazione è un passo avanti nel percorso di apprendimento e che la perseveranza li ripagherà.
- Se un alunno è ancora bloccato dopo tutto ciò, ponigli domande mirate per indurlo ad individuare da solo il problema.
Confronto - Dopo aver avvisato gli alunni che la lezione sta per terminare, attira l'attenzione di tutti e falli riflettere sulle esperienze che hanno appena vissuto.
- Qualcuno si è sentito frustrato durante qualche esercizio?
- Qualcuno ha dovuto esercitare la propria perseveranza?
Transizione - Chiedi agli alunni di prendere i loro diari di bordo e lasciagli un momento per riflettere sulla lezione.
Conclusione (5 - 10 min)
Diario di bordo
Far scrivere agli alunni ciò che hanno appreso, perché è utile e come si sentono al riguardo, può aiutare a consolidare le conoscenze acquisite oggi e a creare un riferimento da consultare in futuro.
Spunti per il diario di bordo
- Di cosa trattava la lezione di oggi?
- Come ti sei sentito durante la lezione di oggi?
- Disegna un'attività che ti è piaciuta e su cui ti sei impegnato per la prima volta. Disegna o descrivi come sei migliorato.
Approfondimenti
Sfrutta queste attività per migliorare l'apprendimento degli alunni. Possono essere anche utilizzate come attività extra-scolastiche.
*Crea il tuo labirinto
Divisi in piccoli gruppi, fai progettare agli alunni i propri labirinti e falli sfidare tra di loro a scrivere i programmi per risolverli. Per aggiungere divertimento, puoi anche creare dei labirinti a grandezza naturale facendo interpretare agli alunni i ruoli di uccellino e maialino.
Mappatura delle competenze
Visualizza la mappatura completa del corso
CSTA K-12 Computer Science Standards (2017)
AP - Algoritmi e programmazione
- 1A-AP-09 - Modella il modo in cui i programmi memorizzano e manipolano i dati utilizzando numeri o altri simboli per rappresentare le informazioni.
- 1A-AP-11 - Individua (scompone) i passaggi necessari per risolvere un problema in una sequenza precisa di istruzioni.
Competenze interdisciplinari
Questo elenco riporta le competenze di altre materie sulle quali gli alunni hanno l'opportunità di esercitarsi in questa lezione.
Competenze linguistiche
L - Lingua
- 2.L.6 - Utilizzare parole e frasi acquisite attraverso conversazioni, letture e in risposta ai testi, incluso l'uso di aggettivi e avverbi per descrivere (ad esempio, quando gli altri bambini sono felici, la cosa mi rende felice).
SL - Parlare e ascoltare
- 2.SL.1 - Partecipare a conversazioni collaborative con diversi compagni su argomenti e testi di seconda elementare con compagni e adulti in gruppi piccoli e più grandi.
Competenze matematiche
G - Geometria
- 2.G.2 - Suddividere un rettangolo in righe e colonne di quadrati della stessa dimensione e contarli per trovarne il numero totale.
MP - Esercizi di matematica
- MP.1 - Comprende il significato dei problemi e persevera nella loro soluzione.
- MP.3 - Costruisce argomentazioni valide e analizza in modo critico i ragionamenti degli altri.
- MP.5 - Utilizza strategicamente strumenti appropriati.
- MP.6 - Punta alla precisione.
- MP.7 - Cerca e fa uso di strutture.
- MP.8 - Cerca ed esprime delle regolarità nel ragionamento ciclico.
OA - Operazioni e pensiero algebrico
- 2.OA.1 - Usa l'addizione e la sottrazione entro il numero 100 per risolvere problemi formulati a parole in una o due fasi che implicano situazioni in cui bisogna aggiungere, sottrarre, mettere insieme, smontare e confrontare, con incognite in tutte le posizioni, ad esempio usando disegni ed equazioni con un sistema
Competenze scientifiche
ETS - Engineering in the Sciences
ETS1 - Progettazione
- K-2-ETS1-1 - Porre domande, fare osservazioni e raccogliere informazioni su una situazione che le persone vogliono cambiare per definire un semplice problema che può essere risolto attraverso lo sviluppo di un oggetto o strumento nuovo o migliorato.
- K-2-ETS1-2 - Sviluppare un semplice schizzo, disegno o modello fisico per illustrare come la forma di un oggetto lo aiuti a funzionare come necessario per risolvere un dato problema.
- K-2-ETS1-3 - Analizzare i dati dai test di due oggetti progettati per risolvere lo stesso problema per confrontare i punti di forza e di debolezza di come ciascuno si comporta.