RIA is Dead! Long Live Web Applications

RIA (the acronym) has jumped the shark. I find that I can no longer use RIA to describe anything anymore. The definition has been watered down and twisted to the point that nearly any application can be called RIA.

I first noticed this trend last year. Adobe and Microsoft evangelists started ping-pong blogging about what RIA meant. Scott Barnes of Microsoft even went so far as to redefine the acronym, from “Rich Internet Application” to “Rich Interactive Application“. That, along with some other “we can be better than the Web” posts caused Dare Obasanjo to create a great post: If you Fight the Web, You Will Lose. I also liked Anil Dash’s “ice cubes in water” analogy. I can see why Microsoft is pushing Interactive and not Internet, which would necessitate making Internet applications.

Fast forward to the present and Ryan Stewart’s post on the ever changing definition of RIA:

Let’s first bite off the question of what desktop applications constitute RIAs

None. RIA isn’t about desktop applications

I think things like Mozilla Prism, Adobe AIR, Curl Nitro, and Microsoft WPF are all examples of desktop RIAs.

Desktop RIA? WPF? WTF? Sounds like an oxymoron to me

In general, I think RIAs as a whole should be:
* Using web technologies

Wait for it. He’s softening you up for what’s next.

I also think that the best RIA platforms should have:
* A good designer/developer workflow story
* At a technical level business logic and user interface should be very cleanly separated so that the UI can easily be enhanced.

I fail to see how these relate to RIA, but I do see how it relates to Adobe products. Adobe products that “use web technologies”, but not the web itself. Maybe RIA means “Really, It’s Adobe”

It’s no wonder people are confused by RIA discussions. I think I’ll stick with web applications from here on out. RIP RIA.

16 Replies to “RIA is Dead! Long Live Web Applications”

  1. I think it’s good that a lot of today’s applications can be considered RIAs. It means we’ve made a leap. And in reality, I’m totally fine with the term Web application. But I think in general too many people define the term “Web” narrowly. For most people, web is synonymous with the browser and I think that’s totally short-sighted. I also think (sometimes) people don’t include technologies like Flash and Silverlight in the “Web” because they’re proprietary. There’s an “open web” which I think is separate from the “Web” as it looks today. I think more companies should strive to support/be a part of the open web, but the web should be all encompassing.

    One of the things that I think makes RIAs stand out is the expressiveness. Ajax is starting to do great things from the expressive angle. I think it’s very cool that the Acid 3 test incorporates SVG. Things like video, animation and vector graphics can all be used to improve the user experience. They aren’t just fluff even though you can point to a lot of fluffy examples.

    I think the term “web application” just has too much baggage associated with it. As all-inclusive as the RIA term has become, “web application” broadens it too much I think. There’s a new class of web application out there that incorporates things I mentioned in my post. RIAs is what everyone calls them now so why not stick with it.

    Also, I’d love to see you hash out why the desktop has nothing to do with RIAs. I think that’d be a great blog post.

    =Ryan
    rstewart@adobe.com

  2. You’re a platform evangelist? Wow. You’re doing such a great job promoting the awareness and use of your platform.

    Bashing Adobe is a great way to get noticed! Not sure how cogent or relevant this post is, but at least the Foundation is aware that its continued relevance depends on recognizing, embracing, integrating, and supporting the leading technologies on the planet.

  3. Mark I agree with you that desktop and RIA gets a bit confusing. Ultimately the browser is a desktop application loads content and application code from remote sources, I guess this is the key differentiator between a browser based web app and and destkop app like something in AIR. However using the same development tools and languages is very powerful IMO.

    But like Dion says eventually all web apps will be richer so the term RIA might go away. But it is very handy to have a label to apply to app that is interactive and responsive such Gmail for example vs old school simple form apps. First generation web apps that didn’t use JavaScript and relied on only forms and links make my stomach turn when forced to use them. I don’t care that much as an end user whether desktop app likely interactivity is added to web with Ajax, Flash, Silverlight as long as it works well and provides a good user experience! From a developers standpoint use the best tool for the job based on the developers experience, skills, budget, current environment etc… I actually get annoyed when the specific technologies are too central to the discussion…for example you can build the exact same thing with php, asp.net or coldfusion…all web apps. But if you’re building a richer web app (ajax, flex, svg, whatever!!!) it’s handing to be able to say “richer” or something.

  4. I am ready to toss RIA out the window at this point as well.
    Every app should have Internet related features and “Rich” is open to interpretation but most apps today and moving forward are by default “Rich Internet Applications”.
    I’m not sure if we even need descriptors of this type to precede “Application”.
    I’d prefer better descriptions like “Email Application” or “Multimedia Authoring Application” or “Video Player Application” or “Asset Management Application” etc.

    Most apps will intermix native OS and web based functionality. It often makes sense to incorporate functional dynamic server-side web pages within an app while also tapping into the desktop OS. So I would also have to say that “Web Applications” is not the best umbrella term either.

    Do we need an umbrella term? We are all talking about the latest breed of software applications that take advantage of online and offline functionality.

    Modern Apps!

  5. Actually, as I just posted on my blog, I think “Web Applications” have a significant difference over a ‘internet applications’: They run in a web browser. And every platform has a web browser. This means you never have to install something to make your application work (a runtime). This means you never have to install a web app. This means you never have to worry about deploying a web app. This means you never have to worry about maintaining legacy code of your web app.

  6. It’s so funny to read this email. I’ve seen exactly the same discussion about OO, Agile, SOA, Web 2.0, and other topics. Seems like it always take time for people to figure out what a term means – sometimes we never really do. Still, having a name for something is helpful in many cases.

    Here is my definition of a RIA which I think is short sweet and to the point.

    “A Rich Internet Application runs inside a web browser, communicates asynchronously with server applications, and uses a plug-in or browser-supplied technologies in addition to or instead of HTML and CSS to provide a graphical user interface experience.”

    Here is a defintion of a RIA platform:

    A Rich Internet Application platform is a browser plug-in or built-in browser technology that enables the execution of a Rich Internet Application”.

    Not as short as I would like but not too long either.

  7. FYI: I didn’t attempt to redefine RIA, i attempted to have this discussion we seem to be having months ago (by provoking the notion that some folks still to this day use interactive instead of internet, how bad that could get and in truth why in parts i don’t mind the word interactive instead of internet). I predicted that RIA as a term would ultimately fail as in the end, there are approx 3-4 agendas from various groups all having what they believe the correct term is.

    For example, when RIA was defined in 2002 by Macromedia, desktop never played a roll in the equation, it was positioned to be the middle tier solution to a overthrow the desktop movement in many respects. Now Adobe are pitch the desktop agenda, which happens to coincide with AIR?

    See how easy it was to spring that argument onto the agenda.. I don’t care about the answers or retort to the above, but the point i’m making is it’s a loosely coupled term that will continue to throw confusion into the room until we all collectively can agree on how to frame the conversation to our respective customers.

    RIA for me is always and shall be a way of explaining the UX Platforms going forward. Expanding the acronymn is stupid, leave it compressed to three letters and my answer to RIA is very subtle and simple.

    “..What you do with the UX Platform today will define what RIA looks like tomorrow..”

    Key words “You Define RIA”.


    Scott Barnes
    Microsoft.

  8. I submitted this comment yesterday… trying again……

    ————————

    Sorry to prolong the conversation…. πŸ˜‰

    Historically, “web applications” were what ColdFusion and later things like ASP and PHP did: business logic held on the server, and UI changes accomplished through a page-refresh. (And “The Web”, of course, is the web of interlinked hypertext documents viewable through a “web browser”, which is just one part of The Net.)

    When Macromedia introduced the term “Rich Internet Application” in 2002, it was a way to distinguish the _combination_ of serverside and clientside processing, particularly with richer media and interaction types.
    http://weblogs.macromedia.com/jd/archives/2005/03/ria_definition.cfm

    The term “RIA” started to fray after Firefox folks discovered that they too could refresh text on a page, without refreshing the entire page. Text and images aren’t all that “rich”, but there was a bandwagon effect, and even Microsoft later adopted the principles (although they added a definite “Not Invented Here” vibe in obfuscating the acronym).

    If anything has “jumped the shark”, I think it may be the tendency to argue over labels (whether “RIA” or “open web” or whatever), rather than talking about observable traits and capabilities. For “I find that I can no longer use RIA to describe anything anymore”, try talking about what you’re actually doing, instead of choosing a label which you trust others will understand as you intend.

    Or not. Your call. πŸ˜‰ But “web applications” does have a particular meaning already, and the trademark trait is a full refresh of data, presentation, and logic after user interactions.

    jd/adobe

Comments are closed.