Curricoli Digitali – “A Primer on Big & Open Dataâ€

Principi di informatica: programmazione e dati

Questo percorso è un'introduzione alla programmazione di applicazioni e alla gestione elementare dei dati. È pensato per studenti della scuola secondaria superiore e può essere svolto normalmente nel corso di due anni scolastici con un impegno didattico di un'ora per ogni settimana (quindi circa 66 ore in tutto). È stato sviluppato nell'ambito del progetto “A Primer on Big & Open Data†(Un'introduzione all'uso dei Big Data in modalità Open), finanziato dal bando MIUR del 2016 “Curricoli digitaliâ€, avviato nella seconda metà del 2020 e portato a termine nel 2022.

Il Curricolo Digitale è stato anche presentato in occasione del convegno "Didattica dell'informatica: sfide e strategie" tenutosi a Milano il 27 maggio 2022 e la relativa registrazione può essere un'utile introduzione.

Questo percorso utilizza i materiali del corso CSP di Code.org. Le versioni in italiano dei piani di lavoro delle lezioni per i docenti e tutto il materiale didattico per gli studenti sono accessibili agli utenti che accedono a questo sito con credenziali di tipologia "insegnante". Gli studenti devono invece accedere a questo sito con credenziali di tipologia "studente" e vedono solo le traduzioni delle esercitazioni interattive, che continuano a svolgere direttamente sul sito di fruizione di Code.org. Si suggerisce quindi che gli studenti aprano sul loro schermo due finestre in parallelo:

  • una per accedere al sito di fruizione di Code.org per eseguire le esercitazioni
  • un'altra finestra – anche su un altro dispositivo – per consultare la traduzione in italiano disponibile a partire dal menù ESERCIZI.

I docenti che intendono utilizzare questo materiale didattico con i loro studenti hanno a disposizione anche un dettagliato Vademecum per i docenti (è possibile scaricarlo solo se autenticati con account di tipologia "insegnante").

Piano didattico suggerito

Il percorso utilizza le unità del corso CSP di Code.org in questo ordine:

  • Unità 3 – Introduzione alla programmazione
  • Unità 5 – Creazione di applicazioni
  • Unità Post AP – App e Database (per questa unità, Code.org non ha realizzato i piani di lavoro delle lezioni, ma solamente gli esercizi)
  • Unità 4 – Big Data e privacy

Nella seguente tabella si riporta la corrispondenza tra i 66 incontri da un'ora proposti e le lezioni del materiale originale del corso CSP di Code.org.

Se hai fatto accesso con account di tipologia "insegnante", ti consigliamo di consultare anche questa tabella ampliata, che riporta indicazioni di priorità, autonomia e difficoltà dei vari materiali.

Incontri in classe
[1 ora]
Lezioni corso CSP di Code.org
PRIMO ANNO
Incontro 1Unità 3 L04 Usare comandi semplici (prima parte)
Incontro 2Unità 3 L04 Usare comandi semplici (seconda parte)
Incontro 3Unità 3 L05 Creazione di funzioni (prima parte)
Incontro 4Unità 3 L05 Creazione di funzioni (seconda parte)
Incontro 5Unità 3 L06 Funzioni e progettazione top-down (prima parte)
Incontro 6Unità 3 L06 Funzioni e progettazione top-down (seconda parte)
Incontro 7Unità 3 L07 API e utilizzo di funzioni con parametri
Incontro 8Unità 3 L08 Creare funzioni con parametri
Incontro 9Unità 3 L09 Cicli e numeri casuali
Incontro 10Unità 3 L10 Progettazione di una scena digitale
Incontro 11Unità 3 Verifica
Incontro 12Unità 5 L01 Introduzione alla programmazione guidata dagli eventi
Incontro 13Unità 5 L02 App multi-schermata
Incontro 14Unità 5 L04 Le variabili
Incontro 15Unità 5 L05 Crea un'app - "Clicca e insegui"
Incontro 16Unità 5 Verifica 1
Incontro 17Unità 5 L06 Input utente e stringhe
Incontro 18Unità 5 L07 Le istruzioni condizionali
Incontro 19Unità 5 L08 Le espressioni booleane e le istruzioni "if"
Incontro 20Unità 5 L09 L'istruzione "if-else-if" e la logica condizionale
Incontro 21Unità 5 L10 Crea un'app - "L'investigatore dei colori"
Incontro 22Unità 5 Verifica 2
Incontro 23Unità 5 L11 Cicli while
Incontro 24Unità 5 L12 Cicli e simulazioni
Incontro 25Unità 5 L13 Introduzione agli array
Incontro 26Unità 5 L14 Crea un'app - "Image Scroller"
Incontro 27Unità 5 Verifica 3
Incontro 28Unità 5 L15 Elaborazione degli array
Incontro 29Unità 5 L16 Funzioni con valori di ritorno
Incontro 30Unità 5 L17 Crea un'app - "La tela del pittore"
Incontro 31Unità 5 Verifica 4
Incontro 32Unità 5 Progetto finale sulla programmazione (prima parte)
Incontro 33Unità 5 Progetto finale sulla programmazione (seconda parte)
SECONDO ANNO
Incontro 34Unità Post AP L08 Creazione di oggetti Javascript (prima parte)
Incontro 35Unità Post AP L08 Creazione di oggetti Javascript (seconda parte)
Incontro 36Unità Post AP L09 Memorizzazione permanente dei dati (prima parte)
Incontro 37Unità Post AP L09 Memorizzazione permanente dei dati (seconda parte)
Incontro 38Unità Post AP L10 Lettura dei record (prima parte)
Incontro 39Unità Post AP L10 Lettura dei record (seconda parte)
Incontro 40Unità Post AP L11 Eliminazione dei record
Incontro 41Unità Post AP L12 Aggiornamento dei record
Incontro 42Unità Post AP L13 Importazione ed esportazione dei dati
Incontro 43Unità Post AP L14 Visualizzazione dei dati
Incontro 44Unità Post AP L15 App di esempio
Incontro 45Unità Post AP L16 Progetto finale sulla manipolazione dei dati (prima parte)
Incontro 46Unità Post AP L16 Progetto finale sulla manipolazione dei dati (seconda parte)
Incontro 47Unità 4 L01 Cosa sono i Big Data?
Incontro 48Unità 4 L02 Ricerca di tendenze con visualizzazioni
Incontro 49Unità 4 L03 Verifica attentamente le tue assunzioni
Incontro 50Unità 4 L04 Esercitazione - Innovazioni guidate da dati
Incontro 51Unità 4 L05 Identificare le persone tramite dati
Incontro 52Unità 4 L06 Il costo di ciò che è gratis
Incontro 53Unità 4 L07 Crittografia semplice (prima parte)
Incontro 54Unità 4 L07 Crittografia semplice (seconda parte)
Incontro 55Unità 4 L08 La crittografia con chiavi e password (prima parte)
Incontro 56Unità 4 L08 La crittografia con chiavi e password (seconda parte)
Incontro 57Unità 4 L09 La crittografia a chiave pubblica (prima parte)
Incontro 58Unità 4 L09 La crittografia a chiave pubblica (seconda parte)
Incontro 59Unità 4 L10 Esercitazione - Crimini informatici
Incontro 60Unità 4 Verifica
Incontro 61Unità 4 Introduzione agli Open Data
Incontro 62Unità 4 Progetto finale sugli Open Data (prima parte)
Incontro 63Unità 4 Progetto finale sugli Open Data (seconda parte)
Incontro 64Unità 4 Progetto finale sugli Open Data (terza parte)
Incontro 65Unità 4 Progetto finale sugli Open Data (quarta parte)
Incontro 66Unità 4 Progetto finale sugli Open Data (quinta parte)

N.B. – Per completezza osserviamo che non tutte le lezioni contenute nelle unità di Code.org usate per questo percorso sono state adattate. Questo è l'elenco di quelle non adattate:

  • Unità 3 – Lezione 1 –La necessità dei linguaggi di programmazione
  • Unità 3 – Lezione 2 –La necessità degli algoritmi
  • Unità 3 – Lezione 3 –La creatività negli algoritmi
  • Unità 5 – Lezione 3 – Creazione di un'applicazione multi-schermata

Per segnalare eventuali problematiche di traduzione del materiale didattico, contattare qui il servizio di supporto.


Ringraziamenti

Si ringraziano per la progettazione e realizzazione del Curriculo Didattico (in ordine alfabetico):

Giuseppe Bizzarri (Liceo Statale “Marie Curieâ€, Giulianova)
Pietro Ciammaricone (Università dell'Aquila)
Isabella Corradini (Centro Ricerche Themis)
Isaley Corsa (Centro Ricerche Themis)
Stefano Florio (Università dell'Aquila)
Luca Forlizzi (Università dell'Aquila)
Francesco Lacchia (CINI – Consorzio Interuniversitario Nazionale per l'Informatica)
Emanuela Merelli (Università di Camerino)
Enrico Nardelli (CINI – Consorzio Interuniversitario Nazionale per l'Informatica)
Riccardo Paci (Loccioni)
Gianluca Rea (Università dell'Aquila)
Mario Rossano (CINI – Consorzio Interuniversitario Nazionale per l'Informatica)
Michele Russo (Università di Camerino)

Si ringraziano per la sperimentazione in aula del Curriculo Didattico (in ordine alfabetico):

Luca Basteris – Liceo Classico e Scientifico Statale "Silvio Pellico - Giuseppe Peano", Cuneo
Piergiorgio Bastianoni – Liceo Statale “Enrico Mediâ€, Senigallia (AN)
Federico Beghini – Istituto Superiore Statale "Carlo Anti" - Villafranca (VR)
Marco Bellaspica – Liceo Statale “Marie Curieâ€, Giulianova (TE)
Giuseppe Bizzarri – Liceo Statale “Marie Curieâ€, Giulianova (TE)
Fulvio Brancato – Istituto "P. L. Nervi", Lentini (SR)
Francesco Cimini – Liceo Statale “Marie Curieâ€, Giulianova (TE)
Angiolino Colasante – Istituto di Istruzione Superiore "Umberto Pomilio", Chieti
Lara Di Pietrantonio – Istituto di Istruzione Superiore "Umberto Pomilio", Chieti
Francisco Gambarte – Liceo Statale “Enrico Mediâ€, Senigallia (AN)
Daniela Liberati – Istituto di Istruzione Superiore “Luigi di Savoiaâ€, Chieti
Federica Longo – Istituto Professionale di Stato per i Servizi Sociali "F. L. Morvillo Falcone", Brindisi
Angelo Morreale – Istituto d'Istruzione Superiore "Marco Polo", Colico (LC)
Manuela Paganini – Istituto di Istruzione Superiore “Luigi di Savoiaâ€, Chieti
Francesco Picca – Istituto Istruzione Secondaria Superiore "Augusto Righi", Taranto
Andrea Primavera – Liceo Statale “Enrico Mediâ€, Senigallia (AN)
Paolo Scapin – Istituto di Istruzione "Martino Martini", Mezzolombardo (TN)
Pasquale Tessitore – Istituto Statale di Istruzione Superiore "Enrico Caruso", Napoli
Laura Zucchi – Liceo Scientifico Statale "Galileo Galilei", Trieste