informa
/
Commentary

Rich Internet Apps Offline: What a Concept

For the two past weeks I've been on a working vacation in Montana, where dial-up Internet access is all there is. No DSL and mountains block satellite connection. A good place to experiment with Rich Internet Applications (RIA) that need to be functional when disconnected from the Internet... I have been cultivating the garden of Google Gears... the browser plug-in intended to enable running Web apps offline.
For the two past weeks I've been on a working vacation in Montana, where dial-up Internet access is all there is. No DSL and mountains block satellite connection. A good place to experiment with Rich Internet Applications (RIA) that need to be functional when disconnected from the Internet. Of course, an RIA without the Internet violates the definition of RIA, but reality and Murphy's Law tell us that for certain Web applications, an Internet connection may not always be available when it is necessary to run the application.At this point I can feel a snark itching to hit the keyboard. Having been a desktop application developer for much of my career, my inner wit thinks "Running without a network connection, geez what a concept!" But this is not even half witty. It's no more illogical for a Web application developer to want to use familiar tools to build an offline desktop app than for a desktop developer wanting to use desktop tools to build a Web app. The issue is how easily this crossover is accomplished and how well it works.

In general, desktop application development tools were modified to build Web applications long before the other way around, a lead of about ten years. That sounds like a lot, but in some ways it doesn't mean much. These tools could build fine desktop applications, but by comparison, the HTML Web apps they built were (are) pretty crappy. It has required years of iterative innovation by a variety of Web specialists to come up with the user-friendly, interactive, Web 2.0 kind of application - and this work is by no means completed. To no surprise, Web companies such as Google are most prominent in the effort.

Speaking of Google, I have been cultivating the garden of Google Gears these past weeks. Gears is a browser plug-in intended to enable running Web applications offline. Because it's from Google and because Google has done its homework; Google Gears is significant. The Gears package (now in beta release) has three main components: a kind of local Web server for dealing with client JavaScript and HTML, a local database capability provided by open-source SQLite, and browser extensions for managing JavaScript threads related to communication. Most Ajax developers will find the mix friendly. There are nascent weeds, especially with security (offline does not equal secure) and database synchronization, but to belabor the analogy, the ground is fertile. I expect a relatively long period of "work in progress," especially since Gears is intended to become an official standard. In this regard Google is working with a gaggle of allies to implement Gears, for example Adobe, Dojo, Mozilla and Opera. Adobe AIR (Adobe Integrated Runtime) and Dojo Offline are two development systems that have a big stake in offline-capable Web applications and they see in Gears the opportunity to hitch a ride.

At this stage, most enterprise IT people will roll their eyes about the issues involved with offline RIA apps - we have seen it before. Yes, but the context is different-a browser application. The way some Web people see it; this is part of the inevitable takeover of desktop applications by fundamentally Web-based software. Maybe. In any case, they have a different perspective; we'll see in a year or two just what they can do.

Nelson King has been a software developer for more than twenty-five years. Further complications include being a computer-industry analyst, product reviewer and author (of nine books on database programming). He's been writing for Intelligent Enterprise (and its precursors) for more than ten years. Write him at [email protected]For the two past weeks I've been on a working vacation in Montana, where dial-up Internet access is all there is. No DSL and mountains block satellite connection. A good place to experiment with Rich Internet Applications (RIA) that need to be functional when disconnected from the Internet... I have been cultivating the garden of Google Gears... the browser plug-in intended to enable running Web apps offline.