George Babbage possiamo dire che è stato il primo ad aver pensato ad una macchina calcolatrice molto avanzata, grazie alla collaborazione proficua di Ada Lovelace che ne ipotizzò anche un linguaggio macchina, ma se parliamo dei padri dell’informatica i nomi che si fanno spesso sono Alan Turing e John von Neumann.
Alan Turing prese l’esempio di Babbage e Lovelace per ideare la macchina di Turing, sfruttando le sue conoscenze di crittoanalisi e gli studi contemporanei di Kurt Friedrich Gödel e la sua teoria sui teoremi di incompletezza del 1931.
Famoso crittoanalista contribuì allo sviluppo del calcolatore Bomba capace di tradurre il codice della macchina Enigma, che Turing decifrò, dell’esercito tedesco nella seconda mondiale; inoltre in collaborazione con Alonzo Church ideò la tesi Turing-Church:
"Ogni calcolo può essere eseguito tramite un algoritmo installato su un calcolatore, se c’è il tempo e lo spazio di archiviazione sufficiente a disposizione."
Grazie alla tesi Turing-Church e l’idea originale di Babbage -Lovelace, Alan Turing ideò la macchina di Turing che spiegava che un calcolatore, tenendo in considerazione le limitazioni sulle capacità di calcolo, potesse eseguire calcoli matematici o logici.
Nel 1930 iniziarono gli sviluppi della parte hardware e il giapponese Akira Nakashima pubblicò, tra il 1934 e il 1936, la teoria del circuito a switch; contemporaneamente Claude Elwood Shannon ideò un modo per ordinare i relè elettromeccanici che utilizziamo al giorno d’oggi per dividere la linea internet da quella telefonica negli switch telefonici.
Entrambi si ispirarono all’algebra booleana, sia Nakashima sia Shannon non conoscevano che Boole l’aveva già scoperta, riuscendo ad utilizzarla per costruire hardware con tecnologia sempre più avanzata, che tutt’oggi troviamo nei moderni Personal Computer.
Nel 1941 l’ingegnere tedesco Konrad Zuse inventa il primo computer moderno chiamato Z3, questa macchina fu premiata come Turing completa nel 1998 perché fu il primo a realizzare il sogno di Alan Turing.
Primo uomo business nel campo informatico Zuse realizza anche la prima macchina per il controllo industriale (la S2) e il primo linguaggio di programmazione ad alto livello (il Plankalkül).
Dopo lo Z3 furono sviluppati diversi progetti elettronici come il Manchester Baby che fu completato nel 1948 e il Pilot Ace nel 1950: il Manchester Baby, nato da un’idea di Max Newman che diede un contributo fondamentale per il suo sviluppo, è stato il primo computer elettronico digitale che eseguiva i programmi memorizzati come quelli moderni; mentre il Pilot Ace con una velocità di 1 MHZ fu per un breve tempo il computer più veloce al mondo.
Claude Elwood Shannon nel 1948 pubblicò "A Matemathical Theory of Communications" ( una teoria matematica della comunicazione), un saggio con il quale divenne il padre della teoria dell’informazione e dove apparve per la prima volta il termine bit.
Per Shannon il bit era l’unità elementare dell’informazione; introdusse inoltre il concetto di entropia dell’informazione e l’identità di due valori (vero o falso) della logica e gli 0 e 1 dei circuiti elettronici.
Sul concetto di entropia molto bello il dialogo tra Shannon e John von Neumann: «La mia più grande preoccupazione era come chiamarla. Pensavo di chiamarla informazione, ma la parola era fin troppo usata, così decisi di chiamarla incertezza.
Quando discussi della cosa con John Von Neumann, lui ebbe un'idea migliore. Mi disse che avrei dovuto chiamarla entropia, per due motivi: "Innanzitutto, la tua funzione d'incertezza è già nota nella meccanica statistica con quel nome. In secondo luogo, e più significativamente, nessuno sa cosa sia con certezza l'entropia, così in una discussione sarai sempre in vantaggio." »
Norbert Wiener insegnava al MIT (Massachussetts Institute of Tecnology) di Cambrigde ed aveva come studente proprio Shannon, i due elaboravano insieme la moderna teoria dell’informazione materia di studio nelle scuole universitarie di ICT (Informatica e Telecomunicazioni) e fu l’inventore della cibernetica.
Wiener durante la seconda guerra mondiale si occupò del controllo automatico delle armi belliche, da questi studi scrisse un libro chiamato "Cybernetics or control and communications in the animal and the machine" ( la cibernetica, ovvero il controllo e la comunicazione negli animali e nelle macchine) che pubblicò nel 1948.
John von Neumann possiamo definirlo il padre della tecnologia hardware dei computer moderni in quanto ideò un’architettura per computer digitali programmabili da programmi memorizzati in memoria, con i programmi che condividono i dati e le istruzioni nello stesso spazio di memoria.
Ad opporsi a questa architettura, chiamata architettura di von Neumann, c’è quella di Harvard dove i dati e le istruzioni di un programma sono presenti in due spazi di memoria distinti; per i moderni computer l’idea di von Neumann è stata preferita a quella di Havard e nella sua teoria un calcolatore deve avere:
- Un unità di controllo che controlla e verifica che le operazioni avvengono in maniera corretta
- Un unità aritmetico-logica (ALU) che esegue operazioni aritmetiche-logiche.
- l’Accumulatore, una memoria collocata nell’ALU, in grado di ricevere informazioni dall’esterno (input) per passarli al sistema e mostrare poi i risultati (output).
- La memoria a cui bisognava accedere velocemente per recuperare i dati e il programma in essa contenuti.
Il primo a mettere insieme gli studi di Babbage-Lovelace e le teorie di Alan Turing e John von Neumann fu Pier Giorgio Perotto; l’ingegnere della Olivetti riprese l’idea di Zuse e iniziò a progettare nel 1957 un calcolatore all’avanguardia.
Le dimensioni di allora erano troppo grandi e non poteva esporre il calcolatore in una fiera elettronica, così si concentrò a rendere le dimensioni più piccole senza perdere il lavoro fatto in precedenza: fu così che nel 1965 alla fiera di New York Pier Giorgio Perotto presenta la Perottina (o progetto P101) riconosciuto ufficialmente come il primo Personal Computer della storia.