La scorsa settimana abbiamo visto come si può utilizzare l’iPad per insegnare o imparare qualcosa di nuovo (nello specifico l’argomento era l’astronomia).
C’è un altro settore di cui si ultimamente discute molto a livello educativo, ed è la programmazione. Abbiamo visto, in occasione della recente WWDC che la stessa Apple ha deciso di puntare molto in questo settore, realizzando Swift Playgroud (che vedremo presto all’opera) ma c’è chi ci aveva pensato, seppur con canoni completamente diversi, alcuni anni fa.
Parliamo oggi di Cargo-Bot , applicazione per iPad datata 2012 (infatti gli basta iOS 5 per funzionare) che introduce i concetti della programmazione mascherandoli in un puzzle game. L’applicazione è gratuita ed occupa veramente poco spazio, quindi potete scaricarla senza alcuna preoccupazione: se anche non dovesse più funzionare con l’arrivo della prossima versione di iOS, non avrete perso nulla.
Prima di passare a vedere il programma vero e proprio, vale la pena sottolineare che Cargo-Bot è stato realizzato utilizzando Codea un vero e proprio tool di programmazione completo che gira su iPad.
Ma veniamo al gioco. Lo scopo è molto semplice: ci troviamo di fronte una configurazione di box di vario colore appoggiati su un certo numero di piattaforme, e dobbiamo raggiungere un altra configurazione (indicata come “goal”) utilizzando una gru che può scendere e risalire (per acchiappare o depositare i box) e muoversi a destra e sinistra. Ovviamente, trattandosi di un puzzle game dedicato alla programmazione, la gru non si muove con comandi diretti, ma va programmata: se ci sono bug, la gru si schianterà (o comunque non riuscirete a completare la missione).
I primi livelli sono molto semplici, e le istruzioni a disposizione sono solo i comandi elementari, ovvero destra, sinistra, e scendi (la risalita è sempre automatica a seguito della discesa). Proseguendo si incontrano invece istruzioni più complesse: come la possibilità di eseguire salti tra diversi programmi, e la possibilità di aggiungere condizioni alle varie istruzioni (per esempio “muoviti a destra solo se stai trasportando un box giallo” oppure “salta al programma 4 solo se non stai trasportando alcun blocco”). Se vi trovate in difficoltà, potete anche chiedere un suggerimento, che comunque non sarà mai troppo esplicito da rovinarvi il gusto della sfida.
Più avanti nel gioco la complessità aumenta, andando per certi versi anche un po’ oltre la logica vera e propria della programmazione, e costringendo a ricercare stratagemmi per aggirare i limiti imposti dal gioco, ovvero il ridotto numero di programmi disponibili e il ridotto numero di istruzioni programmabili: ci sono solo 4 programmi tra cui saltare, con un numero massimo di 8 istruzioni (anzi, il quarto programma ammette al massimo 5 istruzioni).
Questi limiti aumentano il livello di sfida (per ottenere il massimo punteggio occorre risolvere lo schema con il minor numero di istruzioni possibili) ma, forse, vanno un po’ a penalizzare l’aspetto educativo dell’app, specie se la si volesse utilizzare per insegnare i concetti basilari della programmazione ai più piccoli. Sotto quest’ultimo aspetto, un’altra carenza è l’impossibilità di poter eseguire cicli For/Next, ma si tratta di una scelta dettata dall’impostazione voluta dai programmatori.
Nel complesso Cargo-Bot rimane un’app godibile, utile per mettervi alla prova, e che vale la pena di essere provata anche per fare un confronto con Swift Playground
Gli altri interventi di sono disponibili a questo indirizzo