Code.org e App Lab
Cos’è
Code.org è il sito web dell’omonima organizzazione non-profit che propone lezioni online di programmazione, percorsi e sfide rivolti a studenti e insegnanti. Le lezioni consistono in brevi video da guardare, istruzioni da leggere e piccole sfide di programmazione da superare. Il movimento nasce negli Stati Uniti ed è oggi il più famoso a livello mondiale: organizza la “Ora del Codice” e la “settimana del codice”, che cadono nei primi giorni di dicembre, e mette a disposizione in modo libero, gratuito e tradotto in molte lingue decine di percorsi e attività da seguire in classe o singolarmente.
La piattaforma è ispirata ai blocchi di programmazione di Scratch: blocchi colorati che si assemblano come i mattoncini dei giochi da costruzione e rendono la programmazione simile alla costruzione di un puzzle. Tecnicamente, molti percorsi di Code.org sono costruiti su Blockly, il framework gratuito e multipiattaforma per la programmazione visuale a blocchi sviluppato dal gruppo Developers di Google; lo stesso framework è alla base di altri strumenti di coding per ragazzi (ozobot, micro:bit, ecc.). Un aspetto didattico vincente di Blockly è la possibilità di vedere sempre in tempo reale il “vero” codice testuale (per esempio in JavaScript) che corrisponde ai blocchi agganciati sullo schermo.
App Lab è una sezione interna di Code.org: uno strumento di programmazione online pensato per insegnare i primi rudimenti della programmazione testuale partendo dalla programmazione a blocchi. È più potente del semplice “Play Lab”: permette di costruire vere e proprie applicazioni con un’interfaccia grafica (pulsanti, menu, elementi pronti all’uso), di usare strutture di dati più complesse rispetto a Scratch e di passare in qualsiasi momento dai blocchi (“Mostra i blocchi”) al codice JavaScript (“Mostra il testo”). A differenza dei percorsi classici di Code.org, i blocchi di App Lab non sono tradotti in italiano: restano in inglese.
A cosa serve in classe
- Avviare al coding senza prerequisiti: i percorsi guidati (es. il corso “Artista”, o i percorsi tematici legati a videogiochi e film famosi) correggono automaticamente gli esercizi e mostrano la barra di avanzamento, così l’alunno procede in autonomia e riceve un riscontro immediato.
- Costruire i concetti base della programmazione: sequenza, ciclo (blocco “ripeti…”), condizione e funzione vengono introdotti in modo progressivo e concreto (in “Artista”, per esempio, la funzione “disegna un fiore”).
- Passare gradualmente dal blocco al testo: con la funzione “Mostra il codice” / “Mostra il testo” gli studenti vedono che ai blocchi corrispondono istruzioni JavaScript reali, ponendo un ponte verso la programmazione testuale.
- Realizzare prodotti veri: con App Lab la classe progetta piccole app con interfaccia grafica e le condivide tramite link o le incorpora in un sito.
- Partecipare a iniziative collettive: la “Ora del Codice” e la Europe Code Week (in ottobre) offrono occasioni per coinvolgere tutta la scuola, anche le famiglie, in almeno un’ora di attività di coding. (proposta progettuale) Sono buoni “agganci” di calendario per inserire un’unità di coding nella programmazione annuale.
Come iniziare (setup minimo)
- Strumenti: serve solo un browser web e una connessione a Internet (alcune parti di informatica unplugged, dedicate ai più piccoli, funzionano anche senza computer). Code.org si usa sia da computer sia da tablet; per il tablet è consigliabile uno schermo abbastanza grande e un processore veloce.
- Provare senza registrarsi: molte attività (per esempio il corso “Artista”, URL
studio.code.org/s/artist) si possono svolgere senza account. È utile provarle prima per capire come funziona la piattaforma. - Registrarsi (consigliato per la classe): dalla home
https://code.org/si clicca “Accedi” e poi “Iscriviti”. L’iscrizione consente il salvataggio automatico dei progetti e la condivisione. Se le attività si svolgono con la classe, l’insegnante predispone prima gli account o il gruppo classe. (proposta progettuale) Per la secondaria di I grado è preferibile creare un account docente e gestire le sezioni/classi, evitando registrazioni individuali con email personali degli alunni. - Aprire App Lab: dopo il login si va su
https://code.org/educate/applabe si clicca “Make an app”; ci si accerta di essere in modalità “Codice” e si comincia. Per un nuovo progetto si usa “Nuovo” nella barra in alto.
Esempi d’uso didattico
- Disegnare con il corso “Artista” (classe prima): partendo da pochi blocchi (“vai avanti di 100 pixel”, “gira a destra/sinistra di 90 gradi”) gli studenti disegnano un quadrato, poi figure più complesse, scoprendo il blocco “ripeti…” e il concetto di funzione. Il pulsante “Esegui”/“Ricomincia” e il cursore di velocità rendono visibile l’effetto di ogni modifica.
- Prima app con Play Lab (classe prima/seconda): si comanda un personaggio sullo schermo (es. “imposta il personaggio come una strega”) con il blocco di avvio “quando si clicca su Esegui”, e si condivide il risultato con un link.
- App con interfaccia in App Lab (classe seconda/terza): si costruisce una piccola applicazione in stile smartphone (uno “screen” che riproduce un display), per esempio una linea disegnata con la categoria “Turtle” (la tartaruga, erede del Logo) usando il sistema di coordinate dello screen. Strumenti integrati aiutano a individuare i bug. (proposta progettuale) Un’idea di prodotto finale: un’app-quiz a tre domande o un mini-gioco con punteggio, da presentare ai compagni.
- Dal blocco al testo (classe terza): si realizza lo stesso programma prima a blocchi e poi visualizzandolo in JavaScript con “Mostra il testo”, per riflettere su che cosa cambia e che cosa resta uguale.
Costi / account / privacy
- Costo: Code.org e App Lab sono gratuiti.
- Account: l’uso di molte attività non richiede registrazione; l’account serve per salvare e condividere i progetti. (proposta progettuale) Per una classe della secondaria di I grado, dove gli alunni sono in gran parte minori di 14 anni, è opportuno usare account gestiti dal docente o dalla scuola e informare le famiglie, evitando l’iscrizione con dati personali degli studenti. La gestione dei dati e dei consensi va verificata con il referente privacy dell’istituto secondo l’informativa vigente della piattaforma (dato non desumibile dai testi — da verificare sul sito ufficiale).
- Connessione: richiede accesso a Internet (salvo le attività unplugged).
Limiti e rischi educativi
- Dipendenza dalla rete: senza connessione la maggior parte delle attività non funziona; va previsto un piano B in caso di problemi di banda in laboratorio. (proposta progettuale)
- Lingua: i percorsi principali sono tradotti, ma i blocchi e l’ambiente di App Lab restano in inglese; questo può creare difficoltà di lettura ad alcuni alunni. (proposta progettuale)
- Esercizi “a soluzione chiusa”: i percorsi guidati con correzione automatica favoriscono l’autonomia ma rischiano di diventare meccanici; vanno alternati a momenti di progettazione aperta (Play Lab, App Lab) dove l’alunno decide il prodotto. (proposta progettuale)
- Sovrastima del “saper trascinare blocchi”: completare le sfide non equivale a comprendere i concetti; serve far verbalizzare la strategia e i tentativi. (proposta progettuale)
Adattamenti inclusivi
- Interfaccia bimodale: la possibilità di partire dai blocchi e mostrare/nascondere il codice testuale consente di calibrare la sfida sul singolo alunno. (proposta progettuale)
- Riscontro immediato e barra di avanzamento: il feedback automatico e la possibilità di “saltare” o ripetere un esercizio aiutano gli alunni con ritmi di apprendimento diversi a procedere senza ansia da prestazione. (proposta progettuale)
- Coppie e tutoraggio tra pari: lavorare in coppia su un solo dispositivo (pair programming) supporta chi ha difficoltà di lettura o di organizzazione. (proposta progettuale)
- Sottotitoli e video: la videoteca di App Lab offre brevi video con sottotitoli traducibili in italiano, utili per chi apprende meglio per via visiva.
- Ponte con l’unplugged: per gli alunni più fragili si può partire dalle attività di coding senza computer e poi trasferire la stessa logica su Code.org. (proposta progettuale)
Attività che lo usano
- attivita-labirinto-scratch — la logica a blocchi (sequenza, cicli, condizioni) è la stessa che gli alunni ritrovano nei percorsi di Code.org.
- (proposta progettuale) Mini-progetto “la mia prima app” con App Lab come prodotto finale di un’unità sul coding (da formalizzare come scheda attività dedicata).
Pagine collegate
- coding-e-programmazione-a-blocchi
- scratch
- pensiero-computazionale
- debugging-come-strategia
- coding-unplugged
Fonti
- Technologica — Volume Coding (Romiti), DeA Scuola (pp. 11-14, 67-73)
- Progettare il Futuro — Informatica e coding (Conti), Minerva Scuola (pp. 23-24)
- Tecnomedia DIGIT Arduino — Laboratorio, Lattes (pp. 202-204)
- L’aula di tecnologia (Conti), Minerva Scuola — riferimento all’iniziativa “L’ora del codice”