Immagina se non avessi mai imparato l'addizione alle elementari e quando andavi alle medie non faceva parte del curriculum. Poi è arrivato il liceo, dove nessuno ha detto una parola a riguardo. Quando eri una matricola del college, tuttavia, potevi finalmente iscriverti a un corso aggiuntivo e affrontare l'argomento da adulto.
Questo scenario può sembrare un po' ridicolo, ma è una linea temporale familiare quando si parla di informatica, afferma Jeff Gray, professore di informatica all'Università dell'Alabama. Non è raro che la prima istruzione formale di uno studente sulla programmazione arrivi al college, afferma Gray, anche membro del comitato consultivo per l'istruzione di 10 persone per Code.org , un gruppo di difesa dell'educazione informatica.
Gran parte di ciò che insegna ai bambini delle scuole elementari è lo stesso materiale di un corso introduttivo al college, con alcuni aggiustamenti legati all'età.
"Quando insegniamo questi concetti ai bambini in età scolare, insegniamo questi concetti al livello appropriato", afferma. "Non c'è niente di magico nel concetto di programmazione, ma non l'abbiamo mai integrato nei programmi di studio degli studenti come se l'argomento fosse un cittadino di prima classe".
Con il supporto di Code.org e della National Science Foundation, Gray ha formato insegnanti elementari e secondari negli Stati Uniti in modo da incorporare l'informatica nelle loro lezioni. Quando è stato contattato da , Gray aveva appena lasciato un incontro alla Casa Bianca dove aveva partecipato a una discussione sull'Informatica per tutti , l'iniziativa del presidente Obama per consentire agli studenti americani dall'asilo fino al liceo di imparare l'informatica.
Il momento migliore è adesso
Quindi c'è un'età adeguata per i bambini per imparare a programmare? Secondo Gray, non è mai troppo presto. Anche i bambini che non sanno ancora leggere o scrivere possono cogliere la logica della codifica, grazie all'uso dei simboli. Nella prima infanzia, ad esempio, i giovani programmatori possono comporre una serie di blocchi con le frecce per far muovere un animale attraverso uno schermo verso una destinazione particolare.
"Ci sono ambienti per i non lettori", dice Gray, "e abbiamo anche attività unplugged, quindi invece di essere su un computer a scrivere codice, gli studenti possono svolgere attività cinestesiche e imparare l'informatica attraverso queste attività unplugged mentre si muovono per la classe ."
Con linguaggi di programmazione di base come Scratch , ideato dal Massachusetts Institute of Technology, per insegnare a più bambini le radici della programmazione e impegni in tutto lo stato per migliorare le abilità digitali degli studenti, Gray afferma di sentirsi incoraggiato.
Nel 2015, New York ha aggiunto l'informatica a tutti i livelli dei programmi delle scuole pubbliche e l'Arkansas è diventato il primo stato ad approvare una legge completa che richiede alle scuole superiori pubbliche e charter di offrire corsi di informatica.
Nel febbraio 2016, il presidente Obama ha annunciato Computer Science for All, un'iniziativa che migliora le competenze digitali degli studenti americani. L'iniziativa prevede un finanziamento di 4 miliardi di dollari per gli stati e 100 milioni di dollari direttamente per i distretti scolastici per espandere la formazione degli insegnanti e il materiale didattico, che sarà proposto come parte del prossimo bilancio nazionale. Inoltre, l'iniziativa riceverà 135 milioni di dollari in finanziamenti per l'informatica dalla National Science Foundation e dalla Corporation for National and Community Service .
Un Bene Superiore
Sebbene queste abilità di programmazione siano progettate per fornire agli studenti americani le competenze informatiche di cui hanno bisogno per prosperare in un'economia digitale, i vantaggi sono ancora più ampi, afferma Gray.
"It's all about problem-solving and analytical abilities beyond what see in traditional curriculum," he says, "skills that come with developing grit and perseverance. The programs they are writing are solving puzzles. We see students who have may have given up in earlier assignments, but are now driven and sticking to it."
This "growth mindset" is the difference between a student encountering a difficult problem and giving up or pushing on. "These children go off in life and succeed more," says Gray. "We are seeing in students that in the context of writing code, it engenders that kind of life."
Questa mentalità, nata dalla scrittura del codice, può avere implicazioni di vasta portata. "Forse la prossima volta che vedono un problema di matematica che non riescono a risolvere, non si arrendono", dice, "e invece apprezzano la sfida. Questi sono i vantaggi collaterali della scrittura di codice".
Ora è fantastico
Poiché voleva che i suoi due figli imparassero la programmazione, Andrew Duff ha creato Hour Code , una serie di tutorial di un'ora che hanno insegnato le basi della programmazione a oltre 119 milioni di persone dal 2013.