Sono serenamente convinto che nelle scuole si debba insegnare la Programma 101. Nelle scuole informatiche, s’intenda, non voglio tediare i giovani del classico con i registri, anche se i maligni direbbero che per una buona volta farebbero qualcosa di utile.
E qualcuno dirà: Ma Sciking gli informatici non sanno nemmeno convertire il numero 6 in binario, pensiamo prima a quello e poi alla Perottina.
Mi sembrano le solite polemiche sulle lingue regionali a scuola: ascoltando i linguisti la cosa si sarebbe risolta in dieci secondi, ma qualsiasi scalzacani ha diritto di parola. In fin dei conti lui parla, quindi a che gli serve essere linguista? E ormai tutti sanno usare il PC, a che serve l’informatico?
Fine della polemica. In questo articolo vi spiegherò come mai, secondo me, la Programma 101 dovrebbe essere studiata dagli informatici. Se un giorno malauguratamente diventassi professore d’informatica saprete cosa spiegherò ai miei studenti! 😀
Astrazione del calcolatore
Troppi professori di informatica quando devono spiegare l’architettura del computer ripetono una manfrina del tipo:
“Nel computer c’è la scheda madre che è connessa alla scheda video, a quella audio e al bus delle periferiche”
Probabilmente un computer odierno in questa definizione rientra. Ma va bene per l’ora di educazione tecnica delle medie, quando il docente che ti spiega il computer è quello che dopo tre ore ti spiega ad usare il seghetto. Magari non sul computer stesso.
Ma gli informatici devono astrarre. La definizione di calcolatore deve andare bene per tutti quelli fatti fino ad oggi e dormire tranquilla fino alla diffusione radicale del computer quantistico.
Quindi è appunto necessario dare una definizione il più generale possibile. E quale miglior base della Programma 101 che è sicuramente un calcolatore, seppur molto diverso da un PC odierno?
Assembly!
Aneddoto: Stavo programmando (su carta, nobile metodo!) una cosa per la Programma 101 (emulata eh) e uno che ha studiato assembly mi chiede cosa fossi dietro a fare.
Gli spiego qualcosina e si accende: Quello è assembly!
Ecco, l’assembly reale non è proprio una passeggiata, ma è fondamentale per capire realmente l’architettura del computer. Quello della P101 è facile da imparare e permette di imparare quei rudimenti che ogni informatico dovrebbe conoscere.
Metodo di programmazione
Vi dicevo che programmavo su carta. Programmare su carta vuol dire scriversi i registri e i comandi a mano su un pezzo di carta e verificare passo passo il programma. È una forma elementare di debug dannatamente efficace nella sua semplicità.
Alle volte per debuggare realmente è necessario staccarsi dal computer e pensare, verificare passo passo.
Imparare il semplice linguaggio della Perottina favorisce nettamente questa buona pratica.
Portare avanti questa macchina
Si dice che l’Italia ha la possibilità di vivere di turismo e tra i tanti patrimoni c’è quello informatico che se sfruttato adeguatamente può portare molto turismo nei musei.
Ma se la maggior parte degli informatici futuri nemmeno sa cos’è la Programma 101 tra sessant’anni quando i progettisti originali saranno morti e io sarò abbastanza rimbambito e sarà già tanto se non avrò il pannolone chi saprà programmarla?
Quando un turista al museo chiederà come funziona quella macchina chiameranno me col catetere? Non sarebbe meglio che tutti gli informatici diplomati in Italia abbiano una competenza base sulla P101?
Si parla tanto di valorizzare, facciamolo per una buona volta.
Diventare informatici consapevoli
Sapere le cose di cui ho parlato vuol dire smettere di essere passivi consumatori di bit su schermo che credono a qualunque stronzata dica la pubblicità per diventare informatici consapevoli che hanno le basi per destreggiarsi realmente nel mondo dell’informatica.
Adesso che le nuove leve sono per la maggior parte nativi digitali che danno per scontato l’avere un computer fatto con l’architettura del 2010 è necessario assolutamente astrarre, e la maniera migliore per farlo è con la Programma 101.
Pingback: Perché il computer non è come te lo spiegano a scuola… – Computer Blog