Google's Gmail, now in beta, has been attracting lots of attention because of its controversial ad-serving model (matching ads to your email message content), its large storage quota (1GB) and its search-oriented way of navigating around your email.
What's received less attention is that Gmail is effectively what we at Laszlo would call a rich Internet application (RIA). By this I mean that a lot of logic and interaction is client-based, and it is not an ordinary page-based Web application, where each click generates a server return-trip. It does not look like an application -- in fact, it looks like a simple Web page -- but is application-like in many regards, featuring keyboard navigation, instant response to certain actions, etc.
It also shares a number of undesirable properties with other RIAs -- a significant initial download (400K+ of JavaScript according to our measurements), very limited browser compatibility, limits on accessibility relative to static HTML, etc. Unsurprisingly, this has some people upset, as does any interface that deviates from bare-bones HTML.
Here's a discussion of this in Salon:
[Gmail] makes extensive use of JavaScript to give users such niceties as keyboard shortcuts, spell-checking, and seamless composition, replying and forwarding. The result feels like a cross between a Web-based application and a standalone program.
"We wanted to have the benefits of both," says [Google co-founder Sergey] Brin. "We wanted to have the efficiency of a stand-alone application. I think we aimed for that, but I don't think we went as far as those kinds of things that really try to duplicate apps. We did not want to go that far. If you push it too far, then it really interferes with what people are used to in a Web application and it causes the browsers to be really confused."
(As an aside, we'd be happy to show Sergey a certain RIA platform that won't get the browsers confused, and will work in a much wider range of browsers than Gmail now does, but that's another point.)
So this puts Gmail in the unusual position of being rich (i.e. rich in-browser interactivity, big download, keyboard shortcuts) but also bare-bones -- essentially no art assets. That represents a new evolution in RIAs.
It's interesting to think of RIAs as belonging to three different categories, each analogous to an operating system:
As RIAs gain acceptance, we'll need to be more nuanced about what we mean when we say "rich." Is it about media-rich vector graphics with animations that blend branding and functionality? Is the richness really the rapid response that comes from in-page interactivity enabled by JavaScript? Or is it something in between, like a browser-based Windows app? Or is it all of the above?
Posted by temkin at April 26, 2004 04:31 PMRich Internet Application happens to be the term of the day to describe this new class of more usable web/internet based applications (they used to be called the x-internet, remember :)?). Rich in graphics/smooth animation, interactivity by javascript, windows-like/mac-like mean squat to the end users if the features don't make the application more usable. I think Brin is right on when he said "We wanted to have the benefits of both." When the windows like responsiveness increases productivity, why not; when deploying stuff on a server reduces admin cost, sure; when doing too much "rich" stuff in the browser that can potentiall confuse the user, leave them out.
You asked "Is it about media-rich vector graphics with animations that blend branding and functionality? Is the richness really the rapid response that comes from in-page interactivity enabled by JavaScript? Or is it something in between, like a browser-based Windows app? Or is it all of the above?" I would say, RIA is about none of the above, it is about making server-deployed/browser-acessed applications more usable for the end users.
Posted by: George Cao at April 26, 2004 10:41 PMGeorge,
Thanks for stopping by. I think it's a given that RIAs have to be more useful or appealing to end users relative to static HTML. The question is then, along what dimension, and using what techniques? Each of the RIA "types" described in this post meet the basic criteria of providing a better user experience, but are still radically different experiences. With any luck, we'll see many examples of each of these application types over the next few years.
- David.
Gmail is interesting, agreed, but it doesn't match some of the traits of Rich Internet Applications described in Jeremy Allaire's original paper on the subject:
List: http://www.macromedia.com/resources/business/rich_internet_apps/whitepapers.html
PDF version of March 2002 paper: http://download.macromedia.com/pub/flash/whitepapers/richclient.pdf
Beta Wayback analysis of phrase "rich internet": http://recall.archive.org/search?query=rich+internet&search=go&afterMonth=0&afterYear=1996&beforeMonth=4&beforeYear=2003&oldword=%22RIA%22&login=&extGroup=Do+you+Mean%3F
The term "RIA" has become very popular since it first appeared over two years ago, but it also risks becoming confused with other things too. In this case, the high-performance, integratation, components, web service, offline, and multi-platform angles seem to be a little different... for classification, Gmail would probably fall closer to the "serverside app with DHTML" label than the RIA label.
Of course, people argue all day long over what a particular label "really, really means", so naturally your mileage may vary.... ;-)
Regards,
John Dowdell
Macromedia Support
ID a Candidate Rich Internet App.
- High end-user productivity
- Visualization of complex data
- Highly usable interfaces
- Real-time data interactivity
- Complex workflow
Source: Macromedia "Start your RIA!"
Posted by: David Urech at May 4, 2004 10:11 AMHey, I guess I'm an RIA too then!! 8)
Posted by: John Dowdell at May 4, 2004 06:04 PMJD,
I'm not sure I'm with you on this. GMail is a rather unusual use of DHTML. It's not being used for popups or form validation here -- so I'm not sure characterizing it as a server app with DHTML does it justice.
Industry terms are funny things. Their origins may or may not relate to how they're used or what they characterize, and they certainly aren't like words that can be looked up in a (vendor-specific) dictionary where they're permanently defined.
Laszlo hopped on board the "RIA" bandwagon (as opposed to the alternate "X-Internet" bandwagon) a few years ago. We thought the term better reflected what we were after (and didn't sound like "former Internet". :-))
The first time I heard the term "rich application" was, I think, in 2000, before Macromedia acquired Allaire. I was having lunch with Norm Meyrowitz, then on leave from Macromedia. I showed him Laszlo's early demos. I remember him saying, "this isn't rich content, they're... rich applications." Well, not "rich internet applications," but you can see how the old Macromedia perspective (rich content) might have blended with the post-Allaire sensibility to arrive at "rich Internet applications" some time later.
I'm not entirely satisfied with the term "RIA" (mostly because of leftover negative associations with "rich media"), but it's better that we all rally around a single term than use our own definitions. The question is whether people come to recognize the term "RIA" before the entire Web is RIA-like, at which point the term will be irrelevant, and we'll be back to talking about "Web sites" -- but that term will then mean something quite different than what it meant in 1996.
- David.
I really enjoy being at this informal place. Wish you luck and success for the future. Surely see you again sometime.
Posted by: Robert Jan at August 20, 2004 04:08 AMSince I wrote my What is Google Building? I've seen lots of interesting responses to it in my referrer logs. As usual Jon Udell's response gave me the most food for thought. In his post entitled Bloglines he wrote...
Posted by: Ionamin at October 6, 2004 01:01 AM