Minecraft: Education Edition è una versione speciale del gioco Minecraft.

Nato dal gioco base Minecraft, Minecraft: Education Edition è stato studiato e realizzato per insegnanti e studenti e per lo studio di diverse discipline scolastiche, tra cui il coding.

Infatti, oltre ad alcune caratteristiche che lo differenziano dal gioco, Minecraft: Education Edition può essere programmato.

Sì, proprio così!

Si possono realizzare dei programmi per costruire, interagire con i personaggi di gioco, creare minigiochi e così via.

Lo scopo di tutto ciò è imparare a programmare in modo divertente, anzi come dico io: imparare a programmare un sorriso alla volta.

Ammettiamolo, imparare a programmare con Minecraft è divertente! Inoltre, i ragazzi si sentono coinvolti, conoscono già l’ambiente in cui lavoreranno e, non ultimo, il loro scopo diventa imparare a realizzare programmi che diano vita alle loro invenzioni e progetti.

Ed è proprio questo che facciamo a Minecraft Coding Camp: diamo vita a progetti attraverso la programmazione.

Se vuoi saperne di più sui corsi di programmazione in Minecraft, visita questa pagina: Minecraft Coding Camp 

Ma com’è possibile programmare con Minecraft: Education Edition?

Attraverso i suoi linguaggi di programmazione.

Guarda il tutorial

Cos’è un linguaggio di programmazione?

Persone che provengono da Stati diversi spesso parlano lingue diverse e per comunicare devono conoscere una lingua comune. Lo stesso accade per la comunicazione tra persone e computer: per programmare un computer dobbiamo conoscere la sua lingua.

La lingua che si utilizza per programmare il computer è detta genericamente linguaggio di programmazione.

Pertanto, possiamo affermare che il linguaggio di programmazione è un linguaggio che il computer comprende e che noi possiamo utilizzare per impartire comandi e istruzioni.

Feellis e Loop comunicano

Esistono numerosi linguaggi di programmazione ed molti di loro è specializzato in diversi ambiti.

Ok! Ma cosa c’entrano i linguaggi di programmazione con Minecraft?

Minecraft: Education Edition è costituito dal gioco base di Minecraft arricchito dalla “Education Edition”, ovvero tutti quei componenti necessari all’insegnamento delle varie discipline scolastiche, tra cui il coding.

Il componente che rende possibile il coding si chiama Code Builder, si tratta di un ambiente di programmazione integrato in Minecraft: Education Edition che mette a disposizione tre diversi linguaggi di programmazione: MakeCode a Blocchi, JavaScript e Minecraft Python.

Code Builder

Code Builder

Questi tre linguaggi non sono nati per programmare solo Minecraft, ma sono stati adattati a tale scopo.

MakeCode

Nato per programmare sia Minecraft: Education Edition che altri strumenti, come puoi vedere qui: Microsoft MakeCode, è il più “semplice” dei tre linguaggi elencati perché si tratta di un linguaggio di programmazione a blocchi.

Attenzione! Quando dico “semplice”, non significa semplificato o meno potente, o un giochino per bambini.

MakeCode ha tutte le funzionalità degli altri linguaggi. La semplicità sta nel fatto che MakeCode è un linguaggio a blocchi.

La differenza tra i linguaggi a blocchi e linguaggi di programmazione classici, perciò non a blocchi, sta nel fatto che i linguaggi di programmazione classici sono costituiti da istruzioni e comandi scritti, mentre i linguaggi a blocchi no; perciò, il programmatore deve imparare numerose istruzioni e conoscere la sintassi del linguaggio (quella che noi definiremmo grammatica in una lingua) per poter realizzare i programmi.

Mentre, come già anticipato, MakeCode è un linguaggio a blocchi, dove ogni comando o istruzione è rappresentato graficamente e catalogato per mezzo dei colori. Tutto ciò che serve si trova nella Toolbox, uno strumento sempre a disposizione che elenca istruzioni e comandi, i quali, suddivisi per tipo, vengono scelti e poi semplicemente trascinati con il mouse all’interno del programma.

Feellis con linguaggio a blocchi

Queste caratteristiche rendono MakeCode un linguaggio molto intuitivo e per tale motivo il più adatto all’insegnamento del coding ai principianti ma soprattutto ai bambini più piccoli.

Utilizzando un linguaggio a blocchi, il giovane programmatore può dedicarsi interamente alla realizzazione di un programma, senza dover memorizzare numerosi comandi o la sintassi del linguaggio. Può dedicarsi al programma da subito, concentrandosi solo sul ragionamento e sulle basi della programmazione, vedendo i risultati immediatamente.
Inoltre, riducendo l’uso della tastiera anche il numero di errori è limitato.

Per tale motivo anche a Minecraft Coding Camp utilizziamo MakeCode come primo linguaggio di programmazione, anche con i ragazzi più grandi.

Prima impariamo i concetti di programmazione, poi li mettiamo in pratica anche con linguaggi più complessi.

JavaScript

È un linguaggio di programmazione che potremmo definire classico, perciò è obbligatorio sapere come realizzare un programma scrivendo con la tastiera. Ciò significa imparare i comandi e conoscere la sintassi del linguaggio.

Feellis con JavaScript

In realtà, Code Builder ci viene in aiuto e fornisce un ambiente di programmazione semplificato nel quale è ancora possibile trovare le istruzioni e comandi, la differenza sta nel fatto che scegliendo e trascinando un comando dalla Toolbox al programma, il comando viene tradotto in JavaScript.
Avendo ancora la Toolbox a disposizione, il programmatore può decidere se scrivere il programma senza aiuti, utilizzare esclusivamente gli strumenti contenuti nella Toolbox oppure utilizzare la Toolbox solo come sussidio in caso di necessità.

Per utilizzare questo linguaggio bisogna già conoscere molte regole di sintassi e scrivere con la tastiera porta sicuramente ad un numero superiore di errori. Per tale motivo JavaScript è considerato più complesso di MakeCode.

Pertanto, ritengo JavaScript adatto a ragazzi più grandi e che hanno già esperienza in materia di coding.

Minecraft Python

Minecraft Python è una versione “speciale” del famoso linguaggio di programmazione Python ed è stata realizzata appositamente e adattata per Minecraft: Education Edition.

Si tratta di un linguaggio di programmazione di tipo classico e non porta più con sé tutti i vantaggi della programmazione a blocchi, per questo motivo, la realizzazione vera e propria dei programmi avviene dopo un attento studio del linguaggio.

Anche nel caso di Minecraft Python, così come avviene con JavaScript, è necessario conoscere sia le istruzioni che la sintassi del linguaggio, ma grazie a Code Builder i ragazzi hanno ancora a disposizione la Toolbox e perciò anche tutte le istruzioni catalogate e suddivise per colore.

Feellis con Minecraft Python

Vista la necessità di conoscere bene il linguaggio di programmazione e l’introduzione della scrittura del programma con la tastiera, questo linguaggio è più adatto a ragazzi più esperti e che magari abbiano già programmato con MakeCode.

Nei corsi di Minecraft Coding Camp introduciamo l’uso di Minecraft Python solo quando gli studenti hanno sufficiente familiarità con MakeCode e sono in grado di realizzare i propri programmi in autonomia.

Esempio pratico

Per comprendere meglio la differenza tra i tre linguaggi e quanto sia intuitivo il linguaggio a blocchi, prendiamo come esempio un semplice programma che ha lo scopo di generare 4 pecore davanti al giocatore.

Genera 4 pecore

Lo stesso programma è realizzato a blocchi, in JavaScript e in Minecraft Python.

MakeCode a Blocchi

MakeCode a Blocchi

JavaScript

JavaScript

Minecraft Python

Minecraft Python

Guarda il tutorial

Conclusione

Per imparare a programmare con Minecraft: Education Edition non abbiamo un solo linguaggio, bensì tre!

L’integrazione e l’adattamento dei linguaggi a Minecraft è stato ben realizzato. L’uso di tutti i linguaggi inclusi è studiato appositamente per avviare un percorso di studio a livelli.

Con questo strumento i ragazzi possono iniziare un percorso che li condurrà dalla programmazione a blocchi, dove potranno concentrarsi solo sulla realizzazione della struttura del programma e iniziare a programmare da subito, alla programmazione tradizionale, utilizzando ambienti di lavoro via via più complessi ma di sostegno all’apprendimento.