L’incompetente non conosce le regole, il capace conosce le regole, il guru sa quando è il caso di violare le regole
Su faccialibro mi hanno coinvolto in una discussione sul coding alle elementari, ove per coding si intende l’insegnare il pensiero computazionale e i fondamenti della programmazione. Le obiezioni erano essenzialmente tre:
-> il coding, il saper programmare è una competenza troppo specialistica per essere insegnata.
-> meglio l’insegnamento “analogico” al digitale,
-> costringe gli studenti ad un pensiero rigido, a pensare per zero ed uno, uccidendo la creatività e tasformandoli in tanti piccoli robot. 1
Più una quarta che i progetti in realtà servivano per favorire le multinazionali del software ovvero la microsoft2; un poco di sano gombloddismo non guasta mai.
A me sembra che sul coding si faccia un sacco di confusione, come al solito, e che molti scrivano solo perché sottomano hanno una tastiera.
Prima considerazione: “coding” altro non è che il solito vizio italiano di usare una parola nuova per un concetto vecchio, il pensiero logico computazionale, per farlo passare come moderno. Il pensiero logico computazionale; il pensare in maniera matematica, conoscere, saper descrivere gli algoritmi, saperli utilizzare, è il fondamento di tutta la matematica e, conseguentemente, di tutte le scienze. Prima che venisse chiamato coniato il termine “coding” era quello che imparavi quando studiavi le tabelline e la geometria e ti esercitavi a risolvere i problemi come: Anna, Bruno e Carla hanno ognuno tre mele, quante mele hanno in tutto? Vogliamo preparare una tovaglia per un tavolo quadrato che ha il lato di 50 cm; quanti metri quadri di stoffa dobbiamo comprare? se la stoffa costa 8 euro a metro quadro, quanto spendiamo? Roba che alle elementari si è sempre fatta, solo che si chiamava aritmetica e geometria, e che si dovrebbe continuare a fare anche oggi. Chiamarla coding la fa sembrare qualcosa di figo, di moderno e di innovativo. Invece è la cara vecchia buona aritmetica.
Scava scava il linguaggio di programmazione è solo uno strumento, le strutture base della programmazione (istruzione, iterazione, scelta) son le stesse di qualsiasi algoritmo matematico e consentono di descrivere qualsiasi algoritmo e, conseguentemente, qualsiasi programma. Il fatto è che molti confondono l’informatica con il saper usare il computer; il che è come dire che il conoscere l’ingegneria meccanica dei motori automobilistici è la stessa cosa di avere la patente e saper guidare una macchina. Usare il computer a scuola non è fare informatica come guidare non è fare progettazione di motori. Invece molti continuano a confondere la materia con lo strumento. Vero anche che molti su questa ambiguità ci giocano per lucrarci sopra. Quando insegnavo ho avuto problemi con ragazzi, convinti che l’informatica fosse la patente europea del software, si son trovati spiazzati quando invece di uord e uindos si è parlato di diagrammi di flusso e algoritmi.
Seconda considerazione: anche con l’informatica puoi fare insegnamento “analogico”; usare un mazzo di carte per spiegare gli algoritmi di ordinamento, fare il gioco delle venti domande per trovare una parola nel vocabolario, applicare tanti algoritmi “informatici” e modelli al mondo reale; prendere la ricetta della pizza come esempio di programma e convertirlo in un flow chart. Tante attività “analogiche”, coding non significa abbandonare i ragazzi davanti al PC.
Terza considerazione: una delle obiezioni contro il coding che ho sentito è: “insegna a pensare per zero ed uno, con regole rigide, riducendo l’alunno ad un automa”. Colossale uomo di paglia. Vorrei vedere un informatico che uno che “pensa” solo con una variabile binaria; si puàò pensare anche per “nibble” (4bit), byte (8), “word” (16) e se proprio serve “longint” (64 bit) 😀 In realtà la scuola già insegna a pensare con regole rigide di per sé, prendiamo ad esempio la grammatica: ci son regole “rigide” che impongono la concordanza del soggetto con il verbo o che vietano di usare un tempo futuro per parlare di eventi passati. “ieri io andrete al mare” è una frase che non significa niente. E non significa niente perché non rispetta le regole di concordanza del soggetto (io) con il verbo (seconda persona plurale) e non rispetta neppure le regole sui tempi, il verbo è al futuro mentre “ieri” fa riferimento al passato. La grammatica e la sintassi hanno le loro regole rigide quindi, se la rigidità delle regole uccide l’intelligenza e rende le persone automi, per coerenza sarebbe da eliminare anche la grammatica e la sintassi3 nell’insegnamento dell’italiano.
L’ultima considerazione sono invece le solite frignate “scolastiche” di chi cerca di verniciare con tanto idealismo i suoi bassi interessi di bottega, ovvero il non volersi aggiornare, il non voler imparare cose nuove per trasmetterle agli studenti. Quello che trovo buffo è che i giorni pari ci si lamenti che i privati non investano nella scuola e i giorni dispari ci si lamenti del non voler diventare “schiavi” di chi nella scuola vorrebbe investire. Il solito “mamma ciccio mi tocca, toccami ciccio che mamma non vede”.
Uno dei compiti più importanti della scuola è fornirti un bagaglio culturale per interpretare, capire e saper agire nella maniera ottimale con il mondo; ed il pensiero logico matematico, o pensiero computazionale, rimane uno strumento molto potente per riuscirci. La scuola deve insegnarti a pensare non darti solo una sterile quanto inutile erudizione basata solo su tante nozioni disconnesse e avulse dalla realtà, senza che ti venga insegnato ad utilizzare tali nozioni, a collegarle ed a ragionarci sopra. E il coding altro non è che uno strumento per “applicare” il pensiero logico allo stesso modo dei problemi di aritmetica.
—
- una cosa che trovo divertente è che l’algebra di Boole che descrive la logica binaria altro non è che la formalizzazione matematica della logica aristotelica. Quindi lo studio di Aristotele e della filosofia è nocivo. Quando si parla di ironia. ↩
- Già il pensare che il software si riduca ai prodotti microsoft mostra quanto sia approfondita la conoscenza dell’informatica; e questo fa porre qualche sospetto su quanto possano essere appropriate certe obiezioni. ↩
- purtroppo temo stia già avvenendo, basta dare una lettura ai messaggi nei social. :-( ↩