Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Defining RIA, Web 2.0, and AJAX

Defining RIA, Web 2.0, and AJAX


Christopher Keene, of WaveMaker Software, attempts to define common web development terms in a blog post earlier this month.  He offers a detailed overview on the terms and how to view them together.  In a separate, thread former Adobe Executive, David Mendels, discusses how the term RIA came to be, and the value it has today.

Keene’s post dives into details on how he views the terms, beginning with the following high level descriptions:

It is much easier to understand these buzzwords mean by considering them together. With that in mind, here are my definitions of Web 2.0, Rich Internet Application and Ajax, complete with helpful graphics:
  • Web 2.0 represents a market shift in consumer attention from expert-generated content (Yahoo) to user-generated content (Google)
  • Rich Internet Applications represents a requirements shift for more interactive, PC-like web sites to simplify consumer creation of content (Blogger, MySpace)
  • Ajax is an architectural shift to support RIA requirements
Keene offers this graphic to articulate the shift each of these terms represents:

Former Adobe Executive, David Mendels, recently shared in a RedMonk thread about when the term RIA was coined at Macromedia, and the evolution in the industry since that time. 

I was one of the people involved in coining the phrase “RIA” at Macromedia in the early 2000s (along with a core group of Jeremy Allaire, Kevin Lynch, and Adam Berry if I recall. I am not sure who first hit on the final coinage, it was the product of a series of discussions.).

Here is the thing: it had a very clear meaning *at the time* and was a clear contrast to the prevailing mass of applications on the web. Now that the entire web has evolved dramatically, the contrast is largely gone and the phrase is not less meaningful, but certainly less useful. At the time, we were in a world of page based web apps. Applications that were using the page request model of the browser to deliver very limited interactivity and client side functionality, and led to frustrating repeated refreshes of the page to do anything.


Fast forward to today. The term is less useful because it describes the mainstream. Today a large percentage (a majority?) of web applications are “single screen” and use AJAX techniques to update the screen without refreshing the page gratuitously and the major browsers and JavaScript libraries are sufficiently mature that it is quite possible to create platform/browser independent apps with AJAX. Similarly, the use of rich media, usually Flash, is widespread. Of course, over this 8 years, the Flash Platform approach has matured with richer frameworks (Flex..), tooling, components, messaging, and even richer media (H.264 video, for example). But the paradigm is still the same as we saw when we coined the phrase RIA, it just isn’t quite as “unique” and a contrast to the mainstream that it was.
Do these definitions fit with your own? How do you describe the applications you are building?

Rate this Article