Cerca tra i 5457 podcast,
l'archivio delle nostre trasmisioni dal 2006

L'UOMO CHE DIEDE L'INFORMATICA ALLE SCIENZE

Di: Franz Andreani | 21/10/2011
La scomparsa di Dennis Ritchie di cui si è avuta notizia lo scorso 12 ottobre, a pochi giorni dalla morte di un altra illustre figura della storia dell’informatica come Steve Jobs, non ha suscitato il rumore che avrebbe dovuto. Io la notizia l’ho appresa da quel vulcanico podcaster che è Ombra, solo qualche giorno orsono e anche per caso. Eppure la figura di Ritchie, con il suo barbone che incorniciava un viso allegro da ricercatore schivo e poco amante della notorietà, lasciava intravedere il suo genio.
Occorreva essere una persona caparbia per non mollare un progetto estremamente ambizioso per l’epoca, siamo alla fine degli anni ‘60, come quello sviluppato assieme a Ken Thompson. I due amici di lunga data avevano scritto un sistema operativo in grado di automatizzare delle operazioni che nei sistemi dell’epoca erano affidate all’uomo. Scrissero un software chiamato Multics, che però si rivelò troppo complesso per l’epoca, tanto che la stessa AT&T ne abbandonò il sostegno allo sviluppo per un sistema molto più banale e anonimo: GECOS.
Ma i due non si arresero convinti del fatto che la strada intrapresa dal loro Multics fosse quella giusta. Il software, infatti, era in grado di eseguire una serie di operazioni in “time sharing” in condivisione di tempo, in grado cioè di eseguire più compiti in una teorica contemporaneità. Questo concetto per noi risulta una banalità, ma la cosa per la mentalità e i mezzi dell’epoca non era così. Riuscirono ad installare il loro nuovo sistema operativo, lo Unics prima poi ribattezzato Unix, in un vecchio calcolatore PDP-7.
A questo punto la loro sete di ricerca non si fermò, ed insieme ad un terzo personaggio chiave come Brian Kernighan svilupparono un linguaggio di programmazione che rendesse possibile la scrittura del cuore – il kernel – del sistema operativo, in grado di essere eseguito su differenti macchine. Nacque così il linguaggio C, che ovviamente non sorgeva dal nulla, ma che era l’evoluzione di precedenti lavori di ricerca, Presto diventò uno strumento di programmazione fondamentale, ancora largamente usato, per la sua efficienza e per la sua adattabilità ai più disparati hardware. Assieme al kernel, ossia il nucleo del sistema operativo, Unix è stato corredato di una serie di applicazioni standard per la gestione dei file, degli utenti, e delle periferiche, che continuano ad essere usati nei sistemi operativi moderni. Tutto queste funzioni sono scritte in C e possono essere “facilmente” richiamate dallo sviluppatore.
Da Wikipedia poi ho imparato che Thompson e Ritchie elaborarono una serie di principi di programmazione:
1. si fa in modo che ogni programma faccia una sola cosa e bene;
2. ci si aspetta che l'output di un programma diventi l'input di un altro;
3. si sviluppa software con l'idea che esso verrà provato subito: non si esiti a condividere il programma;
4. si usano degli strumenti appositi nella programmazione e non si cerca di "reinventare la ruota".
Le prime applicazioni aziendali di Unix e del suo C, servirono ad automatizzare le operazioni di manutenzione degli apparati telefonici statunitensi, perché i Bell Laboratories appartenevano alla AT&T la compagnia telefonica di Stato che ne ricavò subito enormi benefici.
La compagnia telefonica, all’epoca monopolista, decise di rendere pubblico il codice del sistema Unix e una miriade di università lo acquistarono al prezzo dell’invio del supporto. Questa politica fece nascere una comunità che si ritrovò a sviluppare perseguendo obiettivi comuni. Unix, C, Dennis Ritchie favorirono questa comunità che si ritiene abbia contribuito a rendere l’informatica una vera “scienza” e non solamente un’applicazione tecnica per il conseguimento di uno scopo. Forse questa è l’importanza di Dennis e della sua caparbietà, del suo viso aperto da ricercatore senza compromessi, di ideatore senza sosta.
Il C è il cuore di Unix dunque, che a sua volta è il fondamento di Internet, ma Unix è anche il papà di Linux, ma anche il fondamento di Mac OS e ovviamente dello stesso Windows. In un blog mi è capitato di leggere una sorta di invettiva contro Steve Jobs che pareva essersi dimenticato dell’illustre progenitore.
La storia di Unix è lunga ed articolata, arriva fino ai giorni nostri ed è destinata a proseguire, rileggerla ancora mi affascina, tanto che scrivendo queste righe mi è venuta voglia di riacchiappare il mio vecchio compilatore Turbo C e scrivere la mitica printf(“Hello World!”).

Condividi

     

Commenta

ULTIMI POST