When Buzzwords Go Bad
I always assumed the word "jargon" was a reasonably recent addition to the English languages, but a quick glance at the OED gives examples of its use dating back as far as Chaucer. It would seem that man has been uttering "... unintelligible or meaningless talk or writing; nonsense, gibberish" for centuries! Or perhaps that should be "...conversing by means of symbols otherwise meaningless; a cipher, or other system of characters or signs having an arbitrary meaning" ?
Gibberish, or just a cipher? The dual meaning perhaps reflects the inclusive/exclusive nature of jargon — if you're part of the 'in group' jargon is useful shorthand, but to outsiders that same jargon is unintelligible and meaningless.
If "jargon" is centuries old, I wonder how old is the practice of using it to confuse and bedazzle? The OED's earliest source for "management speak" ("[...]being obfuscatory, needlessly complex, or empty of useful meaning.") only dates back to a 1986 Sunday Times article, yet I suspect the practice is far far older.
The problem is no sooner has a new term entered the lexicon than someone, somewhere, will start to abuse it for whatever reason. The unfortunate popularisation of term "web" in place of "internet" was likely due to the ignorance of many politicians, journalists and other commentators during the early years of the fledling technology. However, years later the wholesale abuse of the (far too sexy for its own good) phrase "Web 2.0" was more down to 'marketing' than anything else.
This is precisely what has happened to "RIA", Rich Internet Application, a piece of jargon now so diluted through multiple interpretation that it doesn't really mean anything any more — at least, so say the members of the Java Posse in their 24th July podcast.
Is RIA meaningless? And if so, is it worth replacing it with a new term?
Really Indeterminate Acronym
First let us take apart the existing term: RIA — Rich Internet Application. What does it mean?
Attempt #1: "Any application dependant upon the internet for its function."
Seems reasonable enough at first sight. By this measure Google Earth would make it onto the list because of its need to constantly draw data across the network, and iTunes would also make it because its catalogue is online. But hold on, what about Firefox? What about Internet Explorer? Windows Update? FTP? Telnet? All of these depend largely upon the internet for their operation.
Okay, scratch that, it's clearly far too broad.
Attempt #2: "Any application which runs inside a web browser."
This one surely has to be a winner! After all, we all know GMail is an RIA, right?!?
So Google Search is an RIA too. And that Swedish Chef translator which was all the rage ten years ago. Hmm, somehow that just doesn't seem right. Pretty much any non-static web page would be an RIA by that token.
Attempt #3: "Any application which runs inside a web browser and looks cool!"
So coolness of user interface is the benchmark by which we judge whether a web site is an RIA or not? But what if we use Java applets, or Flash, do they count? We'll soon be able to drag and drop an applet out of the browser window and onto the desktop, where it will run independent of the browser — is it still an RIA?
Attempt #4: "Any application which runs inside a web browser page, not outside a browser page (even if it started life inside a page!) and looks cool!"
Aha, fine. But my Java applet (which is still on the page) opens a top-level Swing window on the desktop, complete with "this is an applet" warning banner.
Attempt #5: "Any application which runs inside a web browser page, not outside a browser page (even if it started life inside a page!), or at least has 'one foot' still 'planted' on a browser page, even if it opens other windows... and looks cool!"
Right, I Acquiesce!!
My own personal definition is this: "Any application which has the sophistication of a desktop application, but the omnipresence of a web site".
I've focused on the word "internet" as being where the application lives, rather than what it does. So an images manipulation tool, which allows me to work on an image on my local hard disk (rather than on Flickr or wherever) would still be considered an RIA if it was accessible via a URL. The criteria are: the UI has the feel and finesse of a desktop application (rich), the application needs no formal installation — although it may be cached (internet), and it's software not data (application).
Under this definition GMail is in, and so are applet and Flash applications regardless of whether they live inside a browser page. WebStart applications are also included. But Google Search is out (not rich) and so is Google Earth (requires installation).
The problem is the odds of anyone else agreeing with the above are less than Google bringing out a JavaFX version of GMail.
The Java Posse suggested the term RIA be retired in favour of something new. Perhaps they are right! Much of the confusion seems to surround distinguishing browser RIAs from their virtual machine counterparts, and as the web has far more of the mind share I suspect it is beholden to the VM community to make the first move. The Posse suggested various acronyms like IRIS or IRA as replacements, although I suspect the latter might not go down too well in some parts of Ireland! (I considered a joke about coding wearing a balaclava at this point, but too many angry Irishmen know where I live!)
Mulling it over, the best I could come up with was "RADICAL apps": Rich Animated Desktop Interface / Cloud Abstraction Layer. Not the best acronym in the World, but it encompasses the key concepts: Rich Animated Desktop Interface (slick UI, but not in a browser!), Cloud Abstraction Layer (not installed, lives and works through network 'abstractions' like URIs and Web Services.)
Of course, all we're really doing is creating another buzzword, ripe for abuse and misuse. And this is the fundamental dilemma at the heart of naming any new concept (as opposed to something concrete, like a product or a web site) — the sexier the name the more it sticks in the imagination. The 'stickier' it is, however, the more likely it is to be mutated.
Even so, I think it might be good to have a sexy new term for VM based RIA's, if only to placate my curiosity as to how long it will take before references to "RADICAL applications" (or whatever) in conjunction with "GMail" start to materialise on Google! ;)