La cultura dell'errore
“Sbagliando si impara”… chissà quante volte abbiamo sentito questa frase, ma l’azione di sbagliare non viene vissuta da tutti quanti allo stesso modo perché ha una componente psicologica molto forte. C’è chi vive gli errori in maniera positiva, e si auto-stimola nel risolverli, e chi invece li vede come una catastrofe e un totale fallimento del proprio operato. Gli errori tendono ad essere deprimenti e richiedono quindi un maggior sforzo per essere digeriti in modo positivo.
L’errore però fa parte di noi, del nostro processo di crescita; ogni giorno commettiamo errori e ogni giorno siamo chiamati a correggere il tiro e risolvere i problemi che la vita ci pone di fronte, in tutte le situazioni, dallo studio al lavoro.
Un grande pilota automobilistico italiano di Formula 1, Mario Andretti, diceva: “Se hai tutto sotto controllo, significa che non stai andando abbastanza veloce”.
Nel mondo delle corse questo concetto è facile da applicare e da capire, ma se proviamo ad estrapolarlo dal contesto ed applicarlo allo studio, al lavoro e alla vita di tutti i giorni, questo può essere tradotto con un concetto molto semplice: quando si gioca, si studia o lavora, si commettono errori, anzi si devono commettere errori, perché solo così impariamo cose nuove… rischiando!
Ciò non vuol dire che dobbiamo volutamente sbagliare o che possiamo accettare determinati errori (errori del passato, errori di pigrizia, errori di sbagliate valutazioni a priori, errori di presunzione, errori facilmente evitabili con la giusta attenzione, ecc.), ma dobbiamo riflettere sul fatto che se non si commettono mai errori significa probabilmente che si sta andando troppo piano, che cioè non si sta osando abbastanza e che in fondo si sta imparando troppo poco, rimanendo nella propria comfort zone.
Un esempio abbastanza lampante ci viene dal mondo dell’informatica. A tutti i livelli, da quelli scolastici, fino al mondo professionale, super specialistico ed avanzato, non osare mai vuol dire non scoprire mai soluzioni alternative ed innovative a problemi quotidiani. Osare, tuttavia, porta sempre con sé il rischio di sbagliare e anche di fallire, ma questo fa parte del gioco, va accettato e va affrontato nella maniera giusta.
Il coding per imparare attraverso gli errori
Nel mondo degli sviluppatori c’è una vignetta che è molto di moda e che racchiude il concetto seguente: sebbene la società pensi che un programmatore sia un genio dell’informatica, che si diverte a stare ore ed ore davanti al computer per creare opere d’arte digitali e guadagnare un mucchio di soldi (forse per qualcuno, pochi, è davvero così), quello che quotidianamente fa un programmatore è spegnere incendi, cioè risolvere quelle mini sfide e quei piccoli errori che vengono fuori da progetti più complessi, e che molto spesso è il programmatore stesso a causare e generare durante la sua ricerca delle possibili soluzioni al problema generale.
Nel mondo degli sviluppatori c’è una vignetta che è molto di moda e che racchiude il concetto seguente: sebbene la società pensi che un programmatore sia un genio dell’informatica, che si diverte a stare ore ed ore davanti al computer per creare opere d’arte digitali e guadagnare un mucchio di soldi (forse per qualcuno, pochi, è davvero così), quello che quotidianamente fa un programmatore è spegnere incendi, cioè risolvere quelle mini sfide e quei piccoli errori che vengono fuori da progetti più complessi, e che molto spesso è il programmatore stesso a causare e generare durante la sua ricerca delle possibili soluzioni al problema generale.
Per un programmatore gli errori sono all’ordine del giorno, sono pane quotidiano, sfide che vanno vinte e risolte a piccoli passi, una dopo l’altra, fino al raggiungimento dello scopo prefissato. È tipico del coding scomporre un problema generale in tanti sotto problemi, risolvere quest’ultimi, commettendo un’infinità di errori da aggiustare di volta in volta, e riunificare poi tutte le soluzioni ed ottenere la soluzione al problema iniziale.
Si sperimenta, si cercano soluzioni, si fallisce (a volte), si impara dai propri errori e ci si migliora, e poi si continua ad andare avanti in questo infinito ciclo procedurale di crescita personale. Errori commessi in buona fede, nella ricerca di soluzioni più efficienti, o errori su cui abbiamo responsabilità limitate, creano valore più che distruggerlo. La regola dell’apprendimento dai propri errori consiste nell’analizzarli, imparare da essi ed infine non ripeterli, per essere più efficaci nelle decisioni future.
In ambito educativo tutto ciò si attua grazie ad ambienti di programmazione pensati per bambini e ragazzi che permettono di sperimentare la cultura dell’errore con attività di coding stimolanti, in un contesto ludico e giocoso, senza frustrazioni o delusioni ingestibili.
Il debugging, ovvero la ricerca dell’errore
C’è una fase di sviluppo importantissima nel processo di creazione di un prodotto digitale, e che appartiene a tutti i tipi di prodotti digitali dalle app ai software più complessi, dai programmi gestionali per le aziende ai videogames per i ragazzi, ovvero la fase di debugging: la ricerca degli errori commessi e sfuggiti durante la programmazione. Una fase in cui si mettono in gioco tutte le proprie capacità e quelle del team di programmazione per cercare e poi risolvere i propri errori nel codice (i bug), molto prima del lancio del prodotto sul mercato.
C’è una fase di sviluppo importantissima nel processo di creazione di un prodotto digitale, e che appartiene a tutti i tipi di prodotti digitali dalle app ai software più complessi, dai programmi gestionali per le aziende ai videogames per i ragazzi, ovvero la fase di debugging: la ricerca degli errori commessi e sfuggiti durante la programmazione. Una fase in cui si mettono in gioco tutte le proprie capacità e quelle del team di programmazione per cercare e poi risolvere i propri errori nel codice (i bug), molto prima del lancio del prodotto sul mercato.
Questa fase, detta Alpha testing, affina le abilità di analisi e di ricerca, il pensiero critico e quello logico, le capacità di osservazione, lettura e comprensione del codice. Trovare l’errore, capire perché lo si è commesso, risolverlo, imparare a non commetterlo più, serve ad andare più veloci e sicuri la prossima volta.
Esistono tantissime attività ispirate al debugging in cui i docenti consegnano ai loro studenti dei programmi volutamente non funzionanti, errati, lasciando loro il compito di cercare gli errori e correggerli. In questo caso l’errore non è commesso direttamente dallo studente, ma l’attività di correzione degli errori commessi da altri è altrettanto efficace.
La sperimentazione quindi permette di imparare in modo solido a fare le cose, a “sbagliare bene”. Bisogna smettere di alimentare la cultura del “non si può sbagliare” e liberarsi del senso di colpa dei propri errori e fallimenti, perché esiste poi la concreta possibilità di avere grandi difficoltà nell’usare gli errori come strumento di crescita e di avere come unico punto di riferimento del proprio studio e lavoro soltanto “la perfezione”.
Pertanto, viva gli errori, chi non sbaglia non cresce mai!