June 1st, 2007
Confusion, fear and doubt around Rich Internet Applications
There is a post up over on Read/Write Web which aims to paint a picture of Rich Internet Applications and poses the question, RIA: What is it good for? Unfortunately I think they miss the mark a bit with both the definition of RIAs and the analysis behind the technologies. Here’s how Alex (the author) sums up the definition of Rich Internet Applications:
The takeaway is that RIA is defined as a mix of three things: desktop-like UI online, offline apps that look like online apps, and online applications that can go offline. Together, these things are a bit confusing. But perhaps if we just said: a browser app with a rich user interface that has offline mode, then things would be simpler. So, to belabor the point, an RIA is a browser app - but it works like a desktop app (e.g. a rich email browser app that works like Outlook).
He bases that off of the Wikipedia definition for Rich Internet Applications which is pretty verbose when you read the whole thing. He then goes on to talk about Apollo and Silverlight, two VERY different RIA technologies for two VERY different tasks. As I see it there are two classes of Rich Internet Applications, those that run in the browser, and those that run on the desktop.
Browser based RIA technologies
The key to any RIA is richness, and before Ajax and Flash, richness in the browser was non existent. First and foremost, what’s great about browser RIAs is that they provide a desktop like interface but inside the browser. That’s very different from what Alex talks about, which is offline mode. Having an “offline mode” isn’t really all that important for Rich Internet Applications. It’s much more about the experience and the performance of desktop applications being brought inside the browser.
If I see one more person compare Silverlight and Apollo I may go crazy. If you want to deliver browser based RIAs, you won’t be using Apollo. You’ll be using Silverlight, you’ll be using Flash, you’ll be using Ajax. Those are examples of technologies that allow you to create rich, desktop like experiences inside the browser. Notably, none of those technologies has a native offline mode. Google Gears allows you to hook into an offline mode, but the browser RIA technologies are not trying to solve any online/offline problem by themselves.
Desktop based RIA technologies
This is a class of RIA that has gotten a lot of attention this year because while everything was moving to the web, the desktop got a bit more exciting. This is really the space where occasionally connected applications fit. It’s also a space that is still very much being defined. Whereas browser RIAs can bring the desktop experience to the web, desktop RIAs focus heavily on better user interfaces and really harnessing the power of the desktop for things like local file system access, native windows (breaking out of the browser chrome) and system-level notifications. In some ways it’s an evolution of the current desktop software that aims to provide solutions that are more web-centric and emphasize design.
This is where Apollo fits in. Alex’s definition of Apollo is confusing at best. Apollo is a separate download from all of Adobe’s other products that allows developers to create desktop applications (with the traits above) using web technologies like Flash and Ajax. But there are some other great desktop RIA solutions. Windows Presentation Foundation (WPF) would count as a desktop RIA in my book because it takes full advantage of the desktop world and really embraces great design fundamentals. XULRunner from Mozilla is another example of a platform for building desktop RIAs.
Alex tries to paint the only value add for these new technologies as offline mode, but nothing could be further from the truth. RIAs are all about bringing great design and a great experience to the web. RIAs incorporate rich media and they give designers the ability to build interfaces that are more usable and more engaging. As the space has grown, we’re seeing more and more ways to do that. Sometimes that will be inside the browser. Other times you will want to have an application that resides on the desktop, very close to your users. But throughout the entire spectrum, engaging experiences are the key value add. Google maps took the world by storm because it was a great new experience, not because of a technical feature. Offline mode is a good feature to have when we need it, but it’s definitely not a centerpiece of RIAs.
Ryan Stewart, a Rich Internet Application developer and industry analyst, recently joined Adobe's Platform Team as a Rich Internet Application Evangelist. full profile and disclosure of his industry affiliations.
Subscribe to The Universal Desktop via Email alerts or RSS.







