18 maggio 2010

Il diverso scorrere del tempo

Sto mettendo mani ad una applicazione abbandonata, sviluppata da altri, di cui non resta praticamente nessuna documentazione. Essendo ancora in produzione, è il caso di aprirla e vedere come funziona e quindi eccomi qua.

È un'applicazione Java, ufficialmente di pochi anni fa. Voci dicono che nella realtà si tratti di un restyling di un ritaglio di una applicazione originariamente risalente al periodo 1999-2000.

Quando ho iniziato l'attività non lo sapevo e mi stupivo di scelte che mi sembravano datate anche per quando ho iniziato a lavorare io (2000) e di approcci che mi pareva fossero concettualmente non aggiornati per quando ero all'università ('95-'01).
Adesso sapendo che l'applicazione è di quel periodo, quindi sviluppata prima e pensata ancor prima, non sono più stupito: tutto torna. Era al passo coi tempi.

Al passo coi tempi significa solo 10 anni fa. Nel mondo non è cambiato molto, in Italia ancora meno...abbiamo anche lo stesso imbarazzante presidente del consiglio, che del resto avevamo anche 5-6 anni prima.

Nel mondo dell'informatica è cambiato tutto. Nel mondo del web si stenta a riconoscere che sia la stessa epoca storica.

All'epoca c'era java 1.2 e non da molto. Probabilmente il prodotto ha iniziato a essere pensato con la 1.1. Era stata rilasciata da poco, o forse addirittura in corsa, la specifica delle Servlet, ma non ancora di JSP. Difficile ricordare un mondo così. Effettivamente leggendo il codice sembra di vedere l'approccio alla CGI in Perl che andava in voga prima dei vari template per il rendering.

C'era già JDBC, per fortuna. Muoveva i primi passi XML come standard di fatto.

Mi sono chiesto a che punto fosse la concorrenza all'epoca. ASP da un lato, PHP dall'altro. ASP era avanti, come mi racconta un collega che all'epoca aveva seguito le vicende web e il tentativo di Sun di non far schiacciare la sua piattaforma da Microsoft. PHP era avanti anni luce, per funzionalità, ma anche per storia; purtroppo è sempre stato fuori dall'ambiente enterprise e all'epoca questo era anche per filosofia del linguaggio stesso. Java, dunque, ma forse Perl sarebbe stata un'alternativa non meno valida. Il campione uscente della programmazione web stava già perdendo visibilmente terreno, ma era pur sempre la scelta "nota".

Non era ancora chiaro infatti, all'epoca, che Java sarebbe diventato il mostro a più teste che è oggi. Muovevano i (primi? ultimi? )passi in quei tempi decine di alternative, spesso proprietarie. Il mondo non aveva ancora scelto di basarsi su pochi standard concorrenti e preferiva ancora soluzioni tecnologiche ad hoc.

Parlando con una amica domenica alla festa di Gaia riflettevo su come un tempo l'unico grande metro di paragone fossero le prestazioni, perché erano limitate. Adesso le prestazioni offerte da workstation neppure troppo d'avanguardia sopravanzano di gran lunga le esigenze di singole applicazioni e le prestazioni sono passate in secondo piano rispetto alla flessibilità.

Prestazioni contro manutenibilità contro flessibilità (e chi pensa che manutenibilità e flessibilità siano parenti ha una idea molto ridotta o del concetto di flessibilità o di quello di manutenibilità).
La filosofia è cambiata molto e il peso delle tre componenti è cambiato radicalmente.

Sembra che abbia fatto un trattato di storia sugli anni '60 o forse anche più. Che abbia raccontato di un mondo che la mia generazione non ha mai visto. Invece sono solo 10 anni, come se il tempo della vita e quello dell'informatica corressero su binari separati.


Nessun commento:

Posta un commento