Programmazione (coding): una Guida per principianti dedicata ai genitori

Traduzione e adattamento di MARCO MORELLO (champion del CoderDojo di Perugia) dell’articolo di Mary MOloney (gLOBAL ceo DELLA CODERDOJO FOUNDATION)
Articolo originale: https://coderdojo.com/news/2014/12/17/the-coderdojo-technology-coding-opinion-editorial-featuring-mary-moloney/

Che cosa significa “programmare”? Se lo chiedessimo a un certo ragazzino di nove anni che conosco, risponderebbe senza esitazioni  “È quella roba che scrivo che fa fare al mio computer cose fighe”. La complessità della programmazione è solo un’altra parte di questo universo ed è costituita dalle competenze che gli permettono di costruire fantastici siti, applicazioni e giochi, da solo, in piena autonomia. Ma per un genitore o un adulto con una formazione non tecnica, quello che lui dà per scontato può invece mettere un po’ in soggezione, se non addirittura spaventare.

Con l’Unione Europea che ha predetto la mancanza di un milione di lavoratori tecnici nel 2015, insegnare ai ragazzi a programmare diventa una preoccupazione crescente per governi, scuole e genitori. Tutti vogliamo dare ai nostri ragazzi il miglior supporto possibile per affrontare questa sfida, ma come possiamo aiutarli se non siamo in grado di distinguere la logica Booleana dal codice binario?

Prima di tutto: niente panico. Per la maggior parte delle famiglie, programmare sarà una cosa nuova per i ragazzi quanto è nuova per i genitori stessi. Gestita bene, questa si trasforma in una grande opportunità per imparare insieme. Qui di seguito ecco un po’ di cose da tenere a mente quando si parte in questo viaggio.

Perché è importante?

Mentre l’industria tradizionale è in declino, quello tecnologico è diventato uno dei settori dell’economia in maggiore crescita. E la programmazione dei computer è riconosciuta sempre più come una competenza indispensabile per i lavoratori del futuro. I programmatori godono di stipendi alti, sfide stimolanti e l’opportunità di dare forma al mondo che li circonda. Stiamo ancora fallendo nel produrre abbastanza candidati per coprire questi ruoli. Soltanto in Gran Bretagna vengono stimati 1,4 milioni di posti di lavoro vacanti per programmatori con una disponibilità di soli 400.000 laureati in informatica per coprirli. In Irlanda il governo prevede l’apertura di 44.500 nuovi posti di lavori nel corso dei prossimi sei anni per persone con alti livelli di competenza nel settore ICT (dato stilato in accordo con Forfas e con  il gruppo “Expert Group on Future Skills Needs”). Non è detto che ogni bambino di oggi vorrà programmare per vivere ma ogni bambino può trarre vantaggio dall’averlo fatto. Per essere precisi, credo che ogni bambino, indipendentemente dal genere o dal background, dovrebbe avere l’opportunità di provarci. Programmare affina le capacità in matematica e nel linguaggio, costruisce abilità nel problem solving, nel pensiero analitico e nel ragionamento logico. Inoltre incoraggia una incredibile capacità di innovazione e creatività nei nostri ragazzi. Credetemi, l’ho visto di persona.

Quindi, che cosa significa programmare?

Vi ricordate quel ragazzino di nove anni di cui parlavo. Beh, ha ragione lui. Programmare non è nient’altro che un insieme di parole che dicono a un sito, a un’app, a un gioco o a un pezzo di software che cosa deve fare. Queste istruzioni danno forma  a ciò che viene visualizzato da computer, apparecchi mobili e anche applicazioni per la casa, realizzando oggetti digitali utilizzabili dalle persone. La programmazione pone inoltre le basi dei sofisticati strumenti e tecnologie che usiamo al lavoro e che danno forma e fanno progredire tutti gli ambiti industriali, dall’ospitalità alberghiera alla medicina avanzata.

Mi state ancora seguendo? Se non mi state più seguendo, leggete il prossimo paragrafo lentamente e attentamente. Prendetevi tutto il tempo che serve.

Che cosa sono i “linguaggi” di programmazione?

Tutti i linguaggi di programmazione ci permettono di convertire in codice binario linee di parole e una sintassi che assomiglia a quella della comunicazione quotidiana. Il codice binario è quel susseguirsi di zero e di uno che dice a un computer che cosa deve fare. Ogni linguaggio ha un nome, qualcuno dei quali potrebbe esservi familiare: HTML, Java, C, Python e, certamente, Scratch. Sviluppato dal MIT (Massachussetts Institute of Technology) e scaricabile gratuitamente, Scratch è lo strumento di programmazione che molti ragazzini incontrano per primo. Programmando con Scratch le loro storie interattive, i giochi, le animazioni, bambini e ragazzi imparano le basi del pensiero computazionale, incluso come dividere un problema in piccoli elementi e risolverlo.

Codice binario?

Ora, volete davvero impressionare i vostri ragazzi? Fate cadere il termine “codice binario” in una conversazione casuale – sapendo che cosa significa. Il codice binario è costituito da vari gruppi di zero e di uno, gruppi che danno istruzioni al computer per commutare molte cose contemporaneamente, portandole da uno stato “acceso” a uno stato “spento”, fino a controllare in questo modo anche il più piccolo puntino sullo schermo del computer. Praticamente tutto funziona con questi zero e uno: il nostro sito preferito di news o di ricette, le app sul nostro telefono dalle quali dipendiamo quotidianamente, gli apparecchi senza i quali non riusciremmo più a vivere.

Bene, e io come posso supportare mia figlia che si immerge in questo mondo? Il viaggio dall’HTML a Scratch a Python è lungo e tortuoso. Scratch non è solo un modo eccellente per i ragazzi per imparare la meccanica dei giochi o della programmazione: è anche estremamente facile da capire anche da parte degli adulti. Così, perché non imparare le basi della programmazione al fianco di tuo figlio? Risorse per conoscere e usare Scratch possono essere trovate ovunque nel web, in particolare QUI e QUI. Se avete un iPad, potete anche scaricare una versione per bambini fino ai sei anni. Ricordatevi che, anche se siete adulti, non significa che sia troppo tardi per imparare a programmare. Potreste addirittura adorarlo! Nei CoderDojo abbiamo anche scoperto che uno dei modi migliori per aiutare i bambini a imparare è quello di collaborare con i loro pari. Se vostro figlio ha un grande progetto da realizzare, perché non invitare a casa qualcuno della sua classe per lavorarci insieme?

Soprattutto, divertitevi e mostratevi interessati! Chiedete ai vostri ragazzi che cosa stanno imparando e che tipo di giochi e app stanno inventando. Potreste addirittura inventarne qualcuna completamente vostra!

Mary

NOTA SULL’AUTRICE
Mary Maloney è Global CEO della CoderDojo Foundation. Prima di questo ha lavorato per 23 anni in Accenture, dove ha ricoperto diversi ruoli di primaria importanza sia per la società di consulenza sia per i clienti. I suoi articoli nel blog di coderdojo.com sono chiari, divertenti, motivanti. Ha due figi di 9 e 7 anni, entrambi ninja nei CoderDojo sorti nei pressi di casa sua.