Non poter tornare indietro

Lego blocks close up

Lego blocks close up

Quando le persone della mia generazione hanno imparato ad usare il computer, molto spesso con il programma per scrivere, ricordo che uno degli aspetti rassicuranti era la possibilità di rimediare agli errori: “Se sbagli qualcosa non preoccuparti: con la funziona torna indietro ritorni alla situazione di prima”.

Lego blocks close up

E così tutti ci siamo buttati a fare le nostre prove e i nostri esperimenti, tanto, se non va bene, torno indietro!

Lo stesso capita quando si lavora con i file: “Non preoccuparti se per caso butti qualcosa, ci puoi sempre ripensare e lo ripeschi dal cestino!”.

Questa possibilità si è talmente radicata nel nostro modo di lavorare che normalmente la diamo per scontata in qualsiasi operazione facciamo con il computer. Mi capita di toccarlo con mano quando parlo del coding e faccio vedere e pasticciare altri insegnanti con Scratch.

Una delle domande che arrivano quasi subito è: “Ma se sbaglio come faccio a tornare indietro?”, oppure “Ho sbagliato, come faccio a tornare a come era prima (dell’errore)?”

Di solito rispondo con una metafora: Quando si gioca con il Lego si può tornare indietro? Se, per qualche motivo, quello che hai costruito si rompe o se hai cambiato idea e vuoi cambiare, non ti resta che rifare tutto da capo oppure tornare indietro distruggendo la parte che serve per tornare al punto da cui vuoi cambiare. E poi, a me capita quasi sempre, mentre ricostruisci, cambi qualcosa, lo migliori, lo sistemi perchè prima era venuto male. Mentre stai costruendo, cominci a stare più attento a quello che fai, e, se devi cambiare qualcosa, prima di disfare e rifare ci pensi due volte.

Mi sono reso con che il coding funziona allo stesso modo. Cominci pian piano a costruire il tuo progetto, metti in fila i blocchi di comandi (blocchi di testo o blocchi visuali alla scratch) e cominci pian piano a verificare se effettivamente funziona quello che hai solo immaginato. E se devi fare qualche operazione rischiosa impari un metodo di lavoro che ti permette di tornare indietro, ad esempio facendo una copia del tuo lavoro e lavorando su quella, così che se va storto qualcosa butti il tuo esperimento e hai di nuovo il codice che funziona. Cominci ad essere un po’ più rigoroso e, prima di muoverti, impari ad analizzare il problema e ad ipotizzare possibili soluzioni prima di metterle in pratica.

Questa mi sembra una prima lezione importante che si impara quando cominci a lavorare con il codice: immaginare i propri errori e imparare a immaginare le conseguenze di quello che si fa, perchè non si torna indietro.

Rispondi

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.