Entries tagged with “ria” from Paul Lopez Unwired
Enabling offline capabilities for web applications is the nemesis of desktop software since the browser could become more powerful in terms of functionality and operation. Web technology like Google Gears enables desktop-like behavior. Gears creates client-side data storage by exposing an API that allows the web application to store a database cache on your mobile or desktop machine. This allows you to access data when you are not connected to the Internet. Although gears works with other browsers; Google Chrome has it built-in and it works the same way in Android too. You'll be able to read, reply and open attachments in your Gmail account offline. I just attended a technical overview of Windows Azure, Microsoft's new cloud computing "operating system." For the programmer, there is an offline development environment and SDK that allows client-side debugging in the Visual Studio IDE without ever "publishing" your application to Azure. The Microsoft team demonstrated a fully disconnected Silverlight application that once developed in the cloud, operates on your desktop independently of the browser. This has rich-internet-application (RIA) behavior but when asked, the team did not divulge any "gears" like capability in Silverlight. I believe Silverlight has "gears" features since it is a browser technology. The question will be if it is software plus service or just service.
A growing community of developers continues to enhance and support a very useful JavaScript toolkit, called Dojo. This toolkit handles cumbersome tasks for eye-popping web applications using DOM manipulation, Ajax, animations and pesky event normalizations needed to get applications to behave correctly in multiple browsers. While the Document Object Model (DOM) dates back to Netscape, web browsers didn't need DOM to render HTML. This all changed with Web 2.0 UIs where JavaScript needs to dynamically modify or inspect what's coming across on the web page. There are even extensions for supporting design patterns, wrappings and persistent storage for Adobe Air, a Rich Internet Application framework. The Dojo Zoom application here only has 50 lines of source code. It is all self-contained and of course, no Postbacks! With the help of a couple of community members, what started as a simple drag and drop example grew into a fully featured application showing off Dojo's power. As you move the overlay box, you can resize and create a zoom in the right panel. Very cool.
HTML5 is an optimistic standards effort designed to bring all browsers, markup languages and plug-in APIs under one common industry framework. There has been an accelerated effort in technologies designed to make SaaS more robust by making web applications "behave" more like fat desktop applications. Concerns about connectivity, web response time and user experience have tapered the widespread adoption of these applications in the enterprise. Most success has occurred in the consumer/social web space. One promising development is the proliferation storage APIs. This facility creates a small database that is installed on the end user's client machine to enable access to application features normally operated while connected to the Internet. The one year old Google Gears is making some headway. MySpace has integrated Gears into its messaging application. Yahoo has introduced BrowserPlus in an effort to challenge both Google and Adobe Air. The idea is to have a web application accessible from the user's desktop much like a tray application or a native OS-based executable. One Yahoo demo allows users to edit photos on a desktop with Flickr before uploading to the web thereby increasing the speed and performance of such an operation. Most RIA APIs provide three things: a local database ("SQL Light"), a local object caching mechanism for images or web pages and thread pools to allow asynchronous tasks to occur in the background. These are the integral components of the architecture that enables a rich user experience. Go check out Buzzword.com for an Adobe example of a word processor written entirely in Flex. This brings us back to HTML5. Microsoft, Adobe and others (like CURL) are pushing ahead using some of the storage APIs from HTML5 but leaving other parts of the standard on the shelf. Apple has supported the Webkit open source project with Safari and has re-engineered their own site (removed Adobe Flash & PDFs) by using Ajax instead of proprietary alternatives. It will become increasingly difficult to try to adopt some kind of standard; HTML4 was probably the most successful. Innovation is very impatient with the standards process altogether I'm afraid. Being locked in to a proprietary approach may continue to inhibit the adoption in the enterprise. Most IT shops will choose to utilize a best of breed approach for specific RIA implementations in the short term.

