# data[].attributes.attachment_link.readable_text
( Dal 26 al 29 novembre a Milano c'è Codemotion: un'ottima occasione per far avvicinare i bambini al mondo del coding. Il servizio uscito oggi sul Corriere:)

Corsi di nuoto e di sci, corsi di lingua, corsi di pianoforte e violino, corsi di teatro. Di danza, di yoga, di kung-fu, di equitazione. Anche se siete uno dei quei genitori che non vedono l'ora di riempire la settimana dei propri figli, "perché se non si impara da piccoli poi non si impara più", probabilmente non avete mai preso in considerazione l'idea di iscrivere i vostri bambini a un corso di coding. Ovvero il codice informatico, la programmazione. No, non è (solo) roba da ingegneri. Per molti esperti è una materia sempre più necessaria per chi è nato in questo millennio, al pari dell'inglese.

"Imparare a programmare non serve solo a creare futuri programmatori, di cui pure c'è bisogno" spiega Alessandro Bogliolo, docente all'università di Urbino e "ambasciatore" per l'Italia della "CodeWeek", andata in scena lo scorso ottobre. "Il salto di qualità - continua Bogliolo - si fa quando si inizia a pensare che il coding debba diventare materia di studio". E lo sta diventando un po' in tutto il mondo. Barack Obama pochi mesi aveva esortato gli studenti americani: "Non comprate un nuovo videogioco, fatene uno. Non scaricate l'ultima app, disegnatela". In Italia, tra le linee guida del progetto del governo sulla "Buona Scuola" è citata anche l'"educazione al pensiero computazionale e al coding nella scuola italiana". Segnali che questi temi hanno raggiunto le istituzioni, sotto la spinta di un movimento dal basso. Sono moltissimi ormai i corsi, i work-shop e gli appuntamenti nel nostro Paese (v. sotto).

Il concetto chiave è il "pensiero computazionale", che ricorre anche nel documento del governo. "Significa pensare in maniera algoritmica ovvero trovare una soluzione e svilupparla - dice Bogliolo -. Il coding dà ai bambini una forma mentis che permetterà loro di affrontare problemi complessi quando saranno più grandi". Insomma imparare a programmare apre la mente. Per questo si può cominciare già in tenera età. Anche per uscire da un equivoco: quello che i nostri bambini, i cosiddetti "nativi digitali", siano bravissimi con le nuove tecnologie. "È un luogo comune" dice Massimo Avvisati, responsabile didattico dell' area Kids di Codemotion. Poi spiega: "Per gli adulti il tablet o lo smartphone sono una finestra di libertà. Molli il piccolo davanti a quello strumento per una mezzora, ti godi un po' di pace, poi lo vedi disinvolto con la tecnologia e pensi che tutto finisca lì. Ma è una fruizione passiva". Quando i bambini si avvicinano al coding, invece, diventano soggetti attivi della tecnologia. I risultati sono immediati. In poco più di un'ora si può creare un piccolo videogioco, funzionante: "Li rendiamo produttori di tecnologia. E i ragazzi via via maturano anche una presa di coscienza. Quando lavorano per il loro videogame vogliono che sia difficile. "Altrimenti chi lo usa si annoia", dicono. Iniziano a vedere le cose da una prospettiva diversa" aggiunge Avvisati.

Per fare tutto ciò servono strumenti adatti. Il più diffuso è Scratch: un "tool" di programmazione visuale (il codice del programma non deve essere digitato) ideato al Mit di Boston. Ne esiste persino una versione "junior" per chi ancora non sa leggere (dai 5 anni).
Crescendo le cose si fanno più complesse e il software si può interfacciare con il mondo fisico di altre "discipline" di frontiera: stampa 3D, hardware programmabile (tipo Arduino e Rasberry Pi), Lego Mindstorms e altro.
Ai genitori non è richiesta nessuna preparazione particolare. Se non quella di chiedere ai figli che cosa li incuriosisce di più, mostrando siti o brochure. L'attenzione al coding è in crescita anche da noi, alimentata da progetti come la " CodeWeek" che ha coinvolto 30 mila studenti (grazie anche all'interessamento del Ministero per l'Istruzione - Lo speciale su Corriere Scuola). Spiegano i responsabili del Campus La Camilla, un tecno-agriturismo a Concorezzo (Monza): "Quando siamo partiti con corsi di Scratch dai 7 agli 11 anni è stato un azzardo, ma ora abbiamo sempre una decina di iscritti. Con 10 ore si ha già una buona base".

AGGIORNAMENTO: Rispondo a soliti lettori nostalgici e inutilmente passatisti che dicono: "Cosa c'è di nuovo? Anch'io 30 anni fa facevo i corsi di Pascal, di Fortan, di Basic, etc!". Sì, li ho fatti anch'io quei corsi. E ringrazio i miei genitori che me li hanno fatti fare, anche se nella vita il mio lavoro ha poco a che fare. Ma:

1. Non si facevano a 5, 6 e nemmeno a 8 anni

2. Oggi l'approccio al coding è completamente diverso: si punta alla scuola primaria e poi alle medie (secondarie inferiori) perché l'obiettivo è fornire, anche con pochissime ore di lezione, un approccio logico alla programmazione

3. Non si insegna un linguaggio specifico che magari, quando i bambini saranno adulti, sarà già stato accantonato da anni

4. La filosofia alla base del movimento dei Coderdojo, che molto ha già fatto per il coding, è quello dei metodi attivi, cioè il "learning by doing". Imparare facendo. I bambini sono immersi in un ambiente logico e matematico, ma la creatività e la fantasia hanno un ruolo centrale negli incontri sul coding di oggi. Io di quei corsi di Pascal di 30 anni ricordo noiosissime e interminabili lezioni "frontali" teoriche (ma forse non ho avuto buoni insegnanti...)

5. Il movimento del coding promuove altri "valori" quali quelli del software libero, della condivisione e del "remix", ovvero del riuso del codice realizzato da qualcun altro. In un mondo di steccati e "walled garden" erette da questa o quella big dell'elettronica di consumo è bene che più i giovani conoscano alternative.

6. Non è necessario e forse neanche utile puntare a far diventare il coding materia di studio curriculare in Italia. Mancano gli strumenti e la formazione degli insegnanti, sopratutto nella scuola primaria. Finora le iniziative hanno portato a portare nelle scuole, le esperienze (spesso volontaristiche) fatte sul territorio da gruppi e associazioni. E potrebbe essere la via giusta, almeno per un po' di tempo.

7. Un punto importante: l'approccio ludico alla programmazione permette di rinforzare e di far comprendere meglio anche le tradizionali materie scolastiche. Come mi spiegava Massimo Avvisati di Codemotion: "Se in geometria hanno studiato l'angolo giro e nel videogioco che costruiscono devono ruotare un'astronave, ecco che riescono a dare un senso al concetto di 360 gradi. A 7 anni con Scratch riescono già a capire il sistema di coordinate cartesiane. Ma può valere anche per le discipline letterarie "

8. Avviso per mamme e papà: il coding non è una cosa "da maschietti" ma un ottimo strumento per avvicinare le discipline matematico-scientifiche anche le bambine. E aiutare al colmare in prospettive il "gender gap" che il settore sconta, anche ma non solo in Italia

9. Ai cruscanti che mi rimproverano di usare "coding" e non "programmazione".... Per una volta il termine inglese ha senso per dare maggiore chiarezza: in italiano se dici "programmazione" il 99% delle persone pensa all'agenda della settimana o alla pianificazione dei ministeri. Per diffondere il concetto è più utile un termine non ambiguo. E poi l'inglese e la programmazione hanno parecchio a che fare, volenti o nolenti

-

Dove
Codemotion è una conferenza internazionale sulla programmazione e punto d'incontro tra appassionati su quel che ruota intorno alla tecnologia. L'edizione di Milano, con conferenze, corsi e workshop, è al Politecnico in Bovisa dal 26 al 29 novembre. Le attività Kids per bambini sono sabato, tra le 10 e le 18 (prenotare). Altri corsi di coding per bambini? Presso i Coderdojo italiani, vere palestre per imparare a programmare che hanno molte attività riservate ai più giovani. Informazioni su coderdojoitalia.org.
Il progetto L'Ora del Codice si svilupperà dall'8 al 14 dicembre in oltre 180 Paesi, tra cui l'Italia.
Per i più grandi (ma non solo) oltre al coding, si può passare anche ad argomenti quali stampa 3D, interazione con l'hardware (Arduino, Rasberyy Pi, Lego Mindstorms, etc). Il Museo nazionale della Scienza e Tecnologia di Milano ha un laboratorio di Tinkering come varie attività.

Scratch è il "tool" più usato per avvicinare i bambini alla programmazione.
Dai 5 anni si può usare ScratchJr: anche per iPad
Sempre per iPad c'è anche HopScotch, gratuita.
Stencyl è un'alternativa a Scratch.
Per i più grandi c'è Processing .
Giochi per pc e console consentono di creare "mondi" e livelli, e poi condividerli. Il più celebre è Minecraft, ma ci sono anche titoli per console come i recenti Disney Infinity 2.0 e Little Big Planet 3

# data[].attributes.attachment_link.title
Che cos'è il coding e perché i vostri figli dovrebbero imparare a programmare

# data[].attributes.attachment_link.description
(Dal 26 al 29 novembre a Milano c'è Codemotion: un'ottima occasione per far avvicinare i bambini al mondo del coding. Il servizio uscito oggi sul Corriere:) Corsi di nuoto e di sci, corsi di lingua, corsi di pianoforte e violino, corsi di teatro. Di danza, di yoga, di kung-fu, di equitazione.

# data[].attributes.headline
2. Formazione MOOC Coding in your classroom, now

# data[].attributes.subject
2. Formazione MOOC Coding in your classroom, now

# data[].attributes.attachment_link.readable_text
Course Overview

Questo corso è ambizioso e semplicissimo. Ha l'obiettivo di aiutarti ad introdurre il pensiero computazionale in classe attraverso il coding, usando solo attività intuitive e divertenti da proporre direttamente agli alunni.

Quando affrontiamo un problema o abbiamo un'idea, spesso intuiamo la soluzione ma non siamo in grado di formularla in modo operativo per metterla in pratica. Il pensiero computazionale è proprio questo, la capacità di immaginare e descrivere un procedimento costruttivo che porti alla soluzione. Come imparare a parlare ci aiuta a formulare pensieri complessi, così il pensiero computazionale ci offre strumenti ulteriori a supporto della fantasia e della creatività.

Per questo il pensiero computazionale è per tutti. E' una capacità trasversale che va sviluppata il prima possibile. Non è solo per informatici e programmatori, ma programmare è il modo migliore per acquisirlo. Per questo in Europa e nel mondo si svolgono ogni anno campagne di alfabetizzazione per la diffusione del coding. E' per questa stessa ragione che noi parleremo di coding e giocheremo con la programmazione senza ripeterci ogni volta che lo facciamo per sviluppare il pensiero computazionale. Quello accadrà da sé senza bisogno di dirlo.

Veniamo al metodo. Questo corso non è concepito per introdurre metodi e concetti che in qualche futuro potranno esservi utili in classe, ma per aiutarvi ad organizzare attività di coding in classe direttamente durante il MOOC. La maggior parte delle lezioni di questo MOOC sono appuntamenti in diretta streaming che potrete seguire in classe con gli alunni, mettendovi in gioco insieme a loro. Non occorre che abbiate dimestichezza con l'informatica, le attività proposte sono intuitive e divertenti e nei video farò del mio meglio per darvi spunti di riflessione ulteriori. Se non riuscirete ad organizzarvi per seguire le lezioni in diretta potrete sempre riusarle successivamente.

Così creeremo su questa piattaforma una comunità di apprendimento fatta di insegnanti, ciascuno con la propria classe. Starà a me certificare i vostri progressi, mentre voi certificherete quelli dei vostri alunni. Al termine del MOOC tanto voi quanto i vostri alunni avrete acquisito competenze certificate per le quali alcuni atenei italiani, tra i quali l' Università di Urbino, riconoscono un credito formativo universitario.

Per le attività online useremo prevalentemente le risorse di Code.org e Scratch. Per le attività unplugged (senza computer e senza rete) faremo tutto da soli.

Durante il corso avrete modo di condividere con i colleghi e con me l'impostazione delle attività nelle vostre classi e creeremo dei gruppi di valutazione tra pari, all'interno dei quali ciascuno di voi giudicherà l'impostazione proposta dagli altri.

Ora non ci resta che iniziare a fare coding in classe. Buon divertimento.
#CodeMOOC
Learning Objectives

Introdurre in modo intuitivo e ludico i concetti base della programmazione per sviluppare il pensiero computazionale. In particolare, il corso introdurrà i seguenti concetti:

oggetti programmabili

algoritmo

programmazione visuale a blocchi

esecuzione di sequenze di istruzioni elementari

esecuzione ripetuta di istruzioni

esecuzione condizionata di istruzioni

definizione e uso di procedure

definizione e uso di variabili e parametri

verifica e correzione del codice

riuso del codice

programma

Outcomes

Al termine del corso gli insegnanti e i loro alunni avranno acquisito in modo pratico e diretto gli elementi base del pensiero computazionale e saranno in grado di applicarlo agli ambiti disciplinari di loro interesse.

La frequenza del corso e il superamento delle prove in itinere saranno certificati.

Il corso servirà inoltre a mostrare quanto sia facile portare il pensiero computazionale in classe. Questa consapevolezza, acquisita da insegnanti e alunni, merita di essere citata tra i risultati.

Course Structure

Lesson 1 - Presentazione del corso e del metodo

Lesson 2 - Il linguaggio delle cose

Lesson 3 - L'ora di codice e il labirinto

Lesson 4 - Il corso introduttivo di Code.org

Lesson 5 - Creare e condividere con Scratch

Lesson 6 - Il pensiero computazionale in pratica

Teacher

Alessandro Bogliolo

Alessandro Bogliolo is the coordinator of the School of Information Science and Technology at the University of Urbino, Italy, where he teaches Computer architecture and Digital platforms for land management.
His research interests include wireless sensor networks, crowd sensing, collective intelligence, and ultra-low power computing.
Since 2013 he has been actively promoting the diffusion of computational thinking skills, serving as Europe Code Week Ambassador, founding Code's Cool, and developing DIY unplugged games (Cody Roby). In 2015 he coordinated Europe Code Week.
Alessandro Bogliolo is also serving as e-skills for jobs ambassador.

# data[].attributes.attachment_link.description
Questo corso è ambizioso e semplicissimo. Ha l'obiettivo di aiutarti ad introdurre il pensiero computazionale in classe attraverso il coding, usando solo attività intuitive e divertenti da proporre direttamente agli alunni. Quando affrontiamo un problema o abbiamo un'idea, spesso intuiamo la soluzione ma non siamo in grado di formularla in modo operativo per metterla in pratica.

# data[].attributes.body
1° quadr.

# data[].attributes.body
2° quadr.

# data[].attributes.headline
4.Presentazione del progetto alle famiglie

# data[].attributes.subject
4.Presentazione del progetto alle famiglie

# data[].attributes.body
classe terza
Creazione di un Roby per ciascun alunno.
allestimento dell'angolo Code week in atrio.
Gioco "Io Cody tu Roby"
Gioco a squadre "La turista a Pozzoleone e a Roma"

# data[].attributes.body
Classe quarta

# data[].attributes.body
Pixiamo insieme.

# data[].attributes.body
Giochi "La corsa"  con le carte di Cody Roby.
Giochiamo su scacchiere a pavimento a squadre.
Giochiamo su piccole scacchiere a coppie.
Scriviamo i comandi per raggiungere la meta (con le frecce).
Giochi di Cody Roby alla lim.
Il linguaggio delle cose (video di Bogliolo), programmiamo oggetti smart, padlet con i lavori degli alunni.
lezioni  in Emma.
Dress code.

# data[].attributes.attachment_link.readable_text
[ Formato gigante][ English version]

Cody è un coder, Roby è un robot. Cody concatena istruzioni che Roby esegue.

CodyRoby è un metodo fai-da-te di programmazione unplugged (senza computer). Le istruzioni sono carte da gioco che contengono semplici simboli associati a tre azioni elementari: vai avanti, girati a sinistra, girati a destra. Ogni giocatore veste i panni di Cody e usa le carte per dare istruzioni a Roby, rappresentato da una pedina da muovere sulla scacchiera.

CodyRoby è stato ideato nel novembre del 2014, per offrire a tutti la possibilità di partecipare alla European Robotics Week anche all'ultimo momento e senza alcun costo. Lo starter kit di CodyRoby può essere scaricato, stampato e ritagliato per comporre il mazzo di carte, la scacchiera, le pedine e la scatola in cui tutto può essere riposto.

Dal 2014 ad oggi lo starter kit è stato distribuito in molte versioni, dedicate, tra l'altro, a Europe Code Week, a Africa Code Week e alla Eruopean Robotics Week. Lo starter kit permette di giocare con il coding in tanti modi diversi. Alcuni sono documentati da semplici video-tutorial autoesplicativi, ma dopo aver giocato ai giochi base proposti vi suggerisco di inventarne di nuovi.

In Agosto 2016 lo Starter Kit si è arricchito delle carte speciali che alle istruzioni elementari aggiungono le ripetizioni e le condizioni. Il nuovo starter kit è stato creato per CodeMOOC ed è distribuito ufficialmente e gratuitamente in questa pagina. Il kit è anche allegato al libro di CodeMOOC, con diversa impaginazione. Il nuovo kit permette di svolgere in modalità unplugged tutte le attività tipiche dell'ora del codice, come spiegato in questo video e in queste slide.

Accanto al link che permette di scaricare il file pdf di ogni pagina del kit sono riportate le opzioni di stampa consigliate. La stampa del retro delle carte da gioco è opzionale e richiede il controllo dell'alineamento per una resa ottimale.

Scacchiera (pdf). [Carta patinata bianca, A4, 170g, solo fronte]

Scatola (pdf). [Carta patinata bianca, A4, 250g, solo fronte]

Carte Vai Avanti (pdf-fronte, pdf-retro). [Carta patinata bianca, A4, 250g, fronte-retro lato lungo, 2 copie]

Carte Girati a Sinistra (pdf-fronte, pdf-retro). [Carta patinata bianca, A4, 250g, fronte-retro lato lungo]

Carte Girati a Destra (pdf-fronte, pdf-retro). [Carta patinata bianca, A4, 250g, fronte-retro lato lungo]

Carte Speciali (pdf-fronte, pdf-retro). [Carta patinata bianca, A4, 250g, fronte-retro lato lungo]

Video tutorials

Preparazione del kit base

# data[].attributes.attachment_link.description
Formato gigante][English version] Cody è un coder, Roby è un robot. Cody concatena istruzioni che Roby esegue. CodyRoby è un metodo fai-da-te di programmazione unplugged (senza computer). Le istruzioni sono carte da gioco che contengono semplici simboli associati a tre azioni elementari: vai avanti, girati a sinistra, girati a destra.

# data[].attributes.body
Il linguaggio delle cose

# data[].attributes.headline
Il linguaggio delle cose: ora programmiamo noi

# data[].attributes.subject
Il linguaggio delle cose: ora programmiamo noi

# data[].attributes.attachment_link.title
Il linguaggio delle cose: programmiamo noi

# data[].attributes.body
Scopri il codice e realizza il disegno...cosa apparirà? (a coppie)

# data[].attributes.body
Creo l'immagine e la legenda, un compagno scrive il codice.

# data[].attributes.attachment_link.readable_text
DressCode è il nuovo gioco di CodeMOOC, concepito per abbassare ancora le barriere di accesso al coding unplugged. E' ispirato al classico gioco di vestire una bambola con sagome di carta, già collegato al coding dai bellissimi disegni di Linda Liukas. Ma in questo caso il focus non è tanto sulla scelta dei vestiti, quanto sulla sequenza da utilizzare per indossarli, e come al solito abbiamo carte da gioco per esprimerla.

Babbo Natale indossa tanti indumenti. Per vestirsi deve indossarli in ordine per non fare pasticci e per svestirsi deve toglierli in ordine inverso. Non è facile e spesso si confonde. Per aiutarlo ora abbiamo le carte DressCode.

Ogni carta rappresenta un indumento da indossare (carta verde) o da togliere (carta grigia). Le carte vanno disposte in sequenza (da sinistra a destra o dall'alto al basso), per indicare la sequenza di indumenti da indossare o da togliere.

Le carte chiamate SFIDA non rappresentano istruzioni, ma condizioni iniziali e finali. Le sfide rosse rappresentano fasi della vestizione corretta di Babbo Natale. Le sfide color petrolio rappresentano combinazioni improbabili da correggere. Si gioca scegliendo due carte sfida che rappresenteranno la vestizione iniziale e la vestizione finale. Lo scopo del gioco è programmare la sequenza di azioni che Babbo Natale deve compiere per passare dall'una all'altra.

Il tabellone e le sagome dei vestiti possono essere usati per verificare la correttezza delle mosse. Possono essere stampati in formato A4 o A3. Il tabellone può essere stampato su cartoncino. E' possibile stamparlo due volte per ottenere una base e una sagoma rialzata (in negativo) utile a contenere le sagome dei vestiti mantenendoli nella giusta posizione.

Tabellone (pdf). [Carta patinata bianca, A4 o A3, 250g, solo fronte]

Vestiti (pdf). [Carta patinata bianca, A4 o A3, 250g, solo fronte]

Istruzioni per vestirsi (pdf-fronte, pdf-retro). [Carta patinata bianca, A4, 250g, fronte-retro lato lungo]

Istruzioni per svestirsi (pdf-fronte, pdf-retro). [Carta patinata bianca, A4, 250g, fronte-retro lato lungo]

Sfide incrementali (pdf-fronte, pdf-retro). [Carta patinata bianca, A4, 250g, fronte-retro lato lungo]

Sfide distratte (pdf-fronte, pdf-retro). [Carta patinata bianca, A4, 250g, fronte-retro lato lungo]

# data[].attributes.attachment_link.description
DressCode è il nuovo gioco di CodeMOOC, concepito per abbassare ancora le barriere di accesso al coding unplugged. E' ispirato al classico gioco di vestire una bambola con sagome di carta, già collegato al coding dai bellissimi disegni di Linda Liukas. Ma in questo caso il focus non è tanto sulla scelta dei vestiti, quanto Leggi di piùDress code[...]

# data[].attributes.body
Code.org: creazione della classe in Code.org, registrazione al corso "Labirinto classico" e "Corso 2". Attività svolta a scuola e a casa con consegna di attestato al termine del corso.

# data[].attributes.attachment_link.title
Learn computer science. Change the world.

# data[].attributes.attachment_link.description
Every student in every school deserves the opportunity to study computer science.

# data[].attributes.body
MOOC "Coding in your classroom, now", "Coding in their classroom, now" "Making apps in your classroom now", Gruppi FB, Programma il futuro, siti vari...

# data[].attributes.attachment_link.title
Coding - Studenti - Comandi e Istruzione

# data[].attributes.attachment_link.description
Un viaggio alla scoperta delle azioni elementari che eseguiamo ogni giorno, a casa e a scuola, e delle istruzioni che le descrivono.

# data[].attributes.attachment_link.description
Cosa ha a che fare una calcolatrice meccanica di fine '800 con il Coding? Lo scopriamo in questa puntata, dove impareremo ad eseguire ripetutamente istruzioni finchè non abbiamo raggiunto il nostro sc ...

# data[].attributes.body
Continuità scuola dell'infanzia-scuola primaria

# data[].attributes.headline
11. Presentazione attività di Robotica educativa ai genitori (PON 2017)

# data[].attributes.subject
11. Presentazione attività di Robotica educativa ai genitori (PON 2017)

# data[].attributes.headline
12. Presentazione laboratorio alla festa finale

# data[].attributes.subject
12. Presentazione laboratorio alla festa finale

# data[].attributes.body
Bleu bot Lego Wedo 2.0 Ozobot

# data[].attributes.body
Programma il futuro.
Piattaforma Emma
Gruppi facebook (condivisione di materiali ed esperienze)
Webinar
Corsi online

# data[].attributes.body
Sì come pratica del contesto didattico e delle dinamiche di apprendimento. Il coding è una pratica, non ha obiettivi specifici.
Approfondendo questa pratica:
- comprendo un problema in modo diretto,
- imparo dagli altri,
- comprendo l'importanza dell'errore,
- capisco che esistono più soluzioni ad un problema,
- ho la libertà di sbagliare,
- imparo per tentazivi ed errori,
- condivido ciò che ho imparato.
Il coding e la robotica non sono fini a se stessi, ma sono in funzione della didattica e dell'apprendimento (italiano, geografia, storia, matematica, inglese....) e delle competenze (8 competenze chiave europee, tra cui digitali, sociali-civiche, imparare ad imparare, iniziativa e imprenditorialità...).