Mokabyte

Dal 1996, architetture, metodologie, sviluppo software

  • Argomenti
    • Programmazione & Linguaggi
      • Java
      • DataBase & elaborazione dei dati
      • Frameworks & Tools
      • Processi di sviluppo
    • Architetture dei sistemi
      • Sicurezza informatica
      • DevOps
    • Project Management
      • Organizzazione aziendale
      • HR
      • Soft skills
    • Lean/Agile
      • Scrum
      • Teoria della complessità
      • Apprendimento & Serious Gaming
    • Internet & Digital
      • Cultura & Società
      • Conferenze & Reportage
      • Marketing & eCommerce
    • Hardware & Tecnologia
      • Intelligenza artificiale
      • UX design & Grafica
  • Ultimo numero
  • Archivio
    • Archivio dal 2006 ad oggi
    • Il primo sito web – 1996-2005
  • Chi siamo
  • Ventennale
  • Libri
  • Contatti
Menu
  • Argomenti
    • Programmazione & Linguaggi
      • Java
      • DataBase & elaborazione dei dati
      • Frameworks & Tools
      • Processi di sviluppo
    • Architetture dei sistemi
      • Sicurezza informatica
      • DevOps
    • Project Management
      • Organizzazione aziendale
      • HR
      • Soft skills
    • Lean/Agile
      • Scrum
      • Teoria della complessità
      • Apprendimento & Serious Gaming
    • Internet & Digital
      • Cultura & Società
      • Conferenze & Reportage
      • Marketing & eCommerce
    • Hardware & Tecnologia
      • Intelligenza artificiale
      • UX design & Grafica
  • Ultimo numero
  • Archivio
    • Archivio dal 2006 ad oggi
    • Il primo sito web – 1996-2005
  • Chi siamo
  • Ventennale
  • Libri
  • Contatti
Cerca
Chiudi

Nel numero:

Ventennale

Dinosauri e Jedi

Ere geologiche, dinosauri, programmatori Java e Cobol

Luca Vetti Tagliati

Luca Vetti Tagliati

Luca Vetti Tagliati ha conseguito il PhD presso il Birkbeck College (University of London) e, negli anni, ha applicato la progettazione/programmazione OO, Component Based e SOA in diversi settori che variano dal mondo delle smart card a quello del trading bancario, prevalentemente in ambienti Java EE. Dopo aver lavorato a lungo nella City di Londra per le più importanti banche di investimento (Goldman Sachs, Lehman, Deutsche Bank, UBS, HSBC) ricopre attualmente l'incarico di Senior Lead Global Architect per importanti gruppi bancari nel sud della Svizzera. Ha collaborato attivamente con John Daniels (coautore del libro "UML components") e Frank Armour (coautore del libro "Advanced Use Case Modeling"). È autore del libro "UML e ingegneria del software", pubblicato nel 2003 da HOPS/Tecniche Nuove, di "Java Best Practice: i migliori consigli per scrivere codice di qualità", pubblicato nel 2008 dal medesimo editore, e dell'ebook "Verso Java 8. Appunti per lo sviluppatore in Java SE 7" pubblicato da MokaByte e scaricabile dal nostro sito. È stato invitato a Los Angeles e Boston per presentare i suoi paper in convegni inerenti Software Engineering & Architecture. Nel 2015 ha ricevuto il prestigioso ICMG Award.

MokaByte 1996–2016 ventennale

Dinosauri e Jedi

Ere geologiche, dinosauri, programmatori Java e Cobol

Luca Vetti Tagliati

Luca Vetti Tagliati

Correva l’anno del Signore 1995… L’intera comunità informatica era in fermento per l’avvento di un nuovo Jedi chiamato Java… Tutti ne parlavamo, molti pensavano di conoscerne tutti i dettami… Alla fine erano come un gruppo di adolescenti che parlava di sesso: nessuno in realtà lo aveva mai fatto.

Mi sentivo ormai appagato dalla conoscenza del 60-70% del linguaggio C++, seppur su piattaforma MS e con lunghissime sezioni introduttive di #ifdef. Pertanto guardavo a questo nuovo Jedi un po’ dall’alto in basso: “Ecco l’ennesimo linguaggio… ma non ne abbiamo già abbastanza? E poi cosa c’è che non va in C++?”.

Con tutte le avversioni del caso, volente o nolente, fui costretto a studiare Java. E già… c’è sempre un cliente che richiede l’ultima tecnologia, anche se poi non la conosce e magari non ne ha veramente bisogno. Eppure, come spesso accade nella migliore tradizione dei film americani dove il lieto fine è d’obbligo, tra noi due sarebbe nato un grande amore, o meglio una magnifica corrispondenza di amorosi sensi…

Mentre Internet faceva passi da gigante diffondendosi a macchia d’olio e la comunità informatica festeggiava l’arrivo di potere di esecuzione al lato browser (le famose Applet), gli addetti ai lavori invece avevano già capito la grande innovazione del linguaggio che lo rendeva uno strumento straordinario per le implementazioni di servizi al lato server… E così, anche il server side non fu più terra di desolazione per nerd, ma un ambiente assolutamente sexy!

Java, oltre che per gli aspetti tecnici, mieteva adepti anche e soprattuto per una serie di aspetti politico–sociali… Basti menzionare che alla metà degli anni Novanta la visione della “mitica” Sun Microsystem  — che non è una leggenda, ma è esitita veramente — era in netta contrapposizione rispetto alle strategie, considerate da molti monopolistiche. della Microsoft, sebbene sempre abbinate alla sequenza CTRL ALT DEL.

Per molti simpatizzanti dell'”Alleanza Ribelle”, la piattaforma Java diventò ben presto la Forza, ponendo una seria minaccia al mondo Microsoft. La paura iniziò a serpeggiare dal “lato oscuro della Forza” tanto che uno “spaventato” Bill Gates si espresse con la famosa frase “[Java] scares the hell out of me”. La piattaforma Java, congiuntamente a Unix, divenne ben presto un polo ben riconoscibile intorno al quale si potevano coalizzare le forze favorevoli all’Open Source. Si trattava dell’ennesima lotta tra David e Golia, favorita peraltro dalla grande mossa di rendere disponibili in Internet i sorgenti di Java e di molti dei suoi componenti.

Oltre a questi elementi “politici”, vi erano anche molti aspetti tecnici assolutamente interessanti, o almeno percepiti come tali agli albori… Però non si trattava di una rivoluzione, ma di una evoluzione, già a partire dalla sintassi molto simile al C. Tuttavia si cercava di imparare dagli errori del passato — aspetto sempre molto saggio — spesso compiendone altri, e di eliminare molte difficoltà riconosciute ai linguaggi esistenti come l’allocazione/deallocazione della memoria o l’aritmetica dei puntatori, introducendo molte novità tra le quali anche il supporto nativo al multi-threading, nonostante emergesse ben presto come il disegno iniziale non fosse stato esattamente un colpo di genio. Tutti questi fattori facevano sì che Java fosse un “linguaggio di facile comprensione, flessibile, divertente, deterministico e non intimidatorio”: parola del padre James Gosling, versetto secondo…

Tuttavia, agli inizi non erano tutte rose e fiori, anzi… Le versioni iniziali, sebbene presentassero molte interessanti potenzialità, erano appunto… versioni iniziali, ancora un po’ acerbe. Il package AWT soffriva di molte limitazioni, a partire dal fatto che violava la filosofia base di Java (WORA, Write Once Run Anywhere). Il controllo della user interface era limitato e le corrispondenti interfacce peccavano di mancanza di stabilità; non c’era il supporto per la connessione a database (JDBC acronimo non ufficiale per Java DataBase Connectivity, connettività al database di Java) o meglio ne esisteva una versione embrionale esterna; non erano ancora state incluse le feature dell’internazionalizzazione, della localizzazione, non esisteva il framework Remote Method Invocation (RMI, invocazione di metodo remoto) né la serializzazione; era assente il costrutto delle inner class; il Just-In-Time (JIT) era più un sogno che una realtà. Inoltre, alcune implementazioni della VM erano fondamentalmente sbagliate, come la versione di Linux in cui i Thread Java furono mappati ai processi OS creando grossi problemi di performance e di risorse.

Erano i tempi dei pionieri, delle invenzioni, della programmazione di framework per vera necessità e non per vizio, del periodo eroico della creazione e diffusione di Java (che a MokaByte tanto deve)… In quei tempi tutti gli sviluppatori degni della parola senior disegnarono e implementarono soluzioni di Thread Pooling, e più in generale di pooling delle risorse, embrioni di cache distribuita, convertitori tra il mondo OO e relazionale, framework per la creazione di GUI, e così via… Periodi di incosciente eroicità.

Da allora, molta acqua è passata sotto i ponti e non sempre si è trattato di acqua cristallina…

La versione J2SE 1.4 fu rilasciata il 6 febbraio del 2002 con il nome di Merlin. Si tratta di una versione che ha fatto la storia di Java in quanto è stata la prima major release sviluppata attraverso il Java Community Process (JCP, processo della Java Community).

Nel gennaio del 2010, Sun Microsystem è stata acquisita da Oracle Coporation con un accordo da 7.4 miliardi di dollari. Il 2 aprile del 2010 James Gosling, da molti considerato il padre di Java, annunciò il suo abbandono, e da quell’evento sono seguite ancora altre vicende, fino al momento attuale.

Il modo di lavorare in Java è a sua volta cambiato drasticamente. Solo persone con pochissima esperienza si imbarcherebbero nel disegno e nell’implementazione di framework… Per ogni problema è possibile trovare almeno una decina di soluzioni, non manca più nulla: application server ed ESB implementati in Java, mobile application, cache distribuite, soluzioni per i big data. Si è arrivati al punto in cui è veramente possibile concentrarsi sulla business logic integrando soluzioni infrastrutturali. La stessa comunità IT si è automatizzata — il proverbiale calzolaio ha iniziato a sistemarsi le suole delle scarpe — con tutto un fiorire di soluzioni che si autoprogrammano. È altresì vero che anche i sistemi sono cresciuti esponenzialmente di complessità: ogni sistema si connette con almeno altri dieci, magari presenti dall’altra parte del mondo, e deve processare almeno centinaia di GigaByte di dati, tutto in pochi secondi, geolocalizzando l’utente…

E chi scrive si sente un po’ una sorta di neo-tirannosauro, che utilizza ancora le arcaiche email, e che ricorda tanto i tecnici dal camice bianco che decantavano i meriti del Cobol. I nuovi meteoriti sono già precipitati.

Facebook
Twitter
LinkedIn
Luca Vetti Tagliati

Luca Vetti Tagliati

Luca Vetti Tagliati ha conseguito il PhD presso il Birkbeck College (University of London) e, negli anni, ha applicato la progettazione/programmazione OO, Component Based e SOA in diversi settori che variano dal mondo delle smart card a quello del trading bancario, prevalentemente in ambienti Java EE. Dopo aver lavorato a lungo nella City di Londra per le più importanti banche di investimento (Goldman Sachs, Lehman, Deutsche Bank, UBS, HSBC) ricopre attualmente l'incarico di Senior Lead Global Architect per importanti gruppi bancari nel sud della Svizzera. Ha collaborato attivamente con John Daniels (coautore del libro "UML components") e Frank Armour (coautore del libro "Advanced Use Case Modeling"). È autore del libro "UML e ingegneria del software", pubblicato nel 2003 da HOPS/Tecniche Nuove, di "Java Best Practice: i migliori consigli per scrivere codice di qualità", pubblicato nel 2008 dal medesimo editore, e dell'ebook "Verso Java 8. Appunti per lo sviluppatore in Java SE 7" pubblicato da MokaByte e scaricabile dal nostro sito. È stato invitato a Los Angeles e Boston per presentare i suoi paper in convegni inerenti Software Engineering & Architecture. Nel 2015 ha ricevuto il prestigioso ICMG Award.

Luca Vetti Tagliati

Luca Vetti Tagliati

Luca Vetti Tagliati ha conseguito il PhD presso il Birkbeck College (University of London) e, negli anni, ha applicato la progettazione/programmazione OO, Component Based e SOA in diversi settori che variano dal mondo delle smart card a quello del trading bancario, prevalentemente in ambienti Java EE. Dopo aver lavorato a lungo nella City di Londra per le più importanti banche di investimento (Goldman Sachs, Lehman, Deutsche Bank, UBS, HSBC) ricopre attualmente l'incarico di Senior Lead Global Architect per importanti gruppi bancari nel sud della Svizzera. Ha collaborato attivamente con John Daniels (coautore del libro "UML components") e Frank Armour (coautore del libro "Advanced Use Case Modeling"). È autore del libro "UML e ingegneria del software", pubblicato nel 2003 da HOPS/Tecniche Nuove, di "Java Best Practice: i migliori consigli per scrivere codice di qualità", pubblicato nel 2008 dal medesimo editore, e dell'ebook "Verso Java 8. Appunti per lo sviluppatore in Java SE 7" pubblicato da MokaByte e scaricabile dal nostro sito. È stato invitato a Los Angeles e Boston per presentare i suoi paper in convegni inerenti Software Engineering & Architecture. Nel 2015 ha ricevuto il prestigioso ICMG Award.
Tutti gli articoli
Nello stesso numero
Loading...

I miei 20 anni con MokaByte

Anni passati molto velocemente anche se poi sono successe un sacco di cose.

MokaAmarcord

Nascita e crescita di una filosofia social quando non c'erano i social

Due decadi di MokaByte

I venti anni di MokaByte passati insieme ad Andrea Gini

20 anni di informatica sono tanti

Storia di una sistema che negli anni ha vissuto molteplici trasformazioni

Dalle portlet ai tablet

Un lungo viaggio, non ancora terminato

How I did it

Storia di Java vista dall'università

Cambiare tutto per non cambiare niente

20 anni di corsi e ricorsi storici....

I tre moschettieri… venti anni dopo

Storia raccontata da uno dei fondatori della rivista

Dal Symantec Café all’intelligenza artificiale

Un punto di vista imprenditoriale sulla vita della rivista

Ottobre 1996 – come tutto ebbe inizio (e come poi è proseguito)

La storia di MokaByte dai primissimi vagiti ad oggi

Mokabyte

MokaByte è una rivista online nata nel 1996, dedicata alla comunità degli sviluppatori java.
La rivista tratta di vari argomenti, tra cui architetture enterprise e integrazione, metodologie di sviluppo lean/agile e aspetti sociali e culturali del web.

Imola Informatica

MokaByte è un marchio registrato da:
Imola Informatica S.P.A.
Via Selice 66/a 40026 Imola (BO)
C.F. e Iscriz. Registro imprese BO 03351570373
P.I. 00614381200
Cap. Soc. euro 100.000,00 i.v.

Privacy | Cookie Policy

Contatti

Contattaci tramite la nostra pagina contatti, oppure scrivendo a redazione@mokabyte.it

Seguici sui social

Facebook Linkedin Rss
Imola Informatica
Mokabyte