Java è il linguaggio di programmazione web più utilizzato da informatici e web designer, ma chi fu il suo inventore? Oggi andremo alla scoperta di James Gosling, uno dei padri dell’informatica moderna. 

James Gosling , nato nel 1955, è un informatico canadese noto in tutto il mondo per essere l’inventore principale del linguaggio di programmazione Java, anche se al progetto in realtà parteciparono anche altri personaggi di spicco dell’ambiente di ricerca dell’epoca.

Big Data Analyst
GEEKS ACADEMY
2.800 €
Vedi di più
Cybersecurity & Cloud Specialist Mastery
GEEKS ACADEMY
8.450 €
Vedi di più

La vita di James Gosling

Nacque a Calgary (Alberta), in Canada, 19 maggio 1955. Dopo aver concluso il ciclo scolastico superiore si iscrive all’Università di Calgary, dove otterrà prima un Bachelor of Science nel 1977 e successivamente un PhD in Scienze Informatiche con una tesi intitolata “The Algebraic Manipulation of Constraints”.

Muove i primi passi nel mondo del lavoro nel colosso IBM, nel 1984 inizia a lavorare nella neonata Sun Microsystems, un’azienda della Silicon Valley produttrice di software e semiconduttori. È proprio qui che avanzerà la sua carriera, ricoprendo inizialmente il ruolo di ingegnere capo del progetto NeWS window system, per diventare poi, nel corso degli anni, vice presidente e socio.

È  proprio durante i suoi anni presso Sun Microsystem che Gosling continua a lavorare allo sviluppo del “suo” linguaggio di programmazione Java. Il progetto prenderà una forma ufficiale solo nel 1995. Gosling lavorerà per Sun Microsystem, fino al 2020 quando l’azienda viene acquistata da Oracle Corporation, avvenuta il 27 gennaio 2010. Già il 2 aprile dello stesso anno, Gosling rassegna le sue dimissioni alla Oracle, commentando il fatto sul suo blog con un sibillino “As to why I left, it’s difficult to answer: Just about anything I could say that would be accurate and honest would do more harm than good. ” – “per quanto riguarda il motivo per cui me ne sono andato è difficile da spiegare: diciamo che qualsiasi cosa possa dire a proposito farebbe più danno che bene”.

Nel marzo 2011 Gosling comincia la sua esperienza presso Google, ma durerà soltanto un anno. Nel 2011, infatti, Gosling annuncia di aver incontrato e deciso di iniziare a lavorare per della gente “che fa della roba incredibilmente pazzesca”: la Liquid Robotics.

La Liquid Robotics progetta dei robottini chiamati Wave Glider, in grado di navigare gli oceani in autonomia (anche per mesi!) alimentati a pannelli solari e in grado di estrarre energia e propulsione dal moto ondoso, equipaggiati con un gran numero di sensori che consentono di raccogliere n. tipi di dati sugli oceani, comunicare ai satelliti a cui sono collegati e caricarli nel cloud. Un progetto davvero innovativo e per il quale Gosling lavorerà per ben 6 anni in qualità di Chief Software Architect. fino Nel 2017 si trasferisce presso Amazon Web Service in qualità di Distinguished Engineer.

JAVA

Gli anni trascorsi alla Sun Microsystem sono decisivi per Gosling, è nel 1991 che partecipa al progetto “Oak”, insieme ai colleghi Mike Sheridan e Patrick Naughton. Il nome Oak fu scelto in onore di una grande quercia presente davanti all’ufficio di Gosling. Per problemi di copyright il progetto cambiò nome in “Green” successivamente in Java: esisteva già un linguaggio di programmazione chiamato Oak.

Java era in realtà la qualità di caffè che gli sviluppatori e gli informatici di Sun Microsystems erano soliti consumare nelle primissime fase di realizzazione del linguaggio di programmazione, il suo nome era legato proprio al suo luogo di origine, l’Indonesia.

Per semplificare l’accesso al nuovo linguaggio da parte dei programmatori meno esperti, venne mantenuta la sintassi di base di C e C++, ma sono state rimosse alcune criticità ritenute facile fonte di bug o di confusione, quali l’aritmetica dei puntatori e l’ereditarietà multipla delle classi.

Il progetto di Java nasceva con l’obiettivo di creare una sorta di interazione con la televisione, ma risultò impossibile con le apparecchiature via cavo dell’epoca. Sun Microsystems decise quindi di adattare questo nuovo linguaggio alla creazione di complesse applicazione per piccoli dispositivi elettronici. L’evento chiave che cambió in maniera radicale il futuro di Java fu proprio l’inaspettata espansione di Internet nel 1993, da quel momento Java cominció ad essere utilizzato come strumento per la programmazione su Internet.

Gosling è dunque il team manager del progetto originale di Java, oltre ad essere il compilatore originale e, nel 1994, la prima Java Virtual Machine che consente a un computer di eseguire programmi scritti sia in Java sia in altri linguaggi tradotti in bytecode dopo una prima fase di compilazione. La data di lancio ufficiale di Java fu il  23 maggio 1995 a SunWorld, e fu l’inizio di un successo senza fine.

Non passò molto tempo prima che la Netscape Corporation decise di equipaggiare il suo browser con la Java Virtual Machine, il che permise alle pagine web di diventare interattive a livello client, con le applicazioni che venivano eseguite direttamente sul computer dell’utente e non più su un server remoto: una vera e propria rivoluzione.

Gosling continuò a lavorare allo sviluppo di Java e contribuì alla realizzazione di Real-Time Specification per Java.

Nel 1996 venne pubblicato “The Java Language Specification (JLS)” un documento che definisce tutte le specifiche del linguaggio di programmazione; questo documento viene costantemente aggiornato con le nuove apportazioni date dagli update più recenti, come “Java SE 11 Edition” è stata pubblicata a fine 2018.

I 5 obiettivi primari che hanno guidato il progetto Java sono stati creare un linguaggio:

    1. semplice, orientato agli oggetti e familiare;
    2. robusto e sicuro;
    3. indipendente dalla piattaforma;
    4. contenere strumenti e librerie per il networking;
    5. progettato per eseguire codice da sorgenti remote in modo sicuro

LA RIVOLUZIONE DI JAVA 

Java è un linguaggio di programmazione generico, basato su classi, orientato agli oggetti e progettato per avere il minor numero possibile di dipendenze di implementazione. La sua principale caratteristica è che gli sviluppatori di applicazioni possano scrivere il codice una sola volta, compilarlo e poi eseguirlo ovunque, il cosiddetto principio WORA, ovvero WRITE ONCE RUN ANYWHERE. In parole povere, un codice Java può essere eseguito su tutte le piattaforme che supportano il linguaggio senza necessità di ricompilazione.

Questa caratteristica è detta portabilità e rappresenta la vera grande rivoluzione introdotta da JAVA, ovvero l’ indipendenza quasi totale dalla piattaforma hardware su cui viene eseguito.

In realtà la portabilità presenta anche dei limiti e dei problemi. Infatti, sebbene sia veramente possibile scrivere in Java programmi che si comportano allo stesso modo su diverse piattaforme hardware, è pur vero che questi programmi dipendono da macchine virtuali, ognuna con le proprie caratteristiche e soggetta a bug. E da qui che nasce la rivisitazione del famoso slogan WORA “Write Once Run Anywhere”, che è stato riproposto come WODA “Write Once, Debug Anywhere”.

Quando nel 1994 il World Wide Web stava diventando enorme, Gosling e gli altri colleghi alla SUn Microsystems si resero conto di poter costruire un browser, in cui mettere insieme una serie di cose più o meno scampagnate che avevano creato fino ad allora. “Un browser” dichiara Gosling, “equivaleva a qualcosa che creasse mercato per strumenti, server, ambienti di sviluppo […]: con Java, il WWW smette di essere un pezzo di carta digitale e diventa una piattaforma”. Questo per dire che … insomma, fin quando non c’è mercato per un’invenzione, questa è abbastanza inutile, agli occhi di chi ci deve investire (la storia più vecchia del mondo).

A partire dal 2006 la Sun Microsystems distribuisce l’implementazione del compilatore Java e della macchina virtuale sotto licenza GPLGeneral Public License; l’ambiente Java libero si chiama IcedTea e uno dei più famosi compilatori Java creati al di fuori di Sun Microsystems è GNU Compiler per Java. L’anno seguente Sun ha terminato il processo di pubblicazione, rendendo disponibile tutto il codice della sua JVM sotto condizioni di distribuzione di software libero o open source, a parte una piccola parte di codice di cui non deteneva il copyright.

PREMI E CURIOSITÀ

La lunga e ricca carriera di James Gosling gli ha valso il conferimento di numerosi premi, tra i più prestigiosi: The Economist Innovation Award, The Flame Award USENIX Lifetime Achievement Award, Officer of the Order of Canada, a fellow of the Association for Computing Machinery, the IEEE John von Neumann Medal.

A questi importanti traguardi Gosling risulta anche essere detentore di una lunga lista di brevetti, dei quali però vi parleremo in un secondo articolo. Nel 2011 Gosling si trovava alla Reno Air Races, il campionato nazionale di aviazione americana, ad appena una 30ina di metri dal luogo dove il Galloping Ghost si schiantò in un incidente orribile, uccidendo il pilota, 10 spettatori e ferendo numerose persone. 

Lasciati ispirare dalla favolosa personalità di James Gosling e sviluppa il tuo lato da programmatore con i corsi dell’area CODING offerti da Geeks Academy!  Ti piacerebbe ricevere maggiori informazioni? Mettiti in contatto con lo staff Emagister, sapremo consigliarti il corso più adatto alle tue esigenze professionali.

Artificial Intelligence con Python
GEEKS ACADEMY
2.800 €
Vedi di più
AI & Big Data Specialist Mastery Program
GEEKS ACADEMY
8.950 €
Vedi di più

Lascia un Commento

Vuoi partecipare alla discussione?
Sentitevi liberi di contribuire!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *