InfoQ

News

Defining RIA, Web 2.0, and AJAX

Posted by Jon Rose on Jun 25, 2008

Community
Java
Topics
Rich Internet Apps ,
Rich Client / Desktop ,
Web 2.0
Tags
Adobe ,
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?

No comments

Watch Thread Reply

Educational Content

Brian Marick on 4 Challenges and 5 Guiding Values of Agile Software Development

Brian Marick takes us through a quick tour of the most important values and challenges to adopting Agile successfully (they aren't the typical challenges and values we hear in the community).

Are You a Software Architect?

The line between development and architecture is tricky. Does it exist at all? Is an ivory tower actually needed? There's a balance in the middle, but how do you move from developer to architect?

Agile – A Way of Life and Pragmatic Use of Authority

The word 'authority' sometimes produces an allergic response in hard-line agilists. Freedom and authority – both are bad if misused and both are good if used in right spirit for a noble cause.

Getting Started with Grails, Second Edition

"Getting Started with Grails" brings you up to speed on this modern web framework. Companies as varied as LinkedIn, Wired, and Taco Bell are all using Grails. Are you ready to get started as well?

Using ITIL V3 as a Foundation for SOA Governance

Those familiar with only ITIL V2 often scoff at the thought that ITIL could serve as a governance framework for SOA. With ITIL V3, the focus of the framework shifted towards service-orientation.

Adrian Colyer on AspectJ, tc Server and dm Server

SpringSource CTO Adrian Colyer discusses AspectJ, SpringSource's dm Server and tc Server products, OSGi and Scrum.

Adam Wiggins on Heroku

Heroku's Adam Wiggins talks about Rails, Background Jobs, Add-Ons, Ruby, and how Heroku manages to work around Ruby's inefficiencies using Erlang and other languages.

SOA as an Architectural Pattern: Best Practices in Software Architecture

For Grady Booch the foundation of a good architecture is patterns, SOA being just one of many patterns. In this Second Life presentation, Booch attempts to bring more clarity on what architecture is.