Il futuro è OWA

by Luca Baldini on 2 novembre 2010

 Cell Phones Work Here

Qualche anno fa, quando iniziai a leggere di Offline Web Application, mi chiedevo se fosse davvero necessario parlarne. Allora pensavo che con il passare del tempo tutti saremmo stati online 24 ore su 24 e in qualunque luogo ci fossimo trovati per cui non ci sarebbe stato bisogno di gestire il fatto che il server non potesse essere raggiungibile.

Oggi riconosco che questo non è avvenuto. Anzi siamo ben lontani dall’avere connettività sempre e dovunque. Quando dico questo non penso solo a coloro che viaggiano in aereo (diverse compagnie offrono connettività WiFi anche durante il volo) ma anche e soprattutto a chi, come me, rimane sulla terra ferma. Sto pensando a chi viaggia in treno, a chi staziona all’interno di un centro commerciale, di una sala cinematografica, di un teatro o chi viaggia in metropolitana. Sto pensando anche a chi, come me, si muove sulle colline bolognesi e trova zone dove non vi è copertura.

Ecco perché, quando abbiamo approcciato il problema di applicazioni per dispositivi mobili (iPhone, iPad e presto tutti gli altri), ci siamo posti il problema di rendere le applicazioni web fruibili anche quando non vi è connettività.

Per questo motivo, già nella versione 9.5 di Instant Developer, abbiamo introdotto un supporto limitato alla modalità offline. In particolare è possibile gestire sia il caso che la connettività sparisca improvvisamente sia il fatto che l’utente voglia andare in modalità offline in un determinato momento perché prevede di trovarsi presto in una zona in cui non vi è segnale. In entrambi i casi l’applicazione, da quel momento in poi, memorizza all’interno del browser tutto ciò che l’utente fa e, non appena la connettività torna disponibile, comunica al server web tutti i dati necessari alla risincronizzazione.

L’applicazione iSpesa, sviluppata con Instant Developer, utilizza questa funzionalità e vi permette di continuare a fare la spesa anche se nel supermercato in cui vi trovate non vi è segnale.

Pensate che tutto questo riguardi solo applicazioni per cellulari? Io penso di no. Quando parlo di applicazioni disconnesse, infatti, non mi riferisco solo ad applicazioni che girano su cellulare e funzionano quando non c’è connettività. Penso anche ad applicazioni più veloci e responsive perché memorizzano i dati nella memoria del browser e contattano il server solo quando serve, magari in maniera asincrona. Per cui penso anche ad applicazioni web che utilizzano l’infrastruttura OWA messa a disposizione dai browser per essere sempre più veloci anche su PC sempre connessi.

Una curiosità: il Massachusetts Institute of Technology, nel 2008, ha inserito le OWA nella lista delle 10 tecnologie che, con molta probabilità, cambieranno il nostro modo di vivere assieme al transistor a grafene e alla witricity.

Sono curioso di conoscere il vostro parere. Cosa ne pensate?

Immagine: The Route One for Life Project

{ 8 comments… read them below or add one }

1 Davide 2 novembre 2010 alle 14:40

Molto interessante (tra l’altro me ne hanno chiesta una proprio in questi giorni…) “Kevin Lynch, chief software architect at Adobe Systems” mi sembra comunque un po’ di parte :)

2 Luca Baldini 2 novembre 2010 alle 15:14

@Davide ti hanno chiesto un’applicazione offline? Bene, allora andiamo nella direzione giusta :-D
A proposito di “Kevin Lynch” tieni conto che il Technology Review è ufficialmente pubblicato da un’azienda che appartiene totalmente al MIT e quando ero a Boston ne sentivo parlare come di un’istituzione in ambito tecnologico/scientifico. Tra l’altro, se non ricordo male, è la rivista di tecnologia più vecchia al mondo (inizio 1900)

3 Riccardo Bianco 2 novembre 2010 alle 16:02

Noi abbiamo già avuto situazioni in cui OWA avrebbe risolto i problemi alla radice. Buona idea quindi!

4 Luca Baldini 2 novembre 2010 alle 16:15

@Riccardo grazie mille! Siamo solo all’inizio! Per avere applicazioni completamente OWA dovremo attendere ancora un po’ ma quando ci arriveremo le applicazioni potranno partire e funzionare anche se il server è completamente giù e questo non è male :-)

5 Luca Gerosa 3 novembre 2010 alle 22:27

Per noi sarebbe fantastico, ho molti clienti che usano ancora la vecchia applicazione scritta in Delphi perchè hanno una connettività scarsa con parecchie sconnessioni. Ad oggi con IN.DE cosa è possibile fare ?
Ciao e Grazie.

6 Giuseppe Cassanelli 8 novembre 2010 alle 14:22

La cosa è in teoria MOOLTO stimolante e già in precedenza ho dato il mio plauso, rimangono però da chiarire i contorni ed i limiti.
Nella mia grassa ignoranza ho cercato ma per OWA si trova solo ciarpame su Outlook Web Access che è chiaramente altra cosa.
Usando la cache del browser temo si possa fare pochino… Per me, di estrazione gestionale ed abituato a vivere in stretta simbiosi con un DB, sincronizzare un’applicazione offline significa un lavoro corposo e sanguinoso che, temo, non possa essere gestito dalla cache… Per favore smentitemi !!!

7 Andrea Maioli 8 novembre 2010 alle 15:54

@giuseppe: se cerchi per Offline Web Application trovi materiale più rilevante. Il bello è che il browser contiene un intero (anche se semplice) database engine SQL, quindi si possono fare tante cose interessanti. Il brutto è che il lavoro di sincronizzazione c’è tutto, ma qui contiamo che In.de possa venire in aiuto con meccanismi automatici.
@luca: puoi vedere nell’articolo di approfondimento dedicato cenni sull’uso del supporto attuale all’offline. Tendenzialmente si può fare molto, ma occorre conoscere un po’ di javascript e comunque il lancio dell’applicazione avviene online.

8 otello 9 novembre 2010 alle 18:17

Le applicazioni di Enterprise mobility (quelle cioè mission critical per le aziende) sono tutte nate offline per definizione: la raccolta ordini, la tentata vendita, la manutenzione sul territorio … non solo ma anche su sistemi operativi legacy che poi si sono standardizzati su Windows mobile: cioè solo alcuni sistemi HW, per lo più rugged (robusti) e molto costosi.
Quello che questo nuovo approccio promette è qualcosa di molto più radicale: liberarci dai sistemi operativi.
In più l’approccio di In.De. permette anche di standardizzare lo sviluppo delle applicazioni in ambito mobile dove da sempre si lavora quasi esclusivamente a livello “Custom”. Credo che lo sviluppo di In.De. in questa direzione permetta a tutti i suoi utenti di aprire un modo, quello dell’enterprise mobility, in questo momento di appannaggio di pochi.
Bel lavoro!

Leave a Comment

Previous post:

Next post: