Coding per tutti

Di questi tempi si parla molto di coding: in lingua italiana si dice programmazione e si tratta del modo che abbiamo per dare istruzioni ad un computer perché faccia determinate cose.
Programmi che fanno fare determinate cose a un computer ce ne sono un’infinità: solo quelli che ho presentato nel tempo in questo blog mi pare rappresentino una completezza di cose al di là delle quali è difficile immaginarne altre. E acquisire dimestichezza con il funzionamento di tutti questi programmi vuol già dire essere ben introdotti nell’informatica e vivere consapevolmente la così detta rivoluzione digitale.
Sta tuttavia maturando la convinzione che questo sia un traguardo da utenti dell’informatica ma non da protagonisti e che, per poter veramente vivere la rivoluzione digitale, non basti saper usare programmi fatti da altri ma occorra anche sapere come si fanno i programmi: solo così, infatti, si può acquisire il così detto pensiero computazionale. E’ questo un termine (computational thinking) riportato alla ribalta dalla scienziata informatica Jeannette Wing nel 2006 per indicare il processo attraverso cui risolvere algoritmicamente problemi anche complessi.
Al punto che stiamo assistendo all’affermazione dell’opportunità di avviare alla programmazione bambini, ancor prima della scuola elementare, con strumenti ludici capaci di sviluppare queste abilità: basti pensare all’ambiente di programmazione Scratch.
All’indirizzo https://www.programmailfuturo.it/ possiamo sapere tutto su ciò che bolle in pentola.
Sicuramente siamo in presenza di un’ondata di moda. Molto simile a quella cui da qualche tempo assistiamo nel mondo della cucina. Non basta più saper apprezzare un buon brasato per essere classificati dei buongustai, occorre anche conoscere la ricetta (l’algoritmo, appunto) per fare il brasato ed acquisire la capacità di inventare altre ricette. Allora libri, riviste, televisione con cuochi da tutte le parti, ecc.
Avendo a che fare con qualche cosa di meno gustoso, nel campo dell’informatica non assisteremo ad una simile baldoria e, comunque, la moda potrà avere qualche effetto positivo: quanto meno quello di smettere di considerare esperti digitali quei ragazzini che si destreggiano a fare quattro cretinerie con il cellulare.
Importante non esagerare nel dare importanza alle cose. Non dimentichiamo che il così detto pensiero computazionale serve innanzi tutto a sbocconcellare un problema e la relativa soluzione affinché diventino alla portata di una stupida macchina. Sicuramente si tratta di una ginnastica che fa bene al nostro cervello ma non è con il pensiero computazionale che Galileo, Newton, Gauss e tanti altri hanno prodotto ciò che hanno prodotto.
E non dimentichiamo nemmeno che la così detta intelligenza artificiale che attribuiamo ad una macchina spesso deriva semplicemente dall’avere ben istruito la macchina stessa a lavorare con formule che ci hanno regalato quei signori, che non hanno mai visto un computer.
Fatte queste premesse, devo dire che programmare è divertente, occupa positivamente il cervello e dà soddisfazione. Ben venga pertanto questa ondata di interesse.
Quanto agli strumenti per programmare, cioè ai linguaggi che possiamo utilizzare per impartire istruzioni al computer, ormai c’è l’imbarazzo della scelta. Lasciando Scratch ai bambini piccoli e la tartaruga di Logo agli appena più grandicelli, un facile linguaggio per tutti i gusti e che può fornire eccelsi risultati è Python, di cui mi sono spesso occupato in questo blog.
Ma ce ne sono molti altri e una panoramica pressocché completa la possiamo avere procurandoci una piccola app per Android, che troviamo su Google Play e si chiama Dcoder.
Non è software libero e non dovrei parlarne in questo blog dedicato al software libero. Ma è talmente bello e intelligente che faccio un’eccezione.
Vista la scarsa documentazione esistente su questa preziosità e la totale assenza di qualche cosa scritta in italiano, ho pensato di proporre l’allegato manualetto in formato PDF, liberamente scaricabile, stampabile e distribuibile.

dcoder