Se per ottenere l’attestato dell’Ora di codice con Minecraft (code.org) ci guidano gli alunni: idee per capovolgere i ruoli
Nel precedente articolo vi ho mostrato come superare (con relative spiegazioni) i 10 livelli previsti dall’attività “Artista” (presente su code.org) ottenendo così l’attestato dell’Hour of code .
Parlando con un collega ci è venuta l’idea di capovolgere i ruoli e di chiedere agli alunni di spiegare ad alcune insegnanti (che non avevano ancora svolto l’attività) come superare i livelli. Per motivare ancor di più gli alunni abbiamo proposto loro di sperimentare l’attività “Minecraft” presente sul portale code.org
Per chi non conosce Minecraft (ma vi garantisco che i nostri studenti lo conoscono molto bene), è un gioco di tipo sandbox ovvero uno spazio entro cui si possono provare esperienze nuove, inattese e non codificate. Esso è anche un gioco open world, cioè un game in cui si può modificare il mondo circostante. Minecraft è un gioco in cui è necessario raccogliere, rompere, trasformare, etc… per poi costruire cose nuove con i materiali acquisiti. Qualcuno lo ha definitito una virtualizzazione dei mattoncini Lego, effettivamente raccogliendo, smontando e rimontando, si possono creare mondi completamente nuovi, inventando all’interno di essi avventure sempre diverse.
Scelta l’attività e la metodologia abbiamo diviso gli alunni in 4 gruppi. Ciascun gruppo doveva aiutare un insegnante nel percorso al fine di raggiungere l’attestato. Gli alunni hanno “giocato” con Minecraft a casa, mentre a scuola si sono scambiati codici e strategie.
Per superare i 14 step gli allievi hanno dovuto far fronte all’intero processo di risoluzione di un problema con la conseguente attivazione del pensiero critico. La richiesta di far da guida agli insegnanti inoltre li ha messi nella condizione di concettualizzare l’operatività e di esprimersi in maniera chiara e dettagliata.
I primi livelli si sono svolti senza difficoltà, ed eccovi le indicazioni per superarli.
Livello 1: così come per l’attività dell’Artista, anche in Minecraft l’introduzione iniziale di ogni step esplicita l’obiettivo da raggiungere. In questo caso ci viene suggerito di inserire il comando “Vai avanti” per raggiungere la pecora (ovvero l’obiettivo). Se guardate il personaggio esso è lontano di due caselle (quadrati del prato) dall’obiettivo e pertanto dovremmo inserire due volte il comando “Vai avanti”.
Di nuovo proprio come per l’Artista, vi consiglio di dare un’occhiata al codice che abbiamo scritto nella modalità JavaScript :
Livello 2: il secondo step ci mostra le funzionalità di Minecraft. Come già detto in apertura uno dei punti di forza di questo gioco di grande successo, è la possibilità di acquisire materiale di base distruggendo qualcosa di preesistente. L’introduzione ci invita a distruggere l’albero per abbatterlo. Per fare questo code.org ci consiglia di utilizzare il comando “distruggi”. In partenza ci troviamo di fronte all’albero, di nuovo i quadrati nel prato ci consentono di capire il numero di passi da fare prima di inserire il comando distruggi. Pertanto due volte il comando “vai avanti” e poi il comando “distruggi“.
Livello 3: come per il legno anche la lana deve essere recuperata. In questo livello dobbiamo tosare ben due pecore. Ci troviamo di fronte ad una delle due e contando i quadrati nel prato sappiamo che la pecora dista 2 passi. Pertanto possiamo inserire due volte il comando “vai avanti” e poi il comando “tosa“. Ora però dobbiamo raggiungere anche l’altra. Possiamo far voltare il nostro personaggio, inserendo il comando “gira a destra“; in questo modo ci troveremo la seconda pecora direttamente di fronte. Aggiungiuamo il comando “vai avanti” per raggiungerla e poi “tosa” per terminare il quadro.
Livello 4: in questo step viene introdotto il concetto del tempo che passa. L’obiettivo da raggiungere è quello di abbattere tutti e tre gli alberi prima del calare del sole. La difficoltà rispetto ai livelli precedenti è inserire i comandi giusti per orientarsi nello scenario. Se gurdate in alto nell’area di lavoro vedrete la scritta 7/15 blocchi; ciò vuol dire che sono stati inseriti già 7 blocchi dei 15 previsti. Per facilitarci infatti ci viene proposta la prima sequenza di comandi in modo da capire come orientarci nello scenario. Per raggiungere il primo albero (che è posto davanti il personaggio e che dista tre quadrati), inseriremo tre volte il “vai avanti”. Abbiamo poi il comando “distruggi”, utile per abbattere l’albero e procurarci il legno; il comando” gira a sinistra” per dare un nuovo orientamento al personaggio, e di nuovo il “vai avanti“. A questo punto grazie ai comandi dati per default possiamo procedere a contare i quadrati che ci separano dall’albero che ci troviamo di fronte (due) e inserire per lo stesso numero di volte il comando “vai avanti”. Di nuovo inseriremo il comando distruggi e il gira a sinistra e ripeteremo la stessa cosa per raggiungere l’ultimo albero (facendo attenzione a contare sempre il numero di quadrati che ci separano dall’obiettivo, nell’ultimo caso saranno tre). Il numero inserito di blocchi è 15 su 15.
Sottolineatura: per chi ha già svolto l’attività dell’Artista sono certa che ripetere l’inserimento dei blocchi singoli gli sembrerà una forzatura. Infatti se fosse stato possibile inserire già a questo livello il blocco “ripeti n.volte”, avremmo creato dei cicli.
Livello 5: eccoci al livello dove finalmente inseriremo un cliclo. Possiamo definire un ciclo come un insieme di comandi che si ripetono per un numero di volte ben definito ( vi ricordo che nel linguaggio di programmazione nulla deve essere lasciato al caso!). Ma vediamo insieme l’obiettivo da raggiungere. In questo livello impariamo a costruire una casa. Per farlo dobbiamo iniziare con le mura. Il suggerimento ci indica di costruire la prima parte della casa mettendo i comandi “metti assi di …” e “vai avanti” all’interno di un ciclo “ripeti … volte”.
Il percorso è già segnalato essendo di colore marrone. Contando i quadrati, essi risultano essere 4. Pertanto il ciclo di azioni che dovrà compiere il personaggio sarà di 4. I comandi da inserire all’interno del ciclo sono quelli suggeriti, quindi sarà sufficiente inserire il “metti assi di betulla” e “vai avanti”.
Livello 6: in questo step abbiamo la possibilità di intraprendere tre strade: facile – medio – difficile. Vediamole tutte inizando dal livello più semplice. Il livello facile ci dice di costruire il resto della casa con qualunque materiale preferiamo (saranno disponibili betulla, quercia e abete). Sempre nelle indicazioni iniziali ci viene suggerito di utilizzare più volte il blocco “ripeti … volte”.
Di default in questo livello troviamo un primo ciclo già completo, ovvero un “ripeti 3 volte” contenente “vai avanti” e “metti assi di betulla”. Fuori dal ciclo (proprio perchè non deve essere ripetuto 3 volte) abbiamo il “gira a destra“. Ora se clicchiamo su esegui senza inserire nessun altro comando all’infuori di quelli dati di default vediamo che il nostro personaggio costruirà una L. Per chiudere anche nell’altro verso la nostra costruzione dovremmo ripetere la stessa sequenza di comandi per 2 volte e inserire come terzo e ultimo blocco di comandi il ciclo completo omettendo il comando “gira a destra”. Nel mio quadro vedrete che ho scelto sia la betulla che la quercia. Voi potete scegliere qualsiasi tipo di materiale tra quelli proposti.
Nel livello medio abbiamo un diverso tracciato della casa. Niente paura perchè la logica è la stessa che abbiamo utilizzato per superare il livello facile. Per superare anche questo dobbiamo solamente inserire altri blocchi prima dell’ultimo ciclo. I blocchi da inserire ci permetteranno di effettuare la costruzione delle mura del lato a L della casa.Ovviamente come è stato per il livello precedente per capire il numero di volte in cui un ciclo deve essere ripetuto, vi consiglio sempre di contare il numero di quadrati a terra.
Il livello difficile presenta un angolo che non dovrà essere coperto dalle assi. Rispetto ai livelli precedenti quindi va solo capito come comandare al personaggio di continuare a camminare senza però in quel punto posizionare le assi. Vediamo insieme. I primi comandi possono essere inseriti all’interno di un ciclo poichè per due volte si dovranno ripetere (due sono i quadrati marroni posizionati a terra e due sarà il numero che il ciclo dovrà ripetere). Dopo aver inserito nel primo ciclo “ripeti 2 volte” “vai avanti” e “metti assi di betulla” ci troviamo di fronte a dover effettuare una curva dove andremo a posizionare dei blocchi di comando fuori dal ciclo. Fuori dal ciclo inseriremo un “gira a sinistra“, “vai avanti” , “metti assi di betulla” e “gira a destra“. Di seguito possiamo inserire un ciclo con un ripeti 2 volte identico al primo, far girare a destra il personaggio, di nuovo un ciclo con un ripeti 3 volte; giunti qui fate attenzione. Seppur il quadrato che dobbiamo colmare è sulla destra del personaggio e quindi ci verrà automatico inserire il comando “gira a destra”, in realtà dobbiamo inserire prima il comando “vai avanti”. Inserendo il “vai avanti” permetteremo al personaggio di oltrepassare l’erba e poi con il comando “gira a destra” ci troveremo nella direzione corretta per proseguire la costruzione. Per completare il quadro inseriamo l’ultimo ciclo “ripeti 3 volte”.
Livello 7: questo step riprende le logiche delle precedenti schermate soprattutto quella relativa al livello 6 difficile. Inoltre anche in questo livello abbiamo un numero massino di blocchi da inserire, ovvero 11 in totale. Il messaggio introduttivo ci indica che dovremmo seminare del grano su entrambi i lati dell’acqua. Come vedete il percorso da seminare è costituito da due rettangoli composti da 6 quadrati ciascuno. Visto che abbiamo delle azioni che dovranno ripetersi, il blocco che fa al caso nostro è quello relativo all’inserimento di un ciclo. Pertanto avremo “ripeti 6 volte” al cui interno inseriremo “semina grano” e “vai avanti“.
N.B. la prima azione da comandare all’interno del ciclo è il semina grano poichè il personaggio è già posizionato sul primo quadrato da seminare. Diversamente se fosse stato posizionato fuori avremmo dovuto inserire come prima azione il vai avanti.
Inseriamo (fuori dal ciclo) un “gira a destra” e poi “vai avanti” (il vai avanti dovrà essere inserito o due volte oppure potrete utilizzare un ciclo come ho fatto io). Inseriamo un “gira a destra” (fuori dal ciclo) e poi utilizziamo il ciclo per continuare a seminare nella striscia di terra di destra. Questa volta però rispetto al primo ciclo il cui primo passo era quello di comandare il semina grano, qui ci troviamo all’opposto, ovvero dovremmo prima andare avanti e poi seminare.
Livello 8: aiuto i Creepers! Scherzo, non preoccupatevi, vediamo come aggirare i nemici simbolo del gioco Minecraft! L’introduzione al livello ci mette in guardia da questi nemici, dovremmo riuscire ad entrare in casa senza avvicinarci a loro. Altra difficoltà in questo livello è il numero limitato di blocchi, se guardate nella barra in alto all’area di lavoro ci viene indicato che il numero massimo dei blocchi che possiamo inserire è 9. Il mio consiglio è di tentare questo livello proprio come una sperimentazione. Quì è ben chiaro come l’errore che si commette per arrivare all’ingresso della casa è unicamente un tentativo. Il processo di apprendimento è accompagnato da tentativi ed errori. L’errore è pertanto parte intrinseca della crescita della persona, tanto da divenire funzionale all’esistenza umana, in quanto rappresenta i vari stadi di quel lungo percorso attraverso il quale ci si avvicina sempre più alla meta. Maria Montessori lo chiama addirittura “Il Signor errore” dandogli importanza assoluta poichè attraverso l’autocorrezione il bambino accrescerà la propria autostima.
Per superare il livello con soli nove blocchi sarà sufficiente utilizzare 3 cicli e due blocchi per cambiare direzione. Il primo ciclo “ripeti 4 volte” dovrà contenere il “vai avanti” . Ora inseriamo un cambio di direzione con il comando “gira a sinistra“, ancora un ciclo identico al primo, ovvero “ripeti 4 volte” contenente il “vai avanti” , di nuovo un cambio di direzione con “gira a sinistra“ed infine l’ultimo ciclo “ripeti 2 volte” contenente il “vai avanti“. In questo modo saremo passati alle spalle dei Creepers e la porta di casa si aprirà per permetterci di entrare.
Nota nerd: un Creeper è facilmente riconoscibile per via della sua struttura. Esso è alto, ha una pelle verde pixellata ed è forse il nemico più pericoloso del gioco. E’ stato creato per errore da Markus Alexej “Notch” Persson, mentre in realtà voleva creare come antagonista un maiale. Inserendo per errore un codice è uscita fuori questa creatura che prende il nome di Ceeper.
Livello 9: in questo step ci troviamo nel sottosuolo. L’introduzione ci indica come sempre l’obiettivo da raggiungere, ovvero posizionare almeno due torce ed estrarre almeno due blocchi di carbone. Il tutto utilizzando solo 6 blocchi. Il primo blocco da inserire è il “gira a sinistra” poichè in questo modo abbiamo subito difronte i blocchi da cui potremmo estrarre il carbone. Nel ciclo “ripeti 5 volte” inseriremo i blocchi “vai avanti”, “distruggi” e “metti una torcia”.
Livello 10: l’obiettivo da raggiungere in questa schermata è posizionare delle lastre di pietra per creare un ponte e poi estrarre almeno due blocchi di ferro. Numero massimo di blocchi da inserire è 7. Trovandoci già di fronte al fiume di lava il primo blocco da inserire è “vai avanti”. Successivamente inseriamo il nuovo blocco “metti lastra di pietra davanti” e ancora “vai avanti”. Abbiamo attraversato la lava; ci rimane da estrarre almeno due blocchi di ferro. Per farlo utilizziamo il ciclo “ripeti 3 volte” al cui interno inseriremo i comandi “distruggi” e “vai avanti”.
Livello 11: in questo livello viene introdotto un altro dei concetti della programmazione che preferisco, ovvero la condizione. L’introduzione alla schermata ci dice che sotto ad alcuni blocchi troveremo la lava (Attenzione! Non ci dice quali). Una volta trovata la lava dovremmo coprirla per poter andare avanti. L’introduzione ci suggerische che il comando“se”sarà utile in questi casi (in informatica potremmo chiamarla la funzione “se”). Infine per superare il livello dovremmo estrarre tutte le risorse disponibili presenti nella schermata. Per prima cosa contiamo il numero di blocchi (quadrati) che ci ostacolano la strada. Contiamo il numero comprendendo come ultimo blocco del conteggio quello contenente il materiale rosato. Il numero complessivo è 7. Come per gli altri livelli ciò vuol dire che il numero di ripetizioni sarà 7. Utilizziamo quindi il ciclo “ripeti 7 volte” al cui interno inseriremo il comando “distruggi” e poi “se c’è la lava davanti”. All’interno di questo blocco inseriamo la conseguenza, ovvero se trovi la lava allora fai la seguente azione. In questo caso l’azione da eseguire è “metti lastra di pietra davanti”. Ciò vuol dire che se il nostro personaggio (all’interno di un ciclo di 5 ripetizioni) troverà la lava allora metterà una lastra di pietra davanti a lui. Questo comando è molto importante nel coding poichè permette appunto di scrivere condizioni. Se nell’atto di distruggere un blocco non troviamo la lava, il personaggio non metterà la lastra di pietra. Ultimo blocco da inserire nel ciclo è “vai avanti“.
Livello 12: salendo di livello aumentano anche le difficoltà, infatti ci viene indicato che il numero massimo di blocchi che possiamo inserire è 9 per raggiungere l’obiettivo ovvero estrarre 3 blocchi di pietra rossa. Anche qui vi consiglio di sperimentare varie strategie. Quella che mi ha permesso di superare il livello con solo 9 blocchi esula da una logica lineare. I miei primi tentativi si rifacevano alle modalità con cui avevo superato i livelli precedenti. Ovvero cercavo una strada che mi permettesse di estrarre il materiale. Seguendo questo metodo però superavo il limite di blocchi indicati. Ho dovuto quindi ricorrere alla mia esperienza di thinkering (sperimentare in modo diverso utilizzando la creatività come strumento per comprendere ciò che ci circonda) per cambiare punto di vista. Per superare il livello ho creato un loop (ciclo) senza una meta determinata.
Pertanto contare i blocchi questa volta non servirà per individuare il numero di ripetizioni del ciclo. Lo troverete unicamente per tentativi ed errori. Io ho inserito il ciclo “ripeti 8 volte” al cui interno ho aggiunto i comandi “vai avanti” e “distruggi”. All’interno del blocco successivo (che è sempre contenuto nel ciclo) ovvero “se c’è la lava davanti” ho inserito “metti lastra di pietra davanti” ma anche “vai avanti”, “distruggi” nonchè “gira a sinistra”.
Livello 13: siamo quasi giunti alla fine. In questo livello abbiamo solo il compito di posizionare i binari dal bordo della mappa fino alla porta di casa nostra. Il livello facile prevede che il numero massimo di blocchi da inserire sia 9, mentre se vogliamo provare la versione più difficile dobbiamo riuscire a farcela usando solo 6 blocchi. Iniziamo con quello più semplice.
Se vedete bene, il personaggio scelto (nel mio caso Steve) è posizionato lateralmente rispetto al percorso che dovrà compiere. Il primo comando da inserire è pertanto un “gira a destra” in modo da farlo trovare direttamente davanti al percorso. Come abbiamo fatto per i precedenti livelli (tranne il 12), procediamo contando i quadrati che ci separano dalla curva. Essi sono 6. Inseriamo il ciclo “ripeti 6 volte” al cui interno ho aggiunto i comandi “metti binari” e “vai avanti”. Trovandoci già sopra il percorso che dobbiamo ricoprire, il primo comando sarà quindi il “metti binari“, allo stesso modo in cui ci è già capitato al livello 7 (con i chicci di grano). Per fare la curva inseriremo il comando “gira a destra” (fuori dal ciclo perchè è un’azione che dovrà essere svolta solo una volta) e poi ancora un ciclo “ripeti 6 volte” al cui interno vi sono i comandi “metti binari” e “vai avanti”.
Nella versione più difficile dobbiamo fare la stessa cosa utilizzando ben 3 blocchi in meno. I blocchi che potrebbero essere eliminati sono quelli esterni al ciclo. Guardando l’immagine qui sopra vediamo che il blocco “gira a destra” si ripete due volte, pertanto inserendo un ciclo “ripeti 2 volte” per questo comando avremo lo stesso effetto. Ma ovviamente non ci risolve il problema dei blocchi, perchè due blocchi “gira a destra” o un blocco ciclo+un blocco “gira a destra” fanno sempre 2 blocchi in totale. Questo è vero, ma vediamo come può aiutarci questa scelta strategica. Sempre guardando l’immagine precedente notiamo che i due cicli da 6 sono identici. Eliminando uno dei blocchi del ciclo (e anche i blocchi in esso contenuti) ed inserendo il tutto all’interno del macro ciclo “ripeti 2 volte” raggiungeremo la destinazione con soli 6 blocchi totali.
Livello 14: siamo giunti alla fine. Questo livello vi permetterà di dare spazio alla vostra creatività poichè vi lascia liberi di creare quello che volete.
Una volta creato il vostro nuovo mondo potrete condividelo ed ottenere così l’attestato finale dell’Hour of Code.
Il mio consiglio è quello di sperimentare questa Ora del Codice attuando le strategie didattiche della flipped classroom.
Devi accedere per postare un commento.