Ryan Stewart has a go at nailing what the term Rich Internet Application means.
I think he’s coming at this from the wrong end. It’s better to look at the history.
As far as I’m aware – and based partly on my own recollection, and partly on what Adobe’s Kevin Lynch told the press at last year’s MAX Europe – the story begins around 2001, when WebVertising Inc created an online booking application for the Broadmoor Hotel in Colorado Springs. It was an HTML application redone in Flash. A PDF describing what was done is still online, and discusses some of the differences between the HTML and Flash approach, though bear in mind this is Flash evangelism.
They created iHotelier, a fully interactive, data-driven reservation application that reduces the entire reservation process down to a single screen. Users looking for information on available rooms for specific dates highlight their preferred dates in a calendar. With one click of the mouse, the Flash application displays the available (and unavailable) rooms, and their cost. (Figure 10) As a result, users do not feel like they’ve wasted a lot of time and effort if their first room choice is not available.
This case study seemed to trigger a new awareness at Macromedia concerning the potential of Flash for complete applications. I don’t mean that it had never been thought of before; after all, it was Macromedia that put powerful scripting capabilities into Flash, and I’m sure there were Flash projects before this that were applications. Nevertheless, it was a landmark example; and it was around then that I started hearing the term Rich Internet Application from Macromedia. Wikipedia claims that this paper [PDF] is the first use; it’s by Jeremy Allaire and dated March 2002. I’m sure Allaire himself could provide more background.
The problem with the term, as you can see from Allaire’s paper, is that Macromedia (now Adobe) tends to define it pretty much as whatever their latest Flash technology happens to be. This shifts around; so if you are at an AIR event, it’s AIR; if you are at a Flash event, it’s Flash; if you are at a Live Cycle event, it’s apps that use Live Cycle.
Microsoft muddied the waters a little. Realising that RIAs were attracting attention, it started using the term to describe its own technology too, though in the spirit of “embrace and extend” it changed it to mean “rich interactive application”. As I recall, Microsoft used it mainly to describe internet-connected desktop client applications such as those built with Windows Forms. Something like iTunes is a great example (even though it is from Apple), since it runs on the client but gets much of its data from the Internet, especially when you are in the iTunes store.
Now it remains a buzzword but honestly has little meaning, other than “something a bit richer than plain HTML”. If you were doing the Broadmoor Hotel app today, you could do it with AJAX and get similar results.