Home >
QOW: What is your definition of RIA?
Just over 2 years ago when we starting this project known as InsideRIA, I posed the question "What is RIA?" to a select group of InsideRIA contributors. Please revisit the original post at What is RIA? to see the responses.
My personal definition has changed a bit over that time period. Here is my current stance. RIA is the development of applications that are both event based and run within a common environment. This environment could be the web browser in the case of Adobe Flash, AJAX, Silverlight, JavaFx, etc or the desktop in the case of Adobe AIR or Silverlight Out of Browser.
So, what is your definition of RIA? With the introduction of Adobe AIR and Silverlight OOB has it changed over the past 2 years?





Facebook Application Development
As much it was (un)clear to me 2 years ago, it is (un)clear to me now:
- Rich - requires heavy user interaction and its purpose depends on it
- Internet - use HTTP protocol (for now) and information source/storage is distributed across global network (aka internet)
- Application - have extensive business logic
So, thinking that way, it is not important what technology you use for presentation layer (SWING, Windows Forms, Flex, HTML/JS, etc), as long as it satisfies these 3 requirements it is RIA.
Best Regards
I totally agree with Marko. Though I would make the RIA def. even more strict, saying that RIA's should run in the browser. And if they would be able to run on the desktop too, it is an added value.
A desktop application (not running inside the browser too) but using an internet protocol imo is not a RIA.
Kind regards,
Jochen
I agree with Jochen - a desktop application but using an internet protocol imo is not a RIA.
Best regards,
Brigette
Part of me wants to say some iPhone and other mobile applications are RIAs; some apps are just mobile versions of their websites.
As far as in the browser or out of the browser that is a really grey area - if you have a web app running in something like Fluid (fluidapp.com) is it magically a desktop app and no longer RIA? What about AIR apps that are using webkit to render html and javascript? Both of those examples are technically browsers but the end user wouldn't necessarily know that.
Though I started with Ajax based apps to be RIA, now certainly Event Driven Interactive apps providing Rich User (NUI/Touch/GUI) responsive experience running within Boxed environment across different platforms qualifies as a RIA.
RIA for me is something, that is eye-catching and functional at the same time.Something not standart.
RIA is something, that is user-friendly and developer-friendly.
RIA is something young, that has a great future ;)
The problem with labels is that they tend to be dependent on a context; when the context changes, the labels either change meaning or die.
When I first heard the term RIA, I perceived the discussion to be about:
- - providing a coherent set of functionality (Application) to a user,
- - who navigates to it without having to install/manage/upgrade it (Internet), in which
- - the user's interaction is primarily visual, graphical, and task-oriented, rather than being constrained by a text-box-and-buttons feature set (Rich).
In short, it seemed to be about decoupling the flexibility and functionality previously found only on desktop applications from the traditional platform-dependence and administrative burden.That said, I don't think it's about a particular vendor's tools–provided that those tools offer the platform independence and flexible interaction mentioned above. As the technology environment puts more options into the context (e.g. HTML5, JavaFX, the ability to drag a pane out of a browser window onto the desktop and keep using it, site-specific-browser tools such as Fluid, etc.), the significance of such trivia as "browser-vs-desktop" will further decrease. In fact, typical users won't know or care, any more than they think about whether their car's crankshaft rotates clockwise or counter-clockwise.
I have always understood the term RIA to mean exactly what it says:
Rich -- this adjective is the hardest to pin down, because it only has meaning in a relative sense. In this context, it refers to the idea that the application's UI offers more features than those available in traditional browser-based Web applications, behaving more like a desktop app. Josh Duhl provided good examples when he introduced the RIA concept in his 2003 IDC paper:
Internet -- delivered over the Internet, maybe, but not necessarily, using Web technologies. So it includes browser-based apps built using Ajax (like Yahoo email, Google maps), Flash, and those that don't even use browsers, like iTunes. This definition may go beyond Josh Duhl's original concept, which was Web-oriented, but (imo) seems appropriate today.
Application -- any program containing logic that the user interacts with, not simply a browser that lets the user navigate static content.
Perhaps the key point in all of this is that the term RIA refers to a set of concepts that have come to prominence during a phase in the evolution of online applications, NOT to a collection of technologies or platforms. Arguments about whether Ajax is a RIA, or Flash is a RIA, are nonsensical.