L’ iPhone ha compiuto 5 anni, 5 anni di rivoluzione nei devices e nelle user interfaces consumer, dilagata anche, c’era da aspettarselo, nel mercato d’impresa. E come in ogni rivoluzione segue un periodo di confusione, di annunci a raffica, di battaglia per la leadership di mercato.Apple ne ha vinte diverse, inventando lo smartphone e il tablet, le splendide interfacce User Experience, il multitouch. Ha vinto la battaglia silenziosa con Adobe riguardo al Flash Player, non accogliendolo nei propri sistemi operativi (non l’ha avuta vinta però con Google, che per Youtube utilizza e utilizzerà i video player in Flash, e Apple è stata costretta a deroga nei propri s.o. per accedere ai video!).
A causa della battaglia persa, Adobe abbandona il Flash Player non più strategico, anche se, ancora oggi, è la migliore e più diffusa virtual machine grafica in assoluto, e ha consegnando il web a tecnologie più gradite a motori di ricerca, al SEO e ai tablets: html 5 , js, web kit, webgl, tecnologie già molto diffuse anche se non ancora mature; Ma Adobe si tiene ben stretto il Flash Player riproponendolo sempre più migliorato all’ interno di AIR, che vanta di essere uno dei migliori e strutturati ambienti di sviluppo di app grafiche e games per desktop, tablet e smartphone.
I nuovi devices entrano di autorità nelle aziende sempre alla ricerca di innovazione ed opportunità. Gli IT aziendali si trovano di fronte a dover implementare applicazioni verso i nuovi device, e così come accadde quando arrivò Windows in azienda, seguito a breve dal web, si vedono moltiplicate le necessità di ambienti di sviluppo applicativo. Quale scegliere?? I fattori di scelta sono aumentati: applicazioni per desktop, per tablet, per il web, per gli smartphones; applicazioni per Windows, Linux, Mac; per Android, iOs, BlackBerry, .. e per il Web.
Ogni vendor propone il proprio ambiente di sviluppo, da .NET di Microsoft a Objective C per iOs etc.. ma risulta evidente che non si possono imporre alle aziende ambienti di sviluppo applicativo eterogenei, occorre quindi l’ambiente di sviluppo trasversale, che consenta di realizzare front-end indipendenti dal device e dal s.o. Il web browser, che già nasce con questa caratteristica è visto da molti come risposta all’esigenza di client universale, e le recenti evoluzioni di HTML ne sono in parte la risposta, ma.. (c’è sempre un ma!), esistono diverse marche di browser (per cronaca ad oggi Chrome è il più diffuso col 33% delle installazioni, seguito da Firefox e IE, ca. 25%), e di ognuno esistono diverse versioni. E’ molto complesso realizzare applicazioni web adatte a tutti i browser e loro versioni, lo sanno bene gli sviluppatori di siti, e ancora di più lo sta diventando con HTML5 e JS, che pur essendo una tecnologia già molto diffusa, è giovane, diversi bug presenti, di difficile debugging, e dalle prestazioni non sempre gratificanti.
Tenendo presente che gli obbiettivi primari degli IT aziendali riguardanti gli ambienti di sviluppo, sono produttività, diffusione, continuità, la sensazione (N.d.A.) è che il browser, HTML e JS non siano gli strumenti più adatti per il deploy applicativo, ma tant’è, non essendoci una alternativa altrettanto “universale”, che molte aziende si stanno muovendo in questa direzione aiutati dal fatto ulteriore della presenza di infinite librerie opensource (..che però non sempre significa gratis, né eterni!)
Le alternative stanno evolvendosi rapidamente, il menzionato AIR, framework come SENCHA, e diversi altri, che consentono di scrivere un’unica applicazione per ogni tipo di device (fatti i distinguo per l’integrazione di periferiche native device-dependent). Tali ambienti utilizzano come client il browser, o generano eseguibili nel linguaggio nativo del s.o. ospite (con conseguente onere però del deploy dell’ applicazione e relative manutenzioni).
Oggi è ormai diventato uso comune per l’utente “scaricare la app” per il proprio device sia questi uno smartphone o un tablet, che il desktop domestico o aziendale; non deve più spaventare dunque l’initial deployement.
Dunque, l’utente si troverà ad aprire un browser, e collegarsi all’applicazione desiderata, oppure dovrà navigare tra tante app installate, e scegliere quella desiderata?
In ultimo, ma non meno importante, va inoltre considerato un ampio mercato di ERP e applicazioni gestionali di nicchia sviluppate con user interfaces proprietarie (ad.es. su piattaforma IBM Power), che necessitano di modernizzazione e di maggiore integrazione in scenari IT a più ampio respiro, per i quali sono nati diversi tools di “webbizzazione” di difficile integrazione con l’innovazione visuale di oggi.
Di fatto, ad oggi nessun vendor propone il frame work visuale universale per eccellenza, centralizzato e dotato di client specifico, a parte alcuni interessanti frameworks prodotti da piccole e dinamiche realtà; il nostro Framework Prodigyt si colloca tra queste ultime, con un pizzico di ambizione, con l’obbiettivo di diventare una risposta strategica alle esigenze aziendali attuali e del prossimo futuro.