Danny-T.co.uk

Apollo : Local Resources

Ryan Stewart has a blog post containing an interview with Alan Lewis of with EffectiveUI who are the developers of an Apollo app in development for eBay known as the San Dimas project. I saw a demo of this app at FOTB and it looks very impressive.

One particular part grabbed my interest:

“Alan also mentioned that one of the big advantages of the desktop model is improved caching. For instance there is a web service call to go out and grab the entire tree structure of eBay’s categories. In XML format, this is about a 20 meg download. With Apollo, the team can call this once and cache it on the local machine so that the application never has to make the calls to get subcategories. This means fewer calls to the server and better performance.”

The use of caching and local storage is a key area of Apollo that is perhaps the most alien to web application developers. Short of browser cache and cookies we’ve had no form of local storage available. The above quote highlights the performance opportunities available through caching (something I’d not previously considered). Caching information about the site that never (or infrequently) changes could help greatly improve performance and reduce bandwidth.

Also the ability to make use of local file storage is what will really aid disconnected applications. In the instance of San Dimas you might be able to create and manage your eBay items for sale whilst not online then, once you have a web connection, commit them all to eBay. A couple of other examples I can think of off the top of my head:

Being able to continue to use a web application when offline should greatly reduce frustration for users. Have you ever spent ages filling in an online form of some sort or spending forever writing a page of content only to find that when you’ve submitted it you’ve lost your web connection and all your hard work gets lost?