Il nostro ufficio sta diventando sempre più spesso il punto d’incontro di professionisti e amici che operano nel settore sviluppo web/nuovi media/social/ecc. Organizziamo spesso serate di discussione molto interessanti in cui idee diverse vengono condivise, discusse, smontate e rimontate. Per me, che da anni lavoro sotto la cupola di Microsoft è anche il momento in cui toccare con mano altri mondi per capire cosa c’è davvero fuori dalla “finestra”.
Ci troviamo ognuno con il proprio dispositivo in mano che va da una strana distribuzione Linux a Mac OS X fino a Windows, Android e tutti condividiamo grazie alle Google Apps i documenti, le slide e le discussioni online. Questa situazione che possiamo definire “multietnica-digitale”, mi ha portato ad una riflessione: che importanza ha oggi il sistema operativo? Nulla, zero.
Mi accorgo che a parte i momenti in cui devo sviluppare un’applicazione .NET nel restante tempo utilizzo svariati dispositivi per lavorare/documentarmi/giocare ognuno con un suo sistema operativo.
L’importanza che aveva anni fa si è assottigliata quasi a zero e sempre più spesso l’unico programma utilizzato è un browser con il quale accedo e uso le mie applicazioni. In altri casi è quasi sempre un’applicazione client di un’applicazione web come accade per le app dell’iPhone.
Cosa vuol dire per noi programmatori?
Che Silverlight sia clinicamente morto mi sembra abbastanza chiaro, scegliere oggi di sviluppare un’applicazione legata solo ad una specifica piattaforma è quasi sicuramente un suicidio e un’errata visione del futuro. Sempre più spesso tra i requisiti c’è la necessità di far girare l’applicazione su Mac OSX perchè il direttore usa un Mac oppure la versione iPad perchè gli agenti usano quello per andare dai clienti.
Quindi la soluzione, e questo Google lo dice da anni, è il web, l’unica vera lingua franca che mette d’accordo tutte le piattaforme e, grazie ai nuovi browser che oggi sono delle vere e proprie virtual machine per far girare codice javascript, i limiti del web restano davvero pochi.
Quindi HTML5, Javascript e CSS3 ci supportano benissimo nella realizzazione di applicazioni che possono risultare indistinguibili da una normale applicazione installata sulla propria macchina con il vantaggio di essere indipendente dalla piattaforma e accessibile ovunque e da qualsiasi client. Certo, noi dev, dobbiamo studiare quella “roba da designer” e so che per alcuni amici non è un’opzione valida (ne riparleremo, io sto studiando).
Altri segnali di questa mia previsione è il mondo OSS che è quasi al 100% legato al web. Oggi si parla tanto di CoffeeScript, SASS, LessCSS, Node.js, Backbone.js, Sproutcore, Cloud9, Redis,… tutte tecnologie e strumenti che il programmatore Microsoft non conosce ma che farebbe bene a guardare (e anche di questo ne riparleremo).
Naturalmente questa è la mia visione, quindi vale IMVVHO ma i segni del mercato mi sembrano chiari e che vi piaccia o meno Google e Apple hanno fatto cambiare i piani a Microsoft che si trova oggi ad inseguire con il fiato sempre più corto.
Ma come si dice….”chi vivrà vedrà”