News

Coding per le scuole

Coding: perché apprenderlo?

Come imparare con il Coding

La diffusione dell’informatica nel mondo attuale in ogni ambito della vita lavorativa, nello svolgimento delle normali attività ludiche o nella gestione delle più comuni attività, ha reso necessario un diverso approccio al mondo dell’informatica rispetto a quello avuto fino ad ora. Non è più accettabile, infatti, avere, in una popolazione, dei bacini di utenti del tutto impreparati circa l’uso delle moderne tecnologie. Ciò, infatti, significherebbe lasciarli fuori da ogni tipo di contesto lavorativo o sociale.

L’informatica, dunque, da alcuni anni è entrata di diritto nell’ambito degli insegnamenti scolastici perché è fondamentale per gli studenti di ogni ordine e grado cominciare ad apprenderne le basi per essere preparati ad affrontare, poi, il mondo universitario o quello lavorativo dove l’uso del personal computer è diventato imprescindibile da qualsiasi tipo di percorso si decida di intraprendere.

In questo contesto si inserisce il Coding, ovvero la programmazione informatica inclusa nella scuole come una vera e propria materia di studio affinchè ogni studente sia in grado di acquisire una serie di competenze ed abilità che lo portino a risolvere i problemi in modo logico, seguendo la tecnica del calcolo computazionale che è alla base, appunto della programmazione.

Il coding a scuola, quindi, assume un’importanza che va sia oltre la semplice acquisizione di nozioni puramente tecniche sia oltre l’ambito prettamente informatico. L’informatica si divide in due grandi ambiti, l’hardware ed il software, e l’implementazione di entrambi comporta quello che si chiama innovazione tecnologica. Per quanto riguarda il software, al suo interno la parte dedicata allo sviluppo ha avuto una grande trasformazione passando da quella lineare a quella ad oggetti a quella con metadati, ma tutte hanno in comune sia la figura di colui che crea il programma (programmatore o analista-programmatore) sia le linee di codice con cui vengono scritte le routine cioè i blocchi esecutivi del programma stesso.

Nel corso di questi ultimi trent’anni sono cambiati i linguaggi di programmazione ma non le tecniche fondamentali della stessa; in tutto questo tempo è rimasta pressoché immutata anche e soprattutto la logica sottostante ogni algoritmo che viene poi tradotto nel linguaggio scelto ma, contestualmente, si è notevolmente abbassata l’età di approccio logico alla programmazione stessa. Per questo motivo si è andata sviluppando la necessità di iniziare un percorso di apprendimento dell’informatica fin dai primi anni scolastici, naturalmente contestualizzandolo in base all’età degli studenti.

Il coding nella didattica della scuola primaria, infatti, è stato studiato per rendere gli argomenti divertenti ed intuitivi insegnando ai bambini le basi della logica e del “pensiero computazionale” con metodi moderni sviluppati sottoforma di gioco.

Approfondiamo, però, il concetto di coding a scuola ed il modo in cui esso viene insegnato nelle classi. Innanzitutto c’è da dire che questo è un progetto sviluppato dal MIUR in collaborazione con il CINI (Consorzio Interuniversitario Nazionale per l’Informatica) con la finalità di dare agli studenti una serie di strumenti per imparare l’informatica in modo semplice e divertente.

Si tratta, dunque, di corsi di programmazione appositamente ideati per i bambini. Proprio per questo motivo nella didattica vengono inseriti pupazzi, animali e cartoni animati con i quali i piccoli studenti dovranno interagire mediante Tablet o Personal Computer. Ciò può essere fatto inserendo delle semplici istruzioni (di solito in JavaScript che è uno dei linguaggi base della programmazione web) che dicano al pc cosa fare o meglio cosa far fare ai vari personaggi. Naturalmente parliamo di numeri e codici la cui sequenza corretta fornisce le giuste istruzioni per far muovere, parlare o interagire i pupazzi.

Sembrerebbe complesso ma in realtà è molto semplice ed insegna ai bambini a pensare ed a risolvere problemi, quello che comunemente viene chiamato problem solving, attraverso gli algoritmi o il pensiero computazionale. Insegnare ai più piccoli questa materia significa trovare un substrato estremamente favorevole per l’apprendimento perché, come è ovvio, i bambini sono più pronti ad imparare rispetto agli adulti e per questo inserire il coding nella didattica delle scuole primarie significa far crescere delle generazioni che ” imparano a pensare e a risolvere”.

Del resto inserire il coding nella didattica oggi è molto più semplice anche perché ci troviamo già davanti ad una generazione che, rispetto a quella di alcuni anni fa, nasce con la possibilità di usare supporti informatici sin dalla tenera età e che riesce, grazie anche a connessioni veloci, ad interagire con il resto del mondo in maniera rapida ed in tempo quasi reale come se fosse del tutto naturale perché ormai la condivisione delle informazioni e la continua connessione fanno sicuramente parte della via quotidiana.

Per poter insegnare il coding nella scuola sono presenti diverse piattaforme appositamente studiate per questo scopo. Anche gli adulti possono approcciarsi al coding anche se in modo diverso rispetto ai bambini.

In rete ci sono molti siti appositamente creati per questo scopo, negli anni infatti si sono davvero moltiplicate le piattaforme dedicate al coding che mettono a disposizione di studenti, insegnanti e genitori una grandissima quantità di strumenti in grado di portare a dei risultati davvero sorprendenti. In particolare gli alunni avranno l’opportunità di seguire dei corsi appositamente strutturati in base all’età, sia per bambini al di sotto dei 6 anni e che quindi non sanno leggere o stanno imparando a leggere da poco tempo sia per bambini in età scolare che avranno, dunque un approccio differente; il coding nella scuola secondaria (sia di primo che di secondo grado) consentirebbe inoltre di approfondire tutte quelle tecniche atte alla conoscenza della logicità dei problemi per raggiungere l’obbiettivo di poterli risolvere mediante il minor numero di passi possibile e le intenzioni di queste piattaforme è proprio quello di poter creare programmi ed applicazioni per sviluppare giochi che insegnino in modo graduale a risolvere ogni tipologia di problemi, sia di tipo semplice che di tipo complesso.

Coding, dove ci può aiutare e perché è utile?

Pensiero computazionale nella risoluzione di problemi

Questa frase di Steve Jobs racchiude in sé il significato e l’importanza dell’apprendimento del coding nelle scuole: “Tutti in questo paese dovrebbero imparare a programmare un computer perché insegna a pensare”

Alla luce di quanto detto fin’ora appare chiaro che il coding ed il pensiero computazionale stanno diventando degli elementi imprescindibili nelle nuove metodologie di insegnamento e sono destinate a modificare in modo sostanziale la didattica soprattutto nella scuola dell’infanzia ed in quella primaria perché è lì che si gettano le basi più importanti per lo sviluppo del ragionamento e della crescita intellettiva del futuro.

Con il termine pensiero computazionale si intende una capacità mentale in grado di risolvere problemi a partire da strumenti specifici. Questa abilità, che può essere appresa, non si limita al campo tecnologico ma fornisce all’individuo i mezzi per trovare le diverse strade al fine di produrre soluzioni nella vita reale anche in ambiti diversi da quello scientifico od informatico.

Per quale motivo il coding può essere tanto importante nella preparazione di un bambino?

Per rispondere a questa domanda dobbiamo per prima cosa capire quale possa essere la trasposizione del termine algoritmo nella vita reale; ognuno di noi durante il giorno compie delle azioni, più o meno semplici od abitudinarie che, insieme alle decisioni prese, creano la nostra giornata e la nostra vita e sono proprio queste azioni ad essere oggetto degli algoritmi.

Facciamo un semplice esempio: partire con un vecchio modello di utilitaria. In questo caso possiamo facilmente dedurre che le macro azioni che si compiono sono quelle di prendere le chiavi, inserirle nella serratura, aprire lo sportello, entrare in macchina, accendere la macchina e quindi partire; ognuna di queste però non è altro che un insieme di altre sottoazioni come ad esempio “girare la chiave, estrarre la chiave, tirare la maniglia, tirare a se lo sportello” oppure “inserire la chiave nel blocco di accensione, controllare il folle della macchina, girare la chiave nel blocchetto”.

Tutte queste azioni risultanti possono essere a loro volta suddivise in azioni sempre più piccole e semplici, fino ad arrivare alle azioni base (o machine code in informatica).
Per fare questo ogni singolo processo viene suddiviso in step così da ragionare passo dopo passo sul metodo migliore per trovare la soluzione ad un problema oppure raggiungere un obiettivo. La mente deve essere allenata ad un certo tipo di ragionamento e per farlo il metodo migliore è il coding.

Le lezioni di coding nella scuola primaria consentono di poter far approcciare i bambini, mediante il gioco e semplici esercizi, ad un modo di ragionare propenso all’analisi del problema al fine di poter trovare la soluzione ottimale o per lo meno quella che più ci si avvicina a quella migliore.

Detto in questo modo potrebbe sembrare una cosa semplice, ma il coding consiste nel fare esercizi ed in qualche modo testare le soluzioni trovate. Per questo motivo l’informatica può essere un ottimo strumento in quanto permette una immediata verifica di quanto fatto: se l’applicazione funziona il ragionamento è corretto, se non funziona bisogna rimettere mano all’algoritmo ed alla sua transcodifica.

Negli ultimi anni, inoltre, molte scuole stanno sperimentando, in associazione al coding ed al pensiero computazionale, anche la cosiddetta robotica educativa ovvero la costruzione di robot con fini didattici e pedagogici. Anche in questo caso viene insegnata la programmazione che sta alla base del funzionamento del robot ma tutto viene fatto sottoforma di gioco, spesso tramite esercizi di coding, in modo da rendere l’apprendimento più rapido ed alla portata dei bambini.

Possiamo quindi tranquillamente affermare che il coding ed il pensiero computazionale nel momento in cui verranno di fatto inseriti nel programma didattico delle scuole consentirà di allargare le competenze base di problem solving (attualmente utilizzate quasi esclusivamente in ambito manageriale) con un impatto benefico per tutto il sistema della società civile.

Nonostante l’Italia sia rimasta indietro rispetto ad altre nazioni per tutto ciò che riguarda l’innovazione tecnologica e l’uso del computer, si stanno facendo progressi per cercare di eliminare il digital divide.

Per far questo è fondamentale puntare sulle nuove generazioni e l’inserimento nella normale didattica di lezioni di coding è la strada migliore per insegnare agli uomini ed alle donne di domani a ragionare in modo strutturato in ogni singolo aspetto della vita quotidiana e non solo in ambito informatico.