Coding L'Informatica nella scuola Linguaggi - tools - fondamenti - L'informatica e il coding sono gioco, creatività, collaborazione, crescita e ...
←
→
Trascrizione del contenuto della pagina
Se il tuo browser non visualizza correttamente la pagina, ti preghiamo di leggere il contenuto della pagina quaggiù
L’Informatica nella scuola Linguaggi – tools - fondamenti Coding L’informatica e il coding sono gioco, creatività, collaborazione, crescita e sviluppo delle capacità logiche e decisionali.
Perché l’informatica adesso Nuova Scuola: Introdurre l’informatica dalla primaria • Modello Inglese: Dal 2013 «England will become the first country in the world to mandate computer programming in primary and secondary schools” fonte Daily Telegragph 2013 • Nel 2014, Barack Obama è passato alla storia come il primo presidente che sa programmare un computer • Nazioni attive nell’insegnamento della programmazione già dalla primaria: Inghilterra, Estonia, Repubblica Ceca, Israele, Cina, Brasile.
In Italia… Il documento la Buona Scuola contiene un intero capitolo, il quarto, dedicato alle competenze che secondo il governo e il ministro la scuola dovrebbe avere. Le attuali scelte guardano in tre diverse direzioni: l’alfabetizzazione digitale fin dalla scuola primaria tramite il coding, un programma di “digital makers” per i ragazzi delle scuole superiori, e La formazione degli insegnanti.
Perché l’informatica adesso • Iniziative nei vari paesi sono generalmente individuali • Esistono oggi strumenti validi per portare il codice nella scuola • Possiamo essere tra le prime nazioni che capiscono questa esigenza. -> #Labuonascuola (governo Renzi)
Perché Programmare - 1 I metodi caratteristici e gli strumenti intellettuali che costituiscono la base del “pensiero computazionale ” hanno un loro posto naturale nell’educazione degli studenti del 21-mo secolo. L’insegnamento dell’informatica nella scuola ha le seguenti specificità: favorisce lo sviluppo della creatività - per la molteplicità di modi che offre per affrontare e risolvere un problema;
Perché Programmare - 2 è costruttiva - la progettazione di algoritmi è un’attività ingegneristica che produce risultati visibili (anche se nel mondo virtuale) aiuta a padroneggiare la complessità imparare a risolvere problemi informatici aiuta a risolvere problemi complessi in altre aree sviluppa il ragionamento accurato e preciso - la scrittura di programmi che funzionano bene richiede l’esattezza in ogni dettaglio
Perché Programmare - 3 dal punto di vista pratico l’informatica è un’abilità utile per gli studenti perché qualunque lavoro svolgeranno in futuro la componente digitale sarà importante; dal punto di vista formativo l’informatica è un validissimo strumento intellettuale per sviluppare abilità concettuali essenziali che saranno utili agli studenti, qualunque sia il loro sviluppo professionale.
I linguaggi e le persone • Permettono alle persone di comunicare • Più linguaggi conosciamo, maggiore è la possibilità di interagire con persone di altre lingue
I linguaggi e le cose • Oggi siamo circondati da oggetti digitali in grado di comunicare con noi e di fare (più o meno) quello che gli chiediamo di eseguire. • Oggetti in grado di parlare e rispondere in maniera intelligente alle nostre richieste. • Grazie al ruolo principale del microprocessore siamo in grado di comunicare con gli oggetti attraverso istruzioni di un linguaggio di programmazione.
Consumatori - Accediamo alle cose Un esempio sono i dispositivi mobili, porta di accesso verso milioni di applicazioni (App). Le app, rappresentano i nostri oggetti digitali di utilità quotidiana, attraverso i quali siamo in grado di lavorare, giocare, comunicare con il prossimo, di svolgere una vita sociale, studiare. In genere utilizziamo le applicazioni create da altri. In questa ottica siamo utenti utilizzatori e in ottica di mercato dei consumatori.
Produttori – Programmiamo le cose • Significa iniziare a pensare, ideare! • Ciascun oggetto è programmabile con un suo linguaggio. Ecco che abbiamo bisogno di conoscere il «linguaggio delle cose» - Il linguaggio di programmazione • Scrivere un insieme di istruzioni (programma) in un linguaggio di programmazione in grado di far svolgere alle app qualcosa di utile o di divertente. • Tutti gli oggetti digitali che ci circondano possono essere programmati. • Attiva la creatività e il pensiero computazionale
Il Pensiero Computazionale • Computational Thinking is the thought processes involved in formulating problems and their solutions so that the solutions are represented in a form that can be effectively carried out by an information-processing agent. — Cuny, Snyder, Wing Partendo dal problema o idea, il pensiero computazionale è la capacità di immaginare e descrivere un procedimento costruttivo e algoritmico che porti ad una soluzione semplice, esaustiva e replicabile in situazioni simili e che possa essere spiegata a qualcun altro. Esempio: ricetta
Chi può imparare a programmare oggi: Tutti! • La cosa interessante e che oggi tutti possono iniziare ad apprendere i rudimenti di programmazione sin dalla giovane età: • Bambini • Giovani • Adulti (Insegnanti, Genitori, Nonni) possono imparare a programmare!
Didattica della programmazione: ieri e oggi
Didattica della programmazione oggi: Cosa è cambiato (1) • Perché è più semplice apprendere la programmazione? •L’uso di scenari narrativo visuale. Chi apprende è invitato ad animare scenari come in un palcoscenico: animare personaggi, creare storie interattive, fumetti • I linguaggi visuali: sono il giusto punto di partenza per apprendere i rudimenti di programmazione già dai primi anni di età • L’utilizzo della metafora dei «tasselli di un puzzle» • le istruzioni sono «tasselli di un puzzle» si compongono tra loro per dar forma al programma e rendere visivamente più comprensibile la combinazione delle istruzioni.
Didattica della programmazione oggi: Cosa è cambiato (2) •Le immagini e i tasselli formano i comandi del linguaggio formale consentono ai più giovani di avvicinarsi alla programmazione.
Concetti Computazionali Concetto Descrizione Sequenza Una serie di passaggi in una azione Loops Eseguire la stessa sequenza più volte Parallelismo Far accadere le cose contemporaneamente Eventi Una causa determina un effetto Condizioni Prendere decisioni in base alle condizioni Operatori Espressioni matematiche e logiche Dati Memorizzare, recuperare ed aggiornare valori
Pratiche Computazionali Pratica Descrizione Produrre per iterazioni ed Sviluppare una parte per volta, provare e incrementi svilupparne ancora Testare e rimuovere gli Essere sicuri che le cose funzionino, cercare e errori risolvere gli errori Riciclare e mescolare Creare qualcosa partendo da materiale creato da altri Astrarre e rendere Creare qualcosa di grande mettendo insieme modulare una collezione di piccole parti
I tools a livello internazionale • Hopscotch is the free iPad app for upper elementary and above. • Scratch is a programming game that can be downloaded or used on the Web and is supported by MIT. • Lightbot has a version on just about any platform and even has an online one-hour version. This puzzle game has a free version which lasts an hour but sells full versions on iTunes and Google Play. It teaches planning, testing, debugging, procedures, and loops. 20
I tools a livello internazionale - 2 •Alice is another popular platform with a unique storytelling aspect. You can use it to create a game, tell a story, or make an animated video. •Minecraft.edu is an option that lets you install and use Minecraft in the classroom. While this does require some purchase and setup, Minecraft seems to be gaining in popularity among educators as an in-house, 3D world- programming environment that kids love.
Ambienti per la scuola primaria ScratchJr • Sono ambienti interattivi in grado di offrire percorsi completi anche via Web per l’apprendimento della programmazione anche attraverso il gioco • Usano le nuove metafore di programmazione • Tassello di comando • Immagine per richiamare l’azione o il comando • Il percorso di apprendimento è incrementale e organizzato a passi. Ciascun passo introduce concetti nuovi o rinforza quelli precedentemente introdotti. Sono accessibili via web o tramite app per dispositivi mobili Code.org Hopscotch
Code.org • URL: http://www.code.org • Coinvolgimento: Angry Birds, Anna ed Elsa ed altri personaggi • Età: 7-16 fanno da sfondo alle attività di programmazione • Gratuita • Pedagogia: Gli studenti procedono per passi • Accesso: via Web acquisiscono velocemente i concetti di programmazione che si arricchiscono via via che si avanza. • La programmazione avviene attraverso la composizione di blocchi di istruzione in grado di risolvere uno o più quesiti di programmazione.
Code.org
USA: Il progetto Code.Org http://code.org/
Italia: code.org in italiano http://studio.code.org/ 26
Italia: Il progetto Programma il Futuro http://www.programmailfuturo.it/
Italia: Il progetto Programma il Futuro http://www.programmailfuturo.it/ Il MIUR, in collaborazione con il CINI – Consorzio Interuniversitario Nazionale per l’Informatica, ha avviato questa iniziativa (che fa parte del programma #labuonascuola) con l’obiettivo di fornire alle scuole una serie di strumenti semplici, divertenti e facilmente accessibili per formare gli studenti ai concetti di base dell'informatica. 28
Italia: Il progetto Programma il Futuro • Ci sono diversi programmi di formazione a seconda della fascia di età e degli obiettivi di apprendimento • Lezioni Interattive disponibili via web per familiarizzare con lo strumento • Una modalità base (denominata "L'Ora del Codice ") Il labirinto
Articolazione PIF • Una modalità avanzata (denominata "Corso Introduttivo ") con ulteriori 9 lezioni di approfondimento: 1. lezione 5: L'artista 2. lezione 7: L'artista 2 3. lezione 9: La contadina 4. lezione 11: L'artista 3 5. lezione 13: La contadina 2 6. lezione 15: L'artista 4 7. lezione 17: La contadina 3 8. lezione 19: L'artista 5 9. lezione 20: Conclusione
In Italia, nei prossimi 3 anni… “Programma il Futuro” le varie classi Al momento il progetto è in fase iscritte alla piattaforma stanno di sperimentazione e nel prossimo raccontando le proprie esperienze nello triennio entrerà a regime svolgimento dell’attività inerente al (circolare 29/09/2014). progetto.
Kodu Game Lab • Un ambiente di programmazione per la creazioni di mondi virtuali dove le • URL: istruzioni non si esprimono in un linguaggio testuale ma visuale http://www.kodugamelab. • La programmazione oltre che con la tastiera e com/ mouse avviene tramite l’ausilio di un controller • Età: 6 - 13 Xbox o il mouse • Gratuita • Accesso: Applicazione Windows, App for Windows store
Edit Mode L’ambiente di kodu Costruire gli elementi ambientali del mondo (terreno, laghi, montagne, muri, strade etc) Inserire i personaggi e gli oggetti da programmare Creazione, salvare un nuovo mondo
La programmazione in Kodu La modalità di programmazione è visuale: Si utilizzano I tasselli e si compongono come un puzzle per formulare le istruzioni di un programma Una istruzione ha la forma “When - Do”
L’ambiente di Kodu Play mode • Tale modalità consente di utilizzare il sistema e testare le funzionalità programmate.
RoboMind Academy • URL: • Coinvolgimento: Attività https://www.robomindacademy.com organizzata in scenari di programmazione dove il robot • Età: 7-16 deve essere programmato per svolgere attività • Gratuiti i livelli base • Pedagogia: Gli studenti • Accesso: via Web, tablet, desktop procedono per passi acquisiscono velocemente i • Costi annuali: concetti di programmazione che • 5 Euro (studente) si arricchiscono via via che si • 10 euro (postazione) avanza. • 100 (docente e accesso online/offline ad • La programmazione avviene una postazione accessibile da qualsiasi attraverso la composizione di studente) istruzioni testuali.
Ambienti per la scuola secondaria • Sono ambienti interattivi in grado di offrire percorsi completi per l’apprendimento di linguaggi di programmazione. • Si scrive il codice in un editor. • Programmazione web client/server side, mobile • Python Javascript, HTML & CSS, PHP Ruby SQL • Alcuni ambienti organizzano i percorsi didattici in passi. Ciascun passo introduce concetti nuovi o rinforza quelli precedentemente introdotti. Altri utilizzano tutorial con esempi di applicazioni. • Sono accessibili via web o tramite app per dispositivi mobili
Codeacademy • URL: http://www.codecademy.com/ • Coinvolgimento: Ciascuno studente è coinvolto in esercitazioni dal vivo che consistono nella scrittura di codice. • Età: 12-18 • Pedagogia: Gli studenti procedono per passi acquisiscono velocemente i • Gratuita concetti di programmazione programmando gli scenari richiesti • Accesso: via Web nello step. Contestualmente ricevono feedback in tempo reale sul codice che viene scritto sull’editor. • La programmazione avviene attraverso la composizione di istruzioni nel linguaggio oggetto di studio e si avanza risolvendo uno o più quesiti di programmazione proposti nello step.
Codeacademy
Mit App Inventor 2 • URL: http://appinventor.mit.edu/ • Coinvolgimento: Ciascuno studente accede con account google e • Età: da 11+ dispone di un ambiente visuale di programmazione per App android. • Gratuita • Pedagogia: Gli studenti procedono per passi acquisiscono velocemente • Accesso: via Web con account i concetti di programmazione programmando gli scenari richiesti Google nello step. Contestualmente ricevono feedback in tempo reale sul codice che viene scritto sull’editor. • La programmazione avviene attraverso la composizione di «tasselli» istruzioni. Si dispone di un set di oggetti in grado di accedere a diversi componenti del dispositivo.
SqlZoo • Coinvolgimento: Ciascuno studente è coinvolto in 10 • URL: http://sqlzoo.net tutorial sul linguaggio SQL per • Età: 12-18+ la gestione dei database • Pedagogia: Gli studenti • Gratuita procedono per passi • Accesso: via Web acquisiscono velocemente i concetti di formulazione delle • Tutorial Interattivo su SQL query al database. • Le azioni vengono effettuate su database predisposti per ciascun tutorial.
Codeavengers • Coinvolgimento: Ciascuno studente è coinvolto in esercitazioni dal vivo che consistono nella scrittura di codice. • URL: http://www.codeavengers.com/ • Pedagogia: Gli studenti procedono per passi acquisiscono velocemente i • Età: 12-18+ concetti di programmazione programmando gli scenari richiesti • Gratuita i primi livelli nello step. Contestualmente ricevono feedback in tempo reale sul codice che viene scritto sull’editor. • Accesso: via Web • La programmazione avviene attraverso la composizione di istruzioni nel • 2 percorsi: Sviluppo web e Computer linguaggio oggetto di studio e si avanza programming (costruire apps e risolvendo uno o più quesiti di programmazione proposti nello step. giochi)
Perché occorre insegnare la programmazione? La situazione europea
Situazione nelle scuole Europee
Didattica della programmazione in Europa
E l’Italia? • Il MIUR ha avviato un progetto in collaborazione con il CINI – Consorzio Interuniversitario Nazionale per l’Informatica, Programma il Futuro (che fa parte del programma #labuonascuola). • Possono partecipare tutti, in particolare insegnanti e studenti delle scuole primarie possono registrarsi attraverso il sito di supporto del miur e creare gruppi classe per l’apprendimento della programmazione attraverso il sito Code.org • Rappresenta l’iniziativa italiana all’ora di codice
Cosa può fare la scuola • Alcune idee • Attrezzarsi di risorse per la didattica della programmazione http://codeweek.eu/resources/ • Laboratori di programmazione • Gare di programmazione • Hackathon (eventi che riuniscono esperti e giovani sviluppatori finalizzati alla creazione di idee in cui il software gioca un ruolo chiave nella risoluzione di un problema reale. • Proporre una iniziativa alla settimana europea CodeWeek ……
Programmare? • «Guarda sotto la superficie: non lasciarti sfuggire la qualità o il valore intrinseco delle cose». (Cesare Marco Aurelio Antonino Augusto, Pensieri; VI, 3) Referente regionale Consiglio Nazionale delle Ricerche Istituto per le TecnologieDidattiche Giuseppe Chiazzese Via Ugo La Malfa153 90146 Palermo Tel +39 091 6809204 Fax: +39 091 6809239 http://www.itd.cnr.it Skype: Skypezze
Puoi anche leggere