Per troppo tempo, l’informatica è stata considerata una materia “tecnica”, un’attività da “smanettoni”, da maghi della tecnologia. Il suo insegnamento nelle scuole si è appiattito su certificazioni vuote e inutili come l’ECDL. Questo non è solo un problema italiano; in molti programmi scolastici europei l’informatica viene etichettata come “computer fluency”.
Questo modo di vedere è un grave errore: l’informatica è soprattutto una scienza. Per chi utilizza un computer, l’informatica è vista come uno strumento per risolvere i propri problemi (matematici, scientifici, finanziari, etc.). Per gli informatici, essa è invece la scienza che studia i metodi generale per risolvere problemi (quantomeno, quelli che sono effettivamente risolubili). Come tale, si occupa dei problemi in tutti i loro aspetti: come vengono descritti (modelli), come vengono rappresentati (dati), come vengono risolti (algoritmi). Ad esempio, scomporre un problema in sottoproblemi, fino a quando questi si possono risolvere in maniera elementare, e poi ricomporre via via le soluzioni intermedie fino a raggiungere la soluzione completa, è un tipico principio informatico, detto divide-et-impera. Nel campo del problem solving, i metodi risolutivi propri dell’informatica hanno origine dalla matematica, ma la estendono con modalità nuove, possibili solo grazie alla presenza di un esecutore automatico. Acquisire e praticare i metodi propri dell’informatica si riflette quindi sull’approccio mentale usato per risolvere i problemi di tutti i giorni.
Recentemente, il vento ha iniziato a cambiare: un articolo di Jeannette Wing apparso nel 2006 ha portato alla ribalta il concetto di pensiero computazionale, inteso come il processo mentale coinvolto nella formulazione di un problema e nell’espressione delle sue soluzioni, in modo che un esecutore – umano o artificiale – possa risolvere il problema in maniera effettiva [Wing’06, Wing’14]. Il termine pensiero computazionale non è nuovo — è apparso per la prima volta nelle opere di Seymour Papert — ma non si può negare che l’articolo della Wing e la sua successiva opera di divulgazione abbia rappresentato un punto di svolta.
Il concetto di computational thinking è diventato mainstream, al punto che il New York Times ha titolato nel 2014 “Reading, Writing, Arithmetic, and lately, Coding” e sono nate importanti iniziative come code.org, supportate da testimonial eccellenti come Bill Gates, Mark Zuckenberg e addirittura il presidente Obama. Al di là dell’impatto mediatico, gli obiettivi di code.org sono ambiziosi, e puntano alla riforma dei programmi scolastici per includere concetti di computational thinking e di programmazione. Riforma che è già avvenuta in UK, con l’introduzione del Computing Programmes of Study nel National Curriculum.
Dal punto di vista di chi si occupa di informatica all’Università, la divulgazione di questo concetto può avere ricadute enormi. E’ finalmente arrivata la possibilità di elevare, nelle scuole primarie e secondarie, l’insegnamento dell’informatica allo stesso livello delle altre materie scientifiche; non solo, diventa sempre più chiaro che il pensiero computazionale è elemento abilitante delle scienze moderne.