home

=//Evoluzione e storia dell’informatica e dei calcolatori//=

Anche se consideriamo l’informatica la scienza più moderna del mondo possiamo affermare che, stranamente, le sue origini possano essere trovate addirittura nella preistoria. Col termine informatica si identifica la scienza della elaborazione delle informazioni. Cos’è un’”informazione”? Con questo termine possiamo definire semplicemente ogni dato. Per esempio è un’informazione il nome di una persona presente nella rubrica di un telefono cellulare, oppure il numero di identificazione di un treno nell’orario affisso ad una stazione o, più semplicemente, è un informazione anche il nome del singolo alimento presente nella lista della spesa della più comune casalinga. Tutti questi dati, o informazioni, che, a seconda della funzionalità che devono avere, fanno parte di insiemi di dati che prendono il nome, ormai diffusissimo di “data base” ovvero basi di dati. Sicuramente limitare l’informatica solo alla descrizione fatta poco fa, risulta riduttivo in quanto oggi sono molteplici ed innumerevoli i campi in cui tale scienza viene applicata, soprattutto poiché l’informatica spesso serve da supporto a tutte le altre scienze. Diversi millenni fa, sicuramente i calcoli venivano fatti a mente o, al massimo con strumenti primitivi tipo l’abaco poi, a partire dal 1500 e fino al XIX secolo, l’uomo acquisisce enormi capacità sia di pensiero che di abilità costruttiva e inizia a produrre piccoli congegni, talvolta anche di grande complessità e precisione. La vera, sconvolgente, rivoluzione avviene dunque tutta nel ventesimo secolo e in tutti i campi dello scibile umano, compreso, dunque, anche quello del calcolo automatizzato: prima dell'avvento dell'elettronica, gli ingegneri potevano progettare macchine basate solamente sulla meccanica o sulla elettro-meccanica. Spesso le loro idee erano davvero geniali e sbalorditive, ma in solenne anticipo rispetto ai limiti della tecnologia del momento. Le prime macchine risentivano di gravi limiti: la lentezza meccanica dovuta agli attriti, una discreta inaffidabilità generale o facilità di guasto, nonché una scarsa capacità di memorizzazione dei dati. L'utilizzo delle valvole elettroniche accelererà il processo di evoluzione, consentendo anche di acquisire le nozioni sperimentali indispensabili per progettare il prossimo futuro, vennero costruiti dei giganteschi calcolatori (paragonabili a dinosauri), confinati negli ambienti militari e scientifici, ma non fruibili dal largo pubblico. La Seconda Guerra Mondiale accelerò sicuramente i processi di crescita ed il contributo inventivo, perchè le esigenze di difesa spinsero i principali Stati verso massicci investimenti nel settore dell'elaborazione dei dati, tra cui sicuramente il centro SAGE per la difesa territoriale degli Stati Uniti. Con l’avvento dei transistor, si diede l'avvio alla fase di miniaturizzazione dei circuiti e da lì il fiorire di nuove invenzioni, nuove macchine, linguaggi per programmarle e nuove concezioni dei sistemi,ma il colpo finale lo diedero i microscopici circuiti integrati, detti chip, con milioni di transistor dentro pochi millimetri quadrati. Anche per questa evoluzione ci fu un progetto trainante: la corsa delle imprese spaziali e la difesa o attacco missilistico. L'informatica, gestita dai minicomputer era nata e utilizzata su vasta scala dalla maggior parte delle aziende del mondo. L'ultimo passo fu quello dell'introduzione dei sistemi computerizzati anche a livello individuale e ciò avvenne con il rapido sviluppo dei personal computer e di tutta l'enorme famiglia di programmi applicativi d'ogni genere. Un numero incredibile di invenzioni e brevetti è nato in casa IBM,come credo si debba riconoscere il ruolo fondamentale di Microsoft che è riuscita nell'intento di rendere l'informatica uno strumento noto e utilizzabile da tutti. Negli ultimi anni, poi, ha preso forma e sostanza un nuovo concetto molto apprezzabile, quello dell'Open Source, che consente a chiunque di studiare e partecipare al miglioramento di un certo tipo di software e si identifica nel sistema operativo Linux.


 * Ma vediamo, in un immaginario viaggio nel tempo, chi sono stati i principali padri di questa scienza e, quali sono stati i contributi di ciascuno di loro. **

Il primo può essere considerato proprio: **Leonardo da Vinci** (**1452-1519).** Pittore, scultore, architetto nonché ingegnere: già attorno al 1500 immaginava un sistema meccanico di calcolatrice basata su ruote dentate (lo scritto fa parte di quello che oggi viene chiamato “Codice di Madrid”).

Tra il 1500 e il 1700 si diffuse in tutta Europa un gusto sproporzionato per i congegni automatici, in particolare per gli orologi: ne esistevano di complessi e monumentali ovunque si andasse, indicanti non solo l'ora ma anche le fasi lunari, i segni zodiacali (come in Piazza dei Signori a Padova). Osservando il funzionamento di questi meccanismi il matematico tedesco Wilhelm Schickard (1592-1635) docente dell’università di Heidelberg (fu considerato il Leonardo da Vinci tedesco), progettò e costruì quello che a tutt'oggi è considerato il primo vero meccanismo calcolatore: una macchina che esegue le quattro operazioni principali e la radice quadrata, utilizzata per calcoli astronomici, fu distrutta dalla guerra dei trent’anni. Filosofo, matematico e fisico francese, a venti anni realizza una celebre macchina per eseguire addizioni e sottrazioni automaticamente, la 'Pascalina, le addizioni venivano eseguite mediante la somma delle rotazioni degli ingranaggi e le sottrazioni come complemento al 10, le moltiplicazioni erano delle addizioni ripetute. Lo scopo per cui Pascal progettò questa calcolatrice fu quello di aiutare il padre nel calcolo della riscossione delle tasse..
 * Wilhelm Shickart (1592-1635) **
 * Blaise Pascal (1623-1662) **

Filosofo e matematico tedesco, ideò a una macchina calcolatrice automatica in grado di eseguire le quattro operazioni e l'estrazione di radici quadrate, nonché lasciò alcune idee fondamentali per lo sviluppo della logica matematica e per il futuro funzionamento dei calcolatori digitali (una macchina ma che potesse eseguire qualsiasi processo di ragionamento). Per raggiungere il suo scopo Leibniz inventò uno speciale tipo di meccanismo, detto tamburo differenziato (oggi più semplicemente chiamato Ruota di Leibniz); combinando insieme alcuni di questi tamburi era possibile moltiplicare e dividere sfruttando la ripetizione automatica di somme e sottrazioni. Nel 1674 Leibniz presentò a Londra il suo progetto, denominato Stepped Reckoner (calcolatrice a scatti) ne costruì un solo esemplare del suo congegno, per due motivi: primo l'elevata difficoltà di costruzione, secondo gli errori in cui la macchina talvolta incappava; in effetti, nel 1893, a 177 anni dalla morte di Leibniz, si è scoperto che l'errore era derivante da un difetto nel disegno di un meccanismo di riporto.
 * Gottfried Wilhelm Leibniz (1646-1716) **

Matematico inglese,a lui si deve la descrizione del primo calcolatore digitale automatico di uso generale, la cosiddetta“ macchina analitica ” modello per tutti i successivi calcolatori digitali universali. Babbage aveva conosciuto il telaio di Jacquard nei suoi studi sulle manifatture e da questa invenzione aveva ricavato alcuni concetti che gli furono utili nell' ideazione della sua macchina. Precorrendo i tempi, aveva immaginato la possibilità di introdurre da un lato le regole (gli algoritmi) e dall'altro i valori (le variabili e le costanti), il modo più semplice di fare questo consisteva nell' utilizzo di schede perforate o nastri perforati (in tutto simili a quelli dei telai di Jacquard), dovevano esserci varie schede, una per ogni operazione da compiere, che venivano unite in un nastro nella opportuna sequenza.
 * Charles Babbage (1791-1871) **

Egli realizzò anche una " macchina alle differenze " in grado di svolgere calcoli più specializzati. La macchina analitica era costituita da due parti: lo store (memoria) che immagazzinava variabili e costanti e nella quale erano conservati anche tutti i risultati intermedi dei calcoli e il mill (unità di calcolo) che conteneva il programma vero e proprio. Babbage non vedrà mai funzionare la sua “macchina analitica”, la “macchina alle differenze” sarà completata solo nel 1989 ed ora è esposta al Museo della Scienza di Londra. Ma lo schema generale del suo calcolatore è talmente simile a quello dei computer moderni che la tardiva riscoperta dei suoi scritti invalidò alcuni brevetti dell’IBM…. Il primo software mai scritto da un essere umano fu ideato da una mano femminile. Nel 1843, in uno scritto ormai famoso, Ada Byron descrive la Macchina di Babbage come uno strumento programmabile, in grado di agire in base a delle istruzioni generali, con incredibile lungimiranza, ne prevede le applicazioni nel calcolo matematico, prefigura l’intelligenza artificiale e persino la computer music, affermando che la macchina sarà cruciale per il futuro della scienza: a titolo di esempio, spiega il modo in cui la macchina potrebbe effettuare un determinato calcolo, scrivendo quel che viene unanimemente riconosciuto come il primo software della storia. Logico e matematico inglese. George Boole creò lo strumento concettuale che sta alla base del funzionamento del calcolatore e che, in suo onore, va sotto il nome di “algebra booleana”: sviluppò i concetti espressi da ** Leibniz ** sul sistema binario e descrisse gli operatori logici che da lui presero il nome di “operatori booleaani”. La sua logica, oggi, sta alla base della struttura dei componenti elettronici denominati “porte logiche” ed è la base del funzionamento dei calcolatori elettronici. Boole dimostrava con successo che la logica, come la insegnava Aristotele, poteva essere rappresentata tramite equazioni algebriche. Il lavoro di Boole fu considerato soltanto “pura matematica” fino al 1938, quando Claude Shannon pubblicò la sua tesi al MIT. Shannon dimostrò che la logica di Boole (rappresentazione di Vero e Falso), poteva essere usata per rappresentare le funzioni degli interruttori nei circuiti elettronici, ciò divenne la base della progettazione dell'elettronica digitale e nell'ingegneria dei computer. Tecnologo americano il suo nome è legato, con quello del medico John S. Billings (1839-1913), alla realizzazione della prima macchina tabulatrice a schede perforate prototipo dei sistemi meccanografici. Nel 1880 l'ufficio censimenti USA bandì un concorso per la progettazione di una macchina in grado di classificare e contare automaticamente i dati: vinse la gara l'ingegnere statistico H. Hollerith, che aveva elaborato una tabulatrice riutilizzando l'idea delle schede perforate di Babbage, questa volta però non per specificare il programma, ma i dati da elaborare o i risultati dell'elaborazione. Sulla scheda, il sesso “maschile” poteva essere rappresentato da una perforazione e “femminile” dalla mancanza di perforazione, dati più complessi richiedevano gruppi di perforazioni o assenza di essi. Le schede perforate venivano inserite nella macchina, dove un circuito elettrico veniva acceso o spento dalla presenza o assenza dei buchi. Il linguaggio delle parole umane veniva tradotto in perforazioni ("foro sì", "foro no"), che la macchina leggeva elettricamente (acceso-spento). Era la prima volta che, nel calcolo, si faceva uso dell'elettricità. Herman Hollerith è il fondatore dell'azienda che sarebbe diventata il gigante IBM Ingegnere tedesco, considerato “il padre dei computer”, il primo computer lo costruì tra il 1936 e il 1938 e venne poi distrutto assieme ai progetti dai bombardamenti di Berlino: si trattava di un apparecchio programmabile, in grado di processare numeri in formato binario e le cui caratteristiche furono la netta distinzione fra memoria e processore. Lo Z1 conteneva tutti i componenti di un moderno computer, anche se era completamente meccanico: questa architettura (non adottata dall'ENIAC o dal Mark, primi computer realizzati negli Stati Uniti quasi dieci anni più tardi), rispecchia la definizione di calcolatore enunciata nel 1945 da John von Neumann.
 * Ada Byron Lovelace (1815-1852) **
 * George Boole (1815-1864) **
 * Herman H. Hollerith (1860-1929) **
 * Konrad Zuse (1910-1995) **

John von Neumann definì per la prima volta in modo rigoroso e completo il concetto di elaboratore elettronico a programma memorizzato (“macchina di von Neumann”). Anche se altri avevano avuto idee simili, fu Neumann a inquadrarle in una teoria matematica coerente e a svilupparle in una teoria generale delle “macchine intelligenti” e degli automi. All'Istituto di Princeton si dedicò alla progettazione di un nuovo calcolatore, producendo una serie di lavori che portarono alla definizione di quella che oggi è nota come architettura von Neumann: in particolare, la distinzione tra memoria primaria (ROM) e secondaria (RAM), e lo stile di programmazione mediante diagrammi di flusso. Il suo risultato più famoso fu nel campo degli armamenti, la scoperta che le bombe di grandi dimensioni sono più devastanti se scoppiano prima di toccare il suolo, a causa dell'effetto addizionale delle onde di detonazione (i media sostennero più semplicemente che von Neumann aveva scoperto che è meglio mancare il bersaglio che colpirlo). L'applicazione più infame del risultato si ebbe il 6 e 9 agosto del 1945, quando le più potenti bombe della storia detonarono sopra il suolo di Hiroshima e Nagasaki, all'altezza calcolata da von Neumann affinché esse producessero il maggior danno aggiuntivo. Tecnologi americani furono i creatori dei primi calcolatori elettronici digitali: l'ENIAC (con la tecnologia dei tubi a vuoto) - in collaborazione con Herman H. Goldstine - e in seguito l'UNIVAC e il BINAC. Nel 1945, i piani del computer moderno erano chiaramente definiti e l'EDVAC venne messo in cantiere. L'EDVAC (Electronic Discrete Variable Automatic Computer) sarà uno degli ultimi prototipi di computer costruito alla fine degli anni '40, pur essendo stata la prima macchina di questo tipo messa in cantiere sarà completata solo nel 1951. Questo modello è ora spesso indicato come una “architettura di von Neumann”, anche se ciò non rende giustizia ai suoi collaboratori, in particolar modo Eckert e Mauchly. Un computer con il programma memorizzato,è costituito da cinque parti funzionali: una unità di controllo, una unità aritmetica, una memoria e un dispositivo di ingresso e di uscita.
 * John von Neumann (1903-1957) **
 * J. Presper Eckert (1919-1995) e John William Mauchly (1907-1980) **

Grace Hopper è stata una matematica, scienziata di computer, progettista di sistemi e ha inventato il concetto di "compilatore" dei programmi software. Nel 1949 si unisce a Eckert e Mauchly nella costruzione dell'UNIVAC I. Lavorò sull'idea del compilatore per fare in modo che il calcolatore fosse in grado di leggere istruzioni scritte in linguaggio naturale, fino a sviluppare il più noto linguaggio di programmazione commerciale, il COBOL. Prima dell'invenzione della Hopper i programmatori dovevano scrivere lunghissime istruzioni in codice binario per qualsiasi nuovo pezzo di software. La Hopper impostò il programma che avrebbe liberato i programmatori dall'esigenza di scrivere in codice binario e ogni qualvolta che il computer era chiamato a svolgere una funzione già nota, il compilatore gliela avrebbe messa a disposizione prelevandola da una libreria predisposta allo scopo. Non si fermò, inventa il COBOL, il primo linguaggio familiare utilizzabile per scrivere programmi gestionali (in uso ancora oggi) che rese possibile ai computer di comprendere le parole anziché i soli numeri. E' sempre della Hopper che venne attribuito il termine “bug” per indicare errori nei programmi, quando scoprì che un relè non funzionava in modo corretto proprio perchè un insetto (bug) vi era rimasto incastrato. Nel 1936 formulò il modello teorico del calcolatore a istruzioni memorizzate, la cosiddetta “macchina di Turing”. Il metodo di istruzione del computer era molto importante nel concetto di Turing. Far eseguire ad un computer un compito particolare era soltanto una questione di suddivisione dell'istruzione in una serie di istruzioni più semplici, lo stesso processo che viene affrontato anche dai programmatori odierni. Turing era convinto che si potesse sviluppare un algoritmo per ogni problema. La parte più difficile stava nel determinare quali fossero i livelli semplici e come spezzettare i grossi problemi. Shannon cominciò a pensare che con la logica a due valori di Boole si poteva fare di un computer «molto di più che una macchina per addizioni». Nel 1948 pubblicò il suo lavoro più importante, la Teoria matematica della comunicazione, uno dei pilastri della moderna teoria dell'informazione e in parte, quindi, dell'informatica. Il problema era ancora una volta di natura pratica. Come trasmettere messaggi impedendo che "rumori" di disturbo ne alterassero il contenuto? Per cominciare, il problema era di definire in maniera precisa cos’era il contenuto di informazione di un messaggio. L'idea geniale di Shannon fu che il contenuto di informazione non ha nulla a che vedere col contenuto del messaggio, ma col numero di 0 e 1, necessari per trasmetterlo. La natura del messaggio (numeri, musica, immagini) era irrilevante, in ogni caso si trattava di sequenze di 0 e 1, in quell’articolo compariva per la prima volta il termine bit. Nel 1974 Jobs lavorava come disegnatore di video game alla Atari Inc., iniziò a frequentare gli amici del “Homebrew Computer Club” dove conobbe Wozniak, genio dell'elettronica, con una infinita passione per i computer e il desiderio di arrivare a costruirne uno tutto per sé. Jobs, non era un buon ingegnere come Wozniak era interessato alle possibilità del mercato e così riuscì a persuadere Wozniak a lavorare con lui per costruire dei nuovi personal computer. I due disegnarono il computer Apple I nella camera da letto di Jobs e ne costruirono un prototipo nel garage dei genitori. Jobs mostrò la nuova macchina a un raduno di rivenditori di apparati elettronici della zona, che gliene ordinarono un discreto numero di esemplari ciò contribuì all'idea di costituire una società che producesse e vendesse personal computer. Apple nasceva nella sorprendente atmosfera creativa sorta a San Francisco attorno all'Homebrew Club, dove appassionati, studenti e hobbisti utilizzavano microprocessori (uno straordinario chip di calcolo inventato da Intel) per realizzare i primi strumenti elettronici programmabili, che diedero poi il via alla rivoluzione del personal computer: nessuna grande azienda informatica era interessata e coinvolta all'epoca, alla realizzazione di piccoli computer, né IBM, né HP né Honeywell o DEC. Apple I era in una scatola di legno, e la motherboard era costruita attorno al microprocessore 6502, il più economico che Woz fosse riuscito a comprare costava $ 666,66. Steve Jobsdesiderava portare il computer al dì là degli hobbisti, rivolgendosi a un mercato che desiderasse un prodotto finito e funzionante, per questo immaginò una scatola di plastica, con tastiera e monitor, creando il design del personal computer. Apple II era capace di imagini a colori e il suo prima sistema operativo si chiamava DOS. Nel 1979Jobs conosciuto il lavoro della Xerox (PARC), una interfaccia per computer interamente grafica controllata da un mouse, decise che Apple avrebbe prodotto un computer sofisticato, forse multiprocessore, che inglobasse le novità del PARC. Ne derivò prima un prototipo chiamato Lisa e poi il famoso Macintosh. Nel 1985, però, Macintosh costava troppo e si vendeva molto meno del PC IBM, mentre erano in calo anche le vendite di Apple II. Dal canto suo Steve Jobs portava avanti il suo progetto di macchina chiusa e pronta all'uso (BabyMac e BigMac) ciò lo portò in collisione con il progetto di Mac Plus, e infine al suo allontanamento dall'azienda. Jobs avrebbe portato avanti il progetto di BigMac in una nuova azienda, la NeXT Computer.
 * Grace Murray Hopper (1906-1992) **
 * Alan M. Turing (1912-1954) **
 * Claude Elwood Shannon (1916-2001) **
 * Steve Jobs e Steve Wozniak **

Gates incominciò la sua carriera come programmatore di software per personal computer, all'età di 13 anni presso la scuola privata di Lakeside a nord di Seattle: la scuola non aveva i soldi per comprare un computer, così fece un contratto di noleggio a ore di elaborazione per un DEC PDP-10 della General Electric, fu così che Gates con Paul Allen, e altri studenti di Lakeside divennero inseparabili da quel computer. Gates ed Allen e altri due hackers (smanettoni) di Lakeside formarono il "Lakeside Programmers Group" verso la fine del 1968. Erano determinati a trovare un modo per applicare le loro conoscenze sui computer nel mondo reale. Il Computer Center Corporation’s (la società che aveva l'elaboratore) iniziava ad avere dei problemi dovuti alla vulnerabilità del sistema e ai suoi frequenti guasti. Impressionati dall'abilità degli assalti al sistema di sicurezza fatti da Gates e company, la Computer Center Corporation decise di assumere gli studenti per trovare i punti deboli nel sistema. Anche se assoldati per trovare i bug del sistema, poterono disporre di tutta la documentazione tecnica, che poi sperimentavano sulla macchina stessa. Ed è appunto qui che Gates e Allen iniziarono a sviluppare il loro talento che li portò alla costituzione della Microsoft (sette anni più tardi). In seguito la"Information Sciences Inc." (ISI) li assunse per scrivere dei programmi di calcolo dei cedolini paga. Anche la TRW aveva dei problemi di bug che infestavano il loro computer, simile a quello della Computer Center Corporation: venuti a conoscenza delle esperienze dei due ragazzi, offrirono loro lo stesso lavoro, ma la TRW non chiese solamente di individuare i problemi, ma anche di risolverli.E’ stato dunque alla TRW che Gates iniziò la sua formazione come vero programmatore e fu in quell'occasione che Allen e Gates per la prima volta iniziarono a parlare seriamente di costituire una loro società di software. Nel 1973 Gates si iscrive alla Harvard University, senza una idea precisa di cosa studiare, ma dopo aver individuato il sistema della scuola s’immerse di nuovo nello studio dell’informatica. Durante la permanenza ad Harvard, Gates sviluppò una versione del linguaggio BASIC per il primo microcomputer (MITS della Altari), rimase nel contempo sempre in contatto con Paul Allen anche se studiava altrove. Al termine del primo anno scolastico ad Harvard, i due decisero di avvicinarsi per dare corso a qualche iniziativa. Quell'estate entrambi trovarono un lavoro presso la Honeywell. Alla fine dell'estate, Allen cercò di convincere Gates a costituire una loro software company: Gates non era ancora abbastanza convinto di abbandonare la scuola. L'anno successivo (1975), però, sarebbero cambiate molte cose. Il seguito della storia si sviluppa nelle pagine dedicate alla Microsoft. La lungimiranza di Gates e visione in merito all'importanza che avrebbero avuto i personal computer sono state fondamentali per il successo della Microsoft e per l'industria del software. La missione della Microsoft è sempre stata di migliorare e incrementare la tecnologia del software, renderlo più facile, più economico e più apprezzabile dalla gente che usa il computer.
 * Bill Gates (1955) **

Si ringrazia per la collaborazione F. Paparone