# data[].attributes.body
Introduzione al coding

# data[].attributes.attachment_link.description
Scratch is a free programming language and online community where you can create your own interactive stories, games, and animations.

# data[].attributes.attachment_link.readable_text
When you visit websites, they may store or retrieve data in your browser. This storage is often necessary for the basic functionality of the website. The storage may be used for marketing, analytics, and personalization of the site, such as storing your preferences. Privacy is important to us, so you have the option of disabling certain types of storage that may not be necessary for the basic functioning of the website. Blocking categories may impact your experience on the website.

# data[].attributes.attachment_link.title
Thunkable: Best no code app builder | No code app creation

# data[].attributes.attachment_link.description
Thunkable is the most powerful mobile app development platform that allows anyone to create an app without needing to know how to code.

# data[].attributes.body
L'ora del codice

# 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
Playlist sul coding e sul pensiero computazionale

# data[].attributes.headline
CODING: un approccio semiserio al pensiero computazionale (prima parte) - Professionisti Scuola

# data[].attributes.subject
CODING: un approccio semiserio al pensiero computazionale (prima parte) - Professionisti Scuola

# data[].attributes.attachment_link.readable_text
Ve la racconto così questa avventura cominciata quest'anno. Ascoltavo una collega parlare continuamente di CODING senza riuscire a capirne il significato. È una collega di lettere, Annamaria Bove e quando, prima di chiederle spiegazioni, ho fatto un po' di ricerca, mi sono accorto che tutti gli articoli riconducevano a quella che una volta si chiamava PROGRAMMAZIONE ASSISTITA AL CALCOLATORE. Una materia che, almeno credevo, con l'italiano non aveva niente in comune.

Non trovando risposta le ho chiesto, e lei mi ha detto che era quella che una volta si chiamava PROGRAMMAZIONE ASSISTITA AL CALCOLATORE. Lo sbandamento era inevitabile. Sono laureato in ingegneria e ricordo ancora quelle notti insonni passate a compilare complicatissimi codici di programmazione in linguaggi astrusi e dalla sintassi imperscrutabile.

Certo vengo da un durissimo quinquennio al liceo classico e maneggiare lingue morte era pane quotidiano, ma con l'informatica tutto si complicava. Dovevi costringere un computer logicamente stupido ad eseguire inutili operazioni in maniera sequenziale per sommare numeri primi, estrarre parole da un testo o contare gli aggettivi in un altro. Insomma compilavi quantità improponibili di codici per poi magari vederti rispondere SYNTAX ERROR ed andare per notti intere alla ricerca della virgola saltata, della parentesi graffa messa male o dello spazio dimenticato.

Iscriviti alla nostra Fan page
E noi vorremmo insegnare questo a ragazzini di prima media? E ancora, una professoressa di italiano può insegnare una materia così difficile?

Con la stessa tignosa cocciuta curiosità che mi faceva ingerire litri di caffè mentre cercavo di correggere quei fastidiosi SYNTAX ERROR, ho preso ad informarmi fino a scoprire un mondo. L'informatica non può più essere qualcosa che consegna alla leggenda personaggi come Steve Jobs, Bill Gates, Alan Touring, non possiamo e non dobbiamo più considerarla qualcosa per "smanettoni" chiusi in un garage o Nerd che dovrebbero cercarsi una ragazza o magari parlare con le persone più che con le macchine (alzi la mano il primo che non ha mai pensato qualcosa del genere del compagno Nerd).

L'informatica deve diventare una materia comune a tutti e soprattutto semplice e di facile comprensione. Il perché è immediato. Le nuove generazioni sono quelle indicate da eminenti pedagoghi come " NATIVI DIGITALI". Io per la verità preferisco ampiamente definirli " PRIMITIVI DIGITALI " capaci di usare uno strumento digitale senza capire come è fatto. Va riconosciuto però, in entrambe le definizioni, che le nuove generazioni sono incredibilmente "connesse" alle loro device, ai loro sistemi, date uno strumento elettronico ad un bambino e vedete di cosa è capace.

Cosa voglio dire? Voglio solo sottolineare come questi strumenti e questo approccio divengano una porta aperta verso il mondo dei nostri figli e dei nostri studenti. Quando ero un ragazzo della stessa età dei miei studenti (molti anni fa purtroppo), una ricerca significava ricopiare e miniare a mano quello che mi raccontava l'enciclopedia (la stessa di tutti i miei compagni) e al massimo ascoltare, a seconda dell'argomento, qualche notizia ulteriore raccontatami da mio padre. Nessuna possibilità di verifica, nessun confronto e nessuna differenza con le ricerche dei miei compagni. Ed alla stessa maniera ricordo tempi lunghi, attese, pomeriggi rilassati a non far niente, a leggere un libro a godere del silenzio.

Oggi, invece, i ragazzi sono frenetici, sottoposti ad un lungo bombardamento di informazioni ogni genere che vanno filtrate, selezionate, scelte con cura, osservate. È su questa differenza che occorre basare il nostro lavoro.

Prima regola è parlare il loro linguaggio sfruttando una capacità critica superiore alla loro. Non è una aspra lotta tra fautori del digitale e non, ma può diventarla tra chi mette i ragazzi e le loro esigenze al centro del dialogo educativo e chi non lo fa.

Ecco che alla luce di questo anche il CODING, la programmazione assistita al calcolatore comincia a prendere un significato diverso. Gli Stati Uniti sono stati precursori in questo, aprendo la strada all'informatica insegnata nelle scuole elementari ed in età prescolare. L'idea è rivoluzionaria, trasformiamo quel linguaggio astruso, quella sintassi complicata in qualcosa che i bambini conoscono bene, i mattoncini delle costruzioni. Ecco che nasce SCRATCH nei laboratori dell' MIT di Boston, dal gruppo di ricerca del prof. Mitch Resnick.

Si, mattoncini da costruzioni. Tutte le istruzioni come cicli, condizioni, iterazioni, cicli annidati, funzioni, operatori si trasformano in mattoncini che si uniscono in maniera sequenziale in un simulatore che consente di verificarne di volta in volta il funzionamento. A renderlo ancora più accattivante è l'interfaccia in cui si chiede, in genere, ai bambini di creare giochi, storie, effetti speciali e qualsiasi cosa li diverta.

Ecco, dunque, come cambia il rapporto con l'informatica. Non più qualcosa per NERD, ma conoscenza diffusa ad ogni livello. Le implicazioni, come in ogni rivoluzione, sono tantissime e non tutte volute.

Cominciamo dalla più ovvia.
L'INFORMATICA
La conoscenza diffusa a livello capillare fin dall'età prescolare finisce per agire direttamente sui nostri amatissimi PRIMITIVI DIGITALI. Infatti non sono più oggetto della tecnologia come siamo abituati a vederli. Ricordate quei filmati sull'addestramento delle scimmie in laboratorio? Bottone rosso corrisponde a banana e bottone blu a scossa elettrica? Avete presente? Ecco come vedo i miei studenti. Avvezzi alla tecnologia, ma con bisogni e necessità che si modificano con le funzioni che il dispositivo presenta. Come dire, mangio una bella mela se ho un dispositivo APPLE, mentre trangugio lamponi quando utilizzo una fiammante RASPBERRY. Questo è sbagliato e non accettabile. Se insegniamo l'informatica fin dall'età prescolare, ci ritroveremo con una intera generazione che saprà programmarsi i propri giocattoli, le proprie applicazioni, che scambierà i videogiochi creati nella loro stanza e che saranno SOGGETTI attivi della tecnologia mettendo finalmente a frutto l'essere NATIVI DIGITALI (fatemelo dire, così anche i pedagoghi sono contenti).

Altra implicazione.
IL DIVERTIMENTO
Dovrei parlare di GAMIFICATION ma rabbrividisco solo se la pronuncio quella parola. Ricordate il film Monsters & Co? Alla fine si scopre che l'energia ottenuta dalle urla di terrore dei bambini era di gran lunga inferiore a quella prodotta dalle risate degli stessi. L'uovo di Colombo, i puristi direbbero "lapalissiano", più o meno come quando mia madre mi chiedeva di scegliere tra il cavolo lesso e la lasagna.

Non vi è dubbio che i nostri ragazzi imparano di più quando si divertono, quando ridono, quando, materie come l'informatica, la fisica, la matematica, e tutte le altre vengono affrontate in maniera divertente.

Dobbiamo metterci un berretto a sonagli e cominciare a fare le capriole in classe? Io lo faccio già, ma non è questo il senso. Se riusciamo ad entusiasmare i ragazzi, a parlare il loro linguaggio, ad usare esempi vicini ai loro hobby, allora il gioco è fatto. Pensate ad un vecchio professore di informatica che ti faceva fare tonnellate di algoritmi per sommare i numeri pari o per contare quante volte in un testo si trovava la lettera "e". Pensate, poi, ad un moderno professore di CODING che insegna le stesse cose programmando un cacciatore che uccide perfidi goblin che gli hanno rubato l'agognato tesoro (lo vedrete in un prossimo articolo).

Lasciatemi scomodare Seymour Papert, matematico, informatico e pedagogo quando dice " I ragazzi imparano meglio quando sono attivamente coinvolti nel costruire qualcosa che ha un significato per loro, sia esso un poema, un robot, un castello di sabbia o un programma per computer ".

Per la cronaca, quando mia madre mi proponeva la scelta ho sempre scelto la lasagna, ma ho sempre mangiato il cavolo lesso (potere delle mamme).
IL PENSIERO COMPUTAZIONALE
Quanto mi terrorizza il fatto che sia io ad usare una terminologia tanto di moda, ma il pensiero computazionale rappresenta la quadratura del cerchio. Col pensiero computazionale, con la capacità di razionalizzare un problema di qualsiasi portata esso sia, con la capacità di proporre soluzioni razionali e sequenziali tipica dell'approccio algoritmico dell'informatica, si ingenera una serie di comportamenti di assoluto rilievo.

Deframmentazione di problemi complessi : i ragazzi imparano che un problema particolarmente complicato può essere ridotto in una serie di problemi più semplici;

Cooperative learning : i ragazzi imparano a lavorare in gruppo, soprattutto quando è richiesta la soluzione a problemi complessi;

Rivalutazione dell'errore: questa mi piace davvero. Basta avere paura di sbagliare. L'errore in informatica è di incredibile aiuto, è una strada da non percorrere, un campanello d'allarme, un invito ad aggiustare il tiro. Non ci si scoraggia quando si sbaglia, ma si stringono i denti e si riprova;

Didattica inclusiva: con l'informatica si riescono a superare barriere di ogni tipo e può essere uno strumento di grandissimo aiuto (quanto ne parleremo nei prossimi articoli).

Problem solving: e se non è una didattica mirata al problem solving l'informatica, allora ditemi voi di cosa stiamo parlando.

: qui mi soffermo giusto un attimo. Occorre urlare a gran voce che l'informatica non è già un mero strumento ad uso e consumo di chi insegna tecnologia. La mia materia deve diventare volano e strumento nelle mani degli altri colleghi e delle altre discipline (abusate pure di me, ma con moderazione). Non è forse Didattica multidisciplinare CODING e PENSIERO COMPUTAZIONALE l'analisi logica e quella grammaticale? E che dire dell'indice di un libro, non è forse l'algoritmo del libro stesso? Ed un problema di fisica non si risolve con una serie di condizioni preliminari? E quando si disegna non si applicano regole rigide e sequenziali come quelle di uno sketch di informatica? Potrei continuare ma vi risparmio le altre discipline. Ed allora occorre inevitabilmente ricostituire una COMUNITA' di insegnanti che lavorino insieme non solo sulle carte. Insegnanti pronti a collaborare mettendo a frutto le proprie idee educative, ma parlando il linguaggio proprio dei ragazzi.

Siamo alla fine della chiacchierata. Potrei farmi una domanda, ma ho paura di non sapermi rispondere. Come si insegna questa materia ? Non ne ho la più pallida idea, ma posso raccontarvi il percorso che ho fatto io sperando che qualcuno di voi mi renda un feedback (oddio parlo come un informatico) che mi chiarisca se sono sulla strada giusta o no, ma ve lo racconto nella seconda parte dell'articolo.
Luca Scalzullo CODING: un approccio semiserio al pensiero computazionale (seconda parte)

# data[].attributes.attachment_link.title
CODING: un approccio semiserio al pensiero computazionale (prima parte) - Professionisti Scuola

# data[].attributes.attachment_link.description
Ve la racconto così questa avventura cominciata quest'anno. Ascoltavo una collega parlare continuamente di CODING senza riuscire a capirne il significato. È una collega di lettere, Annamaria Bove e quando, prima di chiederle spiegazioni, ho fatto un po' di ricerca, mi sono accorto che tutti gli articoli riconducevano a quella che una volta si chiamava PROGRAMMAZIONE ASSISTITA AL CALCOLATORE.

# 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.body
Computer Science without computer

# data[].attributes.attachment_link.description
CS Unplugged is a collection of free teaching material that teaches Computer Science through engaging games and puzzles that use cards, string, crayons and lots of running around.

# data[].attributes.headline
CODING: un approccio semiserio al pensiero computazionale (seconda parte) - Professionisti Scuola

# data[].attributes.subject
CODING: un approccio semiserio al pensiero computazionale (seconda parte) - Professionisti Scuola

# data[].attributes.attachment_link.readable_text
ai ragazzi i vantaggi del PENSIERO COMPUTAZIONALE ? Ne abbiamo parlato nel mio articolo precedente, sperando che le idee siano più chiare, ma voglio condividere quello che ho fatto sperando vivamente in un confronto con tutti voi sull'approccio con il coding e su come possa essere utile a rivoluzionare la didattica.

"E mentre su New York calavano le prime ombre della sera..."

Così cominciava un vecchio fumetto che ha accompagnato la mia infanzia e così comincio io, anche perché a notte inoltrata sono qui al mio pc a terminare un discorso iniziato nell' articolo precedente
CODING UNPLUGGED
L'inizio dell'avventura è stato fatto lontani dal computer. Come dite? Informatica senza computer? Diceva l'informatico olandese EDSGER DIJKSTRA che " l'informatica sta al computer, più o meno come l'astrofisica sta al cannocchiale".

L'informatica, la computer science, la programmazione è un modo di far fare rapidamente ad una macchina stupida, quello che noi intelligenti, facciamo molto lentamente. Chi ha progettato i computer ha elaborato un sistema che traduce in logica booleana, linguaggio binario, ogni informazione ed istruzione dettata alla macchina. Questo sistema di codifica lo ho insegnato ai miei studenti giocando con loro a codificare messaggi segreti, a decodificarli, a scomporre in codice binario immagini colorate e poi provando a ricomporle.

Mi è piaciuto questo sistema per ingenerare in loro una conoscenza pratica del processo informatico, dell'enorme numero di codifiche e traduzioni che si compiono quando si scrive un articolo più o meno interessante come questo.

Tutto senza computer, all'aperto, con carta, cartelloni e penne e con una buona dose di divertimento e confusione sotto gli occhi allibiti del preside (abbiamo fatto giocare anche lui ed ha incredibilmente perso).

Consiglio a tutti il sito di riferimento http://csunplugged.org/ in cui si trovano molte attività didattiche per ogni tipo di esperienza da fare in classe e a casa.

Altri hanno usato un mazzo di carte da costruire in classe, CODY ROBY al sito http://codeweek.it/category/unplugged, che personalmente non ho utilizzato che restituisce gli stessi utilissimo risultati.
CODE.ORG
Sono passato poi a questa piattaforma dell'MIT, http://studio.code.org, in cui, per la verità insieme ai miei ragazzi, abbiamo imparato a programmare con il sistema dei blocchi logici. Ci sono tanti percorso da fare, ed interi corsi in cui occorre programmare la soluzione ad un problema più o meno complesso. Ci si diverte tanto anche perché si utilizzano i personaggi dei film PIXAR (Ice Age), o quelli dei più famosi giochi per dispositivi mobili come Angry Birds o Plants vs Zombie.

Il risultato è sorprendente, si riesce in un tempo ragionevole ad impadronirsi dei conetti tipici dell'informatica. Condizioni, cicli, iterazioni, contatori ed incrementi, cicli condizionati, cicli annidati, funzioni e tutto quello che mi sono dimenticato in questa lista.

La potenzialità di questo sito è enorme, primo perché restituisce il senso del risultato raggiunto quando consegna ai ragazzi ed alla classe un certificato alla fine del corso. Poi, altrettanto interessante per noi insegnanti, permette di creare una classe virtuale in cui ogni studente ha il suo spazio e la sua password per accedere, e l'insegnante ha il modo di verificare i progressi di ciascuno di loro.

A parte l'inizio e l'avvio, tutti gli studenti si sono divertiti a casa e nel tempo libero, raggiungendo in tempi inaspettatamente rapidi la fine del percorso.
SCRATCH
Scratch ( https://scratch.mit.edu) è la sublimazione del percorso precedentemente descritto. È uno strumento tanto semplice quanto versatile che consente di giocare, raccontare storie, fare videogiochi, parlare di fisica (ci sono amici che simulano il moto dei pianeti) o controllare robot.

Lascio all'iniziativa dei mie cari lettori la voglia di provarlo, ma vale la pena raccontare della comunità di scratch. Tutto quello che si fa va messo in rete, va condiviso con tutti. Chiunque ha la possibilità di attingere dalle idee degli altri, di prendere porzioni di codice, di modificare i progetti altrui e soprattutto di crescere in un cooperative learning continuo ed a livello mondiale. Personalmente ci gioco con la mia cavia da laboratorio e ci inventiamo giochi sotto i suoi suggerimenti. Da poco, la mia cavia che vedete in foto, ha anche cominciato a programmare semplici oggetti in movimento a soli 5 anni.

Vi sembra incredibile? Anche a me, ma credetemi, vale la pena provare.
APP INVENTOR
Niente di meglio di un cellulare per diventare protagonisti della tecnologia, per diventarne soggetti e staccarsi dall'immagine dello scimmione capace di usare il computer.

Ecco come con il linguaggio di scratch i mie ragazzi hanno imparato a farsi da soli le applicazione per i cellulari, alcune delle quali già pubblicate su playstore e oggetto di futuri articoli. Difficile?

Non tanto se ci si diverte insieme ( http://appinventor.mit.edu/explore/).
KODU E PROJECT SPARK
Infine queste due piattaforme che hanno riempito il cuore di questo nostalgico prof. ( www.kodugamlab.com, http://welcome.projectspark.com/).

Grafica eccezionale e fantasia al potere con la possibilità di crearsi incredibili videogiochi progettando tutto, dal sasso a bordo strada al boss finale da sconfiggere.

Curiosi? Restate sintonizzati e vedrete cosa riesce a fare un ragazzino di terza media opportunamente motivato.

Non mi resta che salutare ed andare a progettare unità didattiche per i miei studenti (vado ad accendere la Playstation ).

# data[].attributes.attachment_link.title
CODING: un approccio semiserio al pensiero computazionale (seconda parte) - Professionisti Scuola

# data[].attributes.attachment_link.description
ai ragazzi i vantaggi del PENSIERO COMPUTAZIONALE ? Ne abbiamo parlato nel mio articolo precedente, sperando che le idee siano più chiare, ma voglio condividere quello che ho fatto sperando vivamente in un confronto con tutti voi sull'approccio con il coding e su come possa essere utile a rivoluzionare la didattica.

# data[].attributes.body
Scratch - Wikipedia

# data[].attributes.attachment_link.readable_text
Scratch è un ambiente di programmazione gratuito, con un linguaggio di programmazione di tipo grafico. Tale linguaggio, ispirato alla teoria costruzionista dell'apprendimento e progettato per l'insegnamento della programmazione tramite primitive visive, è adatto a studenti, insegnanti e genitori ed è utilizzabile per progetti pedagogici e di intrattenimento che spaziano dalla matematica alla scienza, consentendo la realizzazione di simulazioni, visualizzazione di esperimenti, animazioni, musica, arte interattiva e semplici giochi.

Il gruppo Lifelong Kindergarten del MIT Media Lab, guidato da Mitchel Resnick, e la sua società di consulenza, Playful Invention Company, con sede a Montreal, co-finanziato da quest'ultimo con Brian Silverman e Paula Bonta, ha sviluppato la prima versione desktop di Scratch nel 2003. Dal 2007, i progetti possono essere condivisi online con altri utenti, i quali possono apportare modifiche in modo cooperativo.

Il nome deriva dalla omonima tecnica dello scratch usata dagli artisti del giradischi, i turntablist, alludendo alla facilità con cui è possibile missare e remixare i progetti Scratch.

Da questa base si sono sviluppate altri progetti, per esempio Snap!, per aggiungere altre funzionalità non presenti nella versione di Scratch.

Con l'introduzione della versione 2.0 di Scratch, avvenuta il 9 maggio 2013, è diventato possibile definire blocchi utente all'interno di un progetto. Inoltre, da questa data, il sito di Scratch viene rinnovato graficamente e fornisce un editor online che consente di creare e modificare i progetti direttamente sul sito. Sia la versione offline che quella online richiedono il supporto della tecnologia Adobe Flash.

Una variante di Scratch per bambini da 5 a 7 anni è stata sviluppata sotto il nome di ScratchJr e rilasciata nel 2014.

La terza versione di Scratch è stata annunciata nel 2016 e rilasciata ufficialmente il 2 gennaio 2019. Questa versione è la prima ad essere compatibile anche con la maggior parte dei dispositivi mobili, in quanto è stata sviluppata in HTML5 e JavaScript.

Linguaggio

Scratch prevede un approccio orientato agli oggetti (denominati Sprite) ed un linguaggio di programmazione che consente di elaborare storie interattive, giochi, animazioni, arte e musica. Inoltre permette di condividere i progetti con altri utenti del web.

L'idea di questo linguaggio è che anche i bambini o le persone inesperte di linguaggi di programmazione possono imparare importanti concetti di calcolo matematico, a ragionare in modo sistematico, a pensare in modo creativo e a lavorare in gruppo.

Le istruzioni fondamentali del linguaggio di Scratch sono implementate in blocchi colorati creati per agganciarsi l'un l'altro e formare delle colonne. Ognuna di queste colonne di blocchi viene chiamata script e fanno parte del codice vero e proprio che viene interpretato dalla macchina.

L'ambiente Scratch è disponibile sia via web, sul sito ufficiale scratch.mit.edu, sia come software utilizzabile offline, chiamato Scratch Desktop, disponibile per le piattaforme Windows, MacOS. Al momento non esiste una versione ufficiale di Scratch Desktop per GNU/Linux. L'ultima versione stabile è la versione 3.6.0. pubblicata nel 2019.

Interfaccia utente

L'area posta in alto a sinistra è il palcoscenico o "stage area", dove compaiono i risultati e il codice prende vita (es. animazioni, grafica, ecc., tutto in dimensioni piccole, normali o a pieno schermo) mentre gli Sprite, gli oggetti grafici su cui agisce il codice, sono elencati in basso.

Selezionando uno Sprite è possibile associarvi i blocchi di codice, selezionabili dall'area Script, dove sono raggruppati per argomento, trascinandoli nell'area del codice. Se uno Sprite ha associato del codice questo viene visualizzato nell'area a destra ed è possibile modificarlo. Qualsiasi blocco può essere provato con un doppio clic in modo da vederne in anteprima l'azione.

A lato della cartella Script, ve ne sono altre due per Costumi e Suoni. Una barra espandibile a destra è dedicata alla guida.

Le aree sono state riorganizzate nella versione 2.0.

Lo slogan della comunità online di Scratch recita "Immagina, Programma, Condividi", sottolineando l'importanza della condivisione e degli aspetti sociali della creatività nella filosofia alla base di Scratch.

I progetti Scratch, essendo a codice aperto, sono liberamente modificabili e utilizzabili per creare nuovi progetti. I progetti possono essere inviati direttamente dal programma al sito web di Scratch, e qualsiasi membro della comunità può scaricarne il codice per studiarlo o modificarlo in un nuovo progetto. I membri possono inoltre creare gallerie di progetti, commentare, taggare e aggiungere ai preferiti. Tutti i progetti sul sito sono condivisi con licenza Creative Commons "Share-Alike" e riprodotti su un browser (utilizzando Flash Player).

Il sito web riceve quasi 10 milioni di visite al mese e al 2 gennaio 2013 i membri registrati sono 1.349.093 (di cui 402.697 hanno condiviso progetti), per un totale di più di 4.200.000 progetti condivisi (più di un progetto inviato al minuto). Il sito web organizza periodicamente il "Scratch Design Studio", competizione per incoraggiare la creazione e condivisione di progetti dalla grafica elementare.

Nel 2008, la piattaforma della comunità online di Scratch (denominata "ScratchR") ha ricevuto una menzione onoraria all'Ars Electronica Prix.

Esiste anche una comunità online per educatori, denominata ScratchEd.

# data[].attributes.body
Book 2015

# data[].attributes.body
Coding unlugged

# 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.