Coding unplugged

Definizione breve

Il coding unplugged è l’insieme delle attività di programmazione che si svolgono senza l’uso del computer. Come ricordano i libri di testo, esistono molti strumenti per imparare il coding: “alcuni richiedono l’uso di un computer collegato a Internet, altri, detti unplugged, non necessitano di apparecchiature tecnologiche” (Presente e Futuro, p.430). Anche piattaforme online come Code.org dedicano alcune sezioni “all’informatica unplugged (senza computer)” (Technologica – Volume Coding, p.12).

L’obiettivo non è rinunciare alla tecnologia, ma far emergere i concetti del pensiero computazionale — sequenza, iterazione, selezione, algoritmo — attraverso il corpo, le carte, la carta quadrettata e i giochi di gruppo, prima e accanto all’uso degli strumenti digitali.

Quando ha senso usarla

  • All’inizio di un percorso di coding, per costruire i concetti di base (algoritmo, sequenza di istruzioni, ciclo) prima di sedersi davanti a Scratch o a un robot.
  • Quando mancano i dispositivi o il laboratorio informatico non è disponibile: un mazzo di carte e una scacchiera bastano per fare programmazione.
  • Per consolidare un concetto difficile già incontrato al computer (per esempio la differenza tra “se… allora…” e “se… allora… altrimenti”), riportandolo a un gioco fisico.
  • Per coinvolgere tutta la classe in attività cooperative, dove ognuno interpreta un ruolo (chi dà le istruzioni, chi le esegue come “robot”).

Come si struttura (fasi)

(proposta progettuale) — Una sequenza tipica di un’attività unplugged:

  1. Problema — si presenta una situazione concreta da risolvere (far arrivare una pedina a una casella, ordinare degli oggetti, disegnare una figura su griglia).
  2. Algoritmo — la classe individua “i passaggi logici che portano alla soluzione”, scomponendo eventualmente il problema in sotto-problemi (cfr. Presente e Futuro, p.430).
  3. Codifica — i passaggi si traducono in istruzioni concrete: carte-comando, frecce, simboli, caselle da colorare.
  4. Esecuzione — un compagno (o l’insegnante) esegue le istruzioni alla lettera, “come una macchina”, senza interpretarle.
  5. Verifica e debugging — si confronta il risultato con l’obiettivo; se c’è un errore, si individua l’istruzione sbagliata e si corregge. È la fase in cui si “mette alla prova” l’algoritmo “alla ricerca di eventuali errori che devono essere corretti” (Presente e Futuro, p.430).

Esempio in classe

Cody Roby (programmazione senza computer). Le guide descrivono Cody Roby come “uno strumento con il quale si possono inventare divertenti giochi di programmazione senza il computer” (Guida Presente e Futuro, p.188). Il kit è “composto da una scacchiera di 25 mattonelle, 32 carte di base, 6 carte speciali e alcuni segnaposto” (Guida Presente e Futuro, p.188).

Svolgimento tipico in classe:

  • Si dispone la scacchiera; ogni gruppo riceve le carte di base, che servono a far spostare Roby “in avanti, a destra o a sinistra”.
  • Uno studente è Cody (il programmatore): compone una sequenza di carte per portare la pedina Roby dalla casella di partenza a quella di arrivo.
  • Un altro studente è Roby (il robot/la pedina): esegue le carte una alla volta, nell’ordine esatto, senza pensare.
  • Se Roby non arriva a destinazione, la sequenza va corretta: si pratica il debugging.

Variante con carta quadrettata (pixel art / disegno su griglia): si dà l’istruzione di colorare determinate caselle di una griglia per ottenere un’immagine, mostrando come un disegno digitale sia in fondo una sequenza di comandi su una matrice di pixel (collegamento con la pixel art presente nei testi di disegno).

Ruolo del docente / degli studenti

(proposta progettuale)

  • Docente: imposta il problema, fornisce i materiali (carte, griglie, scacchiera), fa da arbitro e da “esecutore letterale” delle istruzioni per mostrare che la macchina non interpreta; guida la riflessione finale sugli errori.
  • Studenti: lavorano in coppia o piccolo gruppo alternandosi nei ruoli di programmatore (chi scrive la sequenza) ed esecutore (chi la esegue). Imparano a scrivere istruzioni non ambigue e a riconoscere dove sta l’errore.

Vantaggi e limiti

Vantaggi

  • Non richiede dispositivi né connessione: accessibile ovunque (coerente con la definizione di unplugged, Presente e Futuro p.430).
  • Rende visibili e “fisici” concetti astratti (sequenza, ciclo, selezione).
  • Forte componente cooperativa e ludica; alta partecipazione.
  • Ottima propedeutica al passaggio verso Scratch, micro:bit o i robot.

Limiti (proposta progettuale)

  • Non sostituisce la pratica al computer: va integrata con attività “plugged”.
  • Senza una buona regia rischia di restare gioco fine a sé stesso, perdendo il collegamento con i concetti.
  • Richiede materiali preparati (carte, griglie stampate, scacchiera).

Adattamenti inclusivi

(proposta progettuale)

  • Multisensorialità: le attività con il corpo, le carte e i colori offrono più canali di accesso (visivo, motorio, manipolativo), utili per studenti con DSA o BES.
  • Gradualità: partire con percorsi cortissimi (2-3 caselle) e aumentare la lunghezza solo quando il gruppo è pronto.
  • Ruoli flessibili: chi è in difficoltà nella codifica può iniziare dal ruolo di esecutore; chi ha bisogno di sfide può progettare percorsi con ostacoli o carte speciali.
  • Carte-comando con icone e colori (verde/giallo/rosso, come nel kit di base) per ridurre il carico di lettura.
  • Tutoring tra pari all’interno della coppia programmatore-esecutore.

Pagine collegate

Fonti

  • Presente e Futuro (Castronovo, Galli, Novembri, Pavolini — Fabbri/Rizzoli), p.430-431
  • Technologica – Volume Coding (Corinna Romiti — DeA Scuola), p.12
  • Guida Presente e Futuro (Rizzoli/Fablab), p.187-188 (kit Cody Roby, esercizi sul coding unplugged)
  • Per le sezioni “Come si struttura”, “Ruolo del docente/studenti”, “Vantaggi e limiti” (parziale) e “Adattamenti inclusivi”: nessuna fonte diretta, contenuti come proposta progettuale da validare.