Dell’importanza dei meccanismi formali della logica ai fini di sviluppo dei progetti informatici abbiamo scritto qualche cenno sulla nostra pagina inerente alle competenze interdisciplinari, che vi invitiamo a leggere con attenzione. Qui aggiungeremo qualche particolare in più.
La logica, come disciplina formale, ha radici antiche, ma era in gran parte limitata a quello che oggi definiremmo come “logica verbale”. Solo dalla seconda metà del dicianovesimo secolo ha cominciato ad avere uno sviluppo fulmineo e dei quadri di utilizzo più ampi, grazie ai meccanismi matematici che hanno poi portato, qualche decennio dopo, allo sviluppo dei calcolatori elettronici. Il ventesimo secolo ha portato, oltre all’ulteriore sviluppo della logica classica, anche alla nascita di tutta una serie di logiche non classiche, mutualmente esclusive o complemetarie. Il ventunesimo secolo sta seguendo ancora di più questa tendenza, soprattutto per il diffondersi dell’intelligenza artificiale. Questa per il momento, e purtroppo, è in gran parte ancora soggetta alle bolle speculative marchettare, e anche lo stesso nome è in gran parte fuorviante (proprio per motivi di quelle bolle marchettare, ma continueremo a utilizzare questo termine in quanto molto diffuso e - in linea generale - comprensibile dai più), ma le sue implicazioni pratiche sono sotto gli occhi di tutti: nel campo delle diagnosi di certe malattie, per esempio, si è mostrata più affidabile delle diagnosi fatte da essere umani, anche quelli che hanno una notevole esperienza nel campo medico.
I nostri corsi di logica classica e delle logiche non classiche non sono, per se, di stampo tecnico. Può seguirle chiunque vuole espandere i propri meccanismi di ragionamento, compreso ma non limitato a tutte quelle figure professionali che abbiano neccessità di fare qualsivoglia tipo di inferenza logica. Qui possiamo menzionare, come esempio, economisti, statistici, psicologi, sociologi, analisti mercatologici, ecc. E ovviamente, programmatori. Per i quali competenze di logica sono considerate propedeutiche (a meno che non vogliano andare a sviluppare “sitarelli”, come menzionato nella pagina sulle competenze interdisciplinari. Scelta legittima, sia chiaro, la catena alimentare ha bisogno di tutto e di tutti, ma ci viene difficile classificare questo tipo di lavoro tra lavori interessanti, e anche redditizi).
Abbiamo dei corsi dedicati alle programmazione logica, programmazione per intelligenza artificiale e quelli della logica per verifiche formali della correttezza del codice e assenza di difetti. Potete visionare i contenuti di questi corsi seguendo i collegamenti ipertestuali suilla presente pagina.
Ci sono, poi, anche delle situazioni dove la logica si ferma (eh, si, anche quella ha i suoi limiti, e non sono neanche pochi) e non può portarci a nessuna soluzione. Cosa fare allora? In primo luogo, dobbiamo avere le competenze avanzate di logica per poter comprendere i suoi limiti. In secondo luogo, il nostro corso nominato Oltre la logica. Va detto che questo corso, a differenza di quelli di logica classica e di logiche non classiche, è molto tecnico, ed è fatto per programmatori (o quelli che lo vogliono diventare), ma non richiede conoscenza di nessun linguaggio di programmazione in particolare (si utilizzerà pseudocodice e semplici linguaggi didattici, come anche diagrammi di flusso e altre notazioni grafiche), ma almeno un linguaggio di programmazione deve essere conosciuto, altrimenti il partecipante al corso rischia di non capire molto, e rischia solo di perdere tempo. Dunque, per il corso Oltre la logica uno dovrebbe sapere come funziona un programma, cosa sono variabili, strutture di controllo, cicli, funzioni o sottoprogrammi, ecc.