# Dietro il coding

Dietro il coding
Copertina Tutti i moduli · Sviluppo
    CopertinaDietro il coding/Copertina
* Che cos'è il codingDietro il coding/Che cos'è il coding
* Perché è così importante?Dietro il coding/Perché è così importante?
* Una valutazione storicaDietro il coding/Una valutazione storica
* Come si parla del coding?Dietro il coding/Come si parla del coding?
* Gli schieramenti in campoDietro il coding/Gli schieramenti in campo
* Primo Intermezzo: che significa opensource?Dietro il coding/Primo Intermezzo: che significa opensource?
* A che serve il coding?Dietro il coding/A che serve il coding?
* Chi può insegnare il coding?Dietro il coding/Chi può insegnare il coding?
* Secondo Intermezzo: le differenze tra linguaggiDietro il coding/Secondo Intermezzo: le differenze tra linguaggi
* Che linguaggio?Dietro il coding/Che linguaggio?
** AliceDietro il coding/Che linguaggio?#Alice
** Squeak/EtoysDietro il coding/Che linguaggio?#Squeak.21_.2FEtoys
** Snap!Dietro il coding/Che linguaggio?#Snap!
** CatrobatDietro il coding/Che linguaggio?#Catrobat
** OpenRobertaDietro il coding/Che linguaggio?#OpenRoberta
** Minecraft: Education EditionDietro il coding/Che linguaggio?#Minecraft: Education Edition
** Apple Swift PlaygroundDietro il coding/Che linguaggio?#Apple Swift Playground
** ToonTalkDietro il coding/Che linguaggio?#ToonTalk
** LinotteDietro il coding/Che linguaggio?#Linotte
* Il modello didattico dietro ScratchDietro il coding/Il modello didattico dietro Scratch
* Come va praticato il CodingDietro il coding/Come va praticato il Coding
* Un po' di storia…Dietro il coding/Un po' di storia…
** B.A.S.I.C.Dietro il coding/Un po' di storia…#B.A.S.I.C.
** LOGODietro il coding/Un po' di storia…#LOGO
** NETLOGODietro il coding/Un po' di storia…#NETLOGO.5B1.5D
** STARLOGODietro il coding/Un po' di storia…#STARLOGO.5B2.5D
** SMALLTALKDietro il coding/Un po' di storia…#SMALLTALK
* E oggi?Dietro il coding/E oggi?
* Come potrebbe funzionare davveroDietro il coding/Come potrebbe funzionare davvero
* Suggerimenti di letturaDietro il coding/Suggerimenti di lettura
Modifica il sommario

## Finalità

Questo testo è stato scritto in occasione di due seminari organizzati dall'Associazione Gessetti Colorati, a Ivrea e a Torino, nel settembre 2016, su invito di Rodolfo Marchisio.
Raccoglie in realtà anche degli scritti precedenti, pubblicati sul mio blog (http://steve.lynxlab.com) dove da qualche anno cerco di capire il fenomeno del Coding. Di qui il titolo: andare “dietro il coding” significa cercare di capire cosa significa, cosa c’è sotto, cosa c’era prima, a cosa punta.
In realtà è un interesse di ritorno: in un'era precedente – direi almeno venticinque anni fa - ho insegnato informatica a dei ragazzini delle medie in una scuola privata di Roma. E non essendoci un progetto didattico definito, ho deciso di insegnare anche programmazione. Mi ricordo mattinate divertenti, entusiasmanti, ma anche blocchi e crisi. L'esperienza è durata alcuni anni, poi sono passato ad altro (per modo di dire: a creare software didattico o ambienti per l’apprendimento digitale); ma alcune riflessioni fatte allora me le sono portate dietro fino ad oggi.
Ad esempio: il momento più difficile per i ragazzi non è mai stato la scrittura del codice del programma, ma piuttosto l'impostazione iniziale (l'ideazione) e la correzione. La prima fase perché richiedeva una visione molto astratta di ciò che si voleva fare, e che ancora non esisteva (un videogioco che simula una corsa di cavalli: quali sono i dati? Quali i vincoli? Come si potrà interagire col gioco?). La seconda, perché scoprire un errore di progettazione è molto più difficile che trovare un errore di sintassi nel codice o una variabile scritta male.
Nel tempo ho poi scoperto che queste difficoltà non diminuiscono tra i programmatori professionisti, anzi; forse spaventano solo un po' meno. Gli errori più gravi, anche nei programmi che usiamo, sono quelli concettuali (come il famoso bug dell'anno 2000), non quelli sintattici.
A forza di scrivere codice, e soprattutto di leggere codice scritto da altri, piano piano mi sono accorto di quante differenze ci sono tra il codice scritto da uno e quello scritto da un altro; di quanta parte delle abitudini mentali e linguistiche delle persone si riflettono poi nel modo di programmare. Dove cominciano queste differenze? Sono le stesse che ci portano a scrivere lettere e racconti in modo così personale? C'è un rapporto tra i primi programmi e primi componimenti scolastici? Chi legge di più, scrive anche meglio il codice? E la differenza tra ragazze e ragazzi? E l'ambiente sociale, la cultura della famiglia, la lingua madre: quanto incidono sul risultato finale?
E poi: venticinque anni fa esistevano i videogiochi, ma certo non erano così diffusi, non stavano su ogni smartphone, non era normale vedere una signora di mezza età giocarci mentre viaggia in metropolitana. Che significa, per un bambino che è nato con un videogioco in mano, programmarne uno? Che succede nel suo immaginario quando può mettersi dall'altro lato del palcoscenico, come regista, attore, padrone di quell'universo?
Eccetera eccetera.
Quando leggo di Coding nelle scuole primarie, mi vengono in mente tutte queste questioni, e mi domando come le affrontano oggi gli insegnanti utilizzando Scratch. Avvicinandomi un po', ho scoperto però che...

## Libri correlati

* LOGO (sommario)LOGO
* Scratch (sommario)Scratch

## Collegamenti esterni

Slide degli incontri da cui è tratto il testo