Un punto di partenza…
Il sito Programma il Futuro propone una serie di attività di coding che possono essere sviluppate a partire dalla scuola primaria, fin dalla prima elementare. Il sito è un’iniziativa del MIUR e traduce attività sviluppate dal sito internazionale code.org.
- Modalità base (ora del codice)
Una piccola serie di lezioni, delle durata di circa un’ora, da svolgere in concomitanza con iniziative come l’Ora del codice. Sono legati a personaggi di cartoni e film familiari ai ragazzi, quali Oceania, Guerre Stellari, Frozen, Minecraft, etc. - Modalità avanzata
Le attività avanzate, sviluppate su quattro livelli, permettono di approfondire i concetti fondamentali del coding, quali sequenze, cicli, cicli annidati, istruzioni condizionali, variabili, funzioni - CodeMOOC
CodeMOOC è un corso online sviluppato da Alessandro Bogliolo dell’Università di Urbino che si occupa di fornire una guida alle attività proposte dal sito Programma il Futuro. La frequenza e il superamento delle attività online danno origine al conseguimento di un certificato, valido per l’aggiornamento degli insegnanti.
Consigliamo queste attività agli insegnanti che hanno timore di confrontarsi con l’argomento del coding, non sentendosi abbastanza preparati.
…un passo indietro
Prima ancora di utilizzare di iniziare ad utilizzare il computer, potrebbe essere utile fare un passo indietro, e proporre alcune di queste attività in maniera “unplugged”, ovvero “staccando la spina”. Questo può essere utile qualora la scuola non sia attrezzata
- “Computer Science Unplugged”, tradotto in italiano “L’informatica senza computer”
Il primo ad utilizzare il termine “unplugged” è stato il volume “Computer Science Unplugged”. Il testo, un pdf di 290 pagine, è una collezione di semplici attività il cui scopo è far capire i concetti chiave dell’informatica, come i numeri binari, la rappresentazione delle immagini, gli algoritmi e tanti altri argomenti. - “CodyRoby” (link alle carte)
Una delle attività proposte in CS Unplugged è quella relativa alla programmazione, realizzata come un insieme di comandi che deve essere portato a termine da un esecutore — potenzialmente, anche un bambino. L’attività è stata ripresa da Alessandro Bogliolo all’interno della Codeweek; il prof. Bogliolo ha proposto un gioco basato su carte che coinvolge due “robot”: Cody e Roby. Le carte possono essere stampate e ritagliate.
Un balzo in avanti!
Lo strumento per eccellenza che permette di costruire attività di pensiero computazionale è Scratch. Questo software, sviluppato al MIT, consente la realizzazione di animazioni, di quiz, di musica e arte interattiva, presentazioni e videogiochi, fornendo un ambiente di programmazione visuale sviluppato appositamente per la fascia di età che va dalla 2a elementare al primo biennio delle superiori. Di seguito, alcuni puntatori:
- Collegandosi al sito di Scratch, è possibile utilizzare la versione online, che vive all’interno del browser e non richiede alcuna installazione.
- Altrimenti, se la scuola non è dotata di una buona connessione Internet, è possibile installare Scratch sui PC, scaricando il software in versione Windows, Mac o Linux.
- Un buon punto di partenza per comprendere il funzionamento di questo software è il testo “Esercitazioni Scratch” edito dall’Università di Salerno.
- Esistono un gran numero di risorse, progetti, idee che si possono trovare online. Una raccolta di queste risorse si trova nella pagina “Risorse Scratch” del sito del Coderdojo Verona.
Da Scratch alle App
E’ possibile estendere gli orizzonti dei ragazzi di età più grande con la programmazione di app, senza rinunciare all’approccio visuale e senza richiedere l’enorme complessità che è richiesta dalla programmazione via app tramite Java.
- MitAppInventor 2 permette di sviluppare App molto sofisticate; è possibile utilizzare tutti i sensori del telefono, è possibile utilizzare servizi esterni quali Google Maps, è possibile collegarsi a database esterni. Esistono diversi tutorial che possono essere utilizzati per cominciare, alcuni dei quali sono riassunti qui.
Dai blocchi al codice
Una volta appreso i concetti computazionali tramite la programmazione visuale, è possibile fare un ulteriore balzo in avanti e scrivere vero e proprio codice. Il vantaggio è che si può diventare molto più produttivi, al costo di dover fare attenzione alla sintassi.
Queste sono alcune strumenti che possono essere utilizzati per imparare linguaggi quali Javascript e Python:
- S2J (Scratch to Javascript) è un insieme di lezioni che permettono di imparare Javascript partendo dai concetti che si sono imparati utilizzando Scratch.
- How to think as a computer scientist è un libro interattivo che spiega la programmazione utilizzando Python; la cosa interessante è che il libro è pieno di esercizi che vengono svolti direttamente dentro la pagina web.
- Hour of Pyhton è basato sulla tecnologia Trinket, e contiene una serie di lezioni su Python.
- CodeCombat spiega la programmazione attraverso il gioco. All’inizio, bisogna risolvere sfide simili a quelle di Code.org; ma a differenza di Code.org, si può scegliere fra Phyton, Javascript e Lua. Con il progredire del gioco, le sfide diventano più difficili e somigliano a vere e proprie battaglie; ad un certo punto, bisogna combattere contro altri giocatori online. E’ possibile scegliere la lingua italiana, ma il numero di livelli “free” è limitato, poi bisogna iscriversi.
- CodingGame è basato su concetti simili a CodeCombat, ma il numero di linguaggi supportati si allarga enormemente: 26, fra cui Python, C#, C++, C, Java, Python, Javascript, e tanti altri.