Microsoft and Adobe
While a more nuanced understanding of the two kind of balks at putting AIR and Silverlight in the same RIA bucket and, thus, competing with one another, I tend to still look at the two in that bucket when I ask what’s going on in vendor-lead RIA. It’s sort of like the difference between like “red wine” instead of, well, I like “red wine,” so I don’t know what the True Wine Believers would like…uh…vintages? (I’ll have some bourbon.) This:
This morning I dialed into a teleconference on Microsoft’s RIA hopeful, Silverlight. The technology overview wasn’t anything new, it was more one of those calls to tell you what the current state of things are. As an analyst, I find these helpful to figure out what the official line is from a company on a technology. You know, some good triangle management: get the update on their talking points and messaging.
The key take-away on the Silverlight front is that Adobe and Microsoft have essentially the same messaging at the moment when it comes to RIA. I sort of lean towards Adobe being the first mover on the story, but it’s a bit irrelevant. In the vendor sports thunderdome of RIA, who said what first isn’t really top on the list. You could say that Flex, a key foundation of AIR, is more mature and, thus, a better bet than Silverlight (and certainly than the yet to be released JavaFX), but, in all honesty, by the time people are decided which one to choose or not, I feel like the two could be technologically head-to-head. This is not a post comparing the two anyhow. We’re concerned about the stories being told.
The nut of the RIA story from both Microsoft and Adobe is this:
- We need, even better, deserve richer UIs. If you catch us in a bad mood, or after a few drinks, we’ll also tell you that the web as UI platform sucks. Our appreciation for the web as “having it’s place,” however, is actually quite mature and not just prattle to calm down people like RedMonk.
- Richer UIs will lead to better user experiences and connection to brand. Better user experiences lead to making more money with software, primarily through brand strength that allows you to markup your product. See the Teknision crew for more.
- We need a better web application development tool-chain. The current web application tool chain is less than ideal. PhotoShop to web browser looses the fidelity of the original design and is not maintainable. RIAs have the tool-chain for success.
- RIAs must be cross-browser. I mean, we put Opera icons in all our presentations!
Where the two diverge a bit are:
- Adobe is more about the offline story and, more specifically, providing a desktop GUI. As such, the feel from them is more building whole applications rather than just parts of web applications or little widgets.
- Microsoft mentions video whenever it can. Demos of Silverlight usually include astounding feats such as displaying clusters of HD video all at once. Silverlight, of course, is a sub-set of .Net with it’s own CLR, which makes it a bit more of a platform-y thing. The hobbling here, of course, is that it’s from Microsoft, and so developers tend to be cynical that it’d be a multi-platform platform, which is sort of, you know, the whole point of a platform, and don’t forget the tool-chain that’s one of the main points of all this RIA hoopla. That said, how ’bout that Moonlight? What would developers thing if there were two, Microsoft OK’ed [D|C]LRs running around?
Judging these claims and points is for another time. I think simply capturing them is interesting enough.
What is an RIA? And the Ajax Question
As with SOA, when more people come to the party, the question of what exactly an RIA comes up more. Does Ajax constitute an RIA? How about just a really well done web application? Is it more about the quality of experience or the technology that implements it? Is the iPhone an RIA?
My simple sieve consists of three parts:
- Is it something trying to act like a web application (only better!), including connecting to and interacting with the web?
- Is it trying to go beyond standard web application UI technology using something more than Ajax?
- Did you have to download a browser plugin or other runtime?
Answering “yes” to more than less of those, you probably have an RIA. Sure, that’s not a tried-and-true method, but it’s something more than the other method that works 100% of the time, “I’ll know it when I see it.”
This leads to the question of why using Ajax doesn’t constitute an RIA. Philosophically, that question has a point: Ajax is certainly trying to go beyond <form/>
‘s and <input/>
‘s (if I had a 40, I’d pour out a bit for my dead homie, the HTML form). On the other hand, I sort of feel like if we say Ajax is an RIA, we defuse meaning out of the idea of an RIA. There’s still a sort of hump Ajax hasn’t gotten over yet: it still feels like an HTML-bound web application, just one where you can drag-n-drop and don’t have to refresh the whole page. But, I dunno: it’s still a good question.
So, I am left with thinking of RIAs as either AIR/Flex/Flash, Silverlight, or other plug-in based environments that provide more GUI-oriented UI toolkits.
To throw another wrench in the discussion: is SecondLife an RIA? Why or why not?
A Better Development Method
To the tool-chain point, we all know that most UI development sucks. Developers are continually looking for a much better way to do UIs. That’s how Sun’s RIA contender, JavaFX, started after all. When it comes to the long-term, this is the point that I think is key: if all this RIA hoopla results in better UI frameworks (GUI and web), I’m all for the hoopla, throw some gas on the fire.
There are 3 problems to solve when developing good UI frameworks:
- The resulting UI must look good and run fast.
- The framework must be easy to code, quick to modify, and over-all simple. Object-oriented pure stacks need not apply. I got a window, and I wan to put text in it, screw the OO metaphysics.
- For the long-term, the UI frameworks must include workflow and data-model tie-ins that are more than click-and-point fantasy.
The second item is one of the key points of AIR: you can use web technologies (HTML, CSS, JavaScript, Ajax no less!) to develop desktop GUIs. How’s that for the prodigal UI framework coming back home after spending time in the world wide wilds?
The last point is where most UI frameworks fail long term. They never seriously move into the controller and model of the MVC trinity. Struts+JSP is a great example here. Struts was great when it first came out and for years afterwards. But then you were like, “crap, I got all this spaghetti and it takes forever to update and change it.” Updating Struts based UIs in version 5 of your product is painful. You know, where your boss is like, “hey, we just need to add two more check boxes to page 5 in the wizard,” and you respond, “that’ll take a month.”
I don’t know of any RIA technology that’s offered much in the line of workflow and data-modeling for version 5 of your UI. There’s always the 37signals answer — figure it out later — I suppose, but it sure would be snazy to have more than that.
Nonetheless, the developer in me is looking for a better UI framework. Other dev types I talk with are looking for the same thing.
The Killer App!
More so than other technologies, RIAs need a real killer app to drive people to stop using “poor internet applications” (the web) and start using RIAs.
Pirated Video
Video is the obvious one in the driver’s seat, but I think free, probably illegal video, is the more precise way of putting it. Getting something valuable for free has always been a killer application, and it’ll apply with RIAs as much as anything else.
As a counter example, we have Joost, which is sort of cool, but isn’t nearly as cool as the much simpler, and must-be-illegal tv-links.co.uk. I mean, I like watching old episodes of GI Joe and Transformers as much as the next Gen X’er, but if I want Veronica Mars, I’ll settle for the crappy “reception” I can get elsewhere. As ever, the problem with legal, free content on the web is that the content providers assume we’ll take whatever crap they give us. Turns out we want the good stuff that’s “worth paying for,” but we don’t want to pay for it.
SaaS
Another possible killer app — one that Adobe seems to be aware off, kinda-maybe — is using RIA’s as the pretty face for SaaS applications. AIR is well positioned to deliver what Microsoft calls “connected applications” (meaning, desktop applications that are actively engaged with the web…but are not web browsers).
I’m waiting to see if Facebook gets an AIR wrapper like eBay has. Or MySpace or whoever. Twitter has countless offline clients that skirt the line between being an IM client and an RIA: I use and like Twitterrific which seems like an RIA but is a proper OS X desktop application.
On the business side, we summed it up well in a past MonkCast: maintain all that IT gorp on desktops is a hassle, and part of the appeal of web applications is that they’re easier to maintain. SaaS is the grander vision of this, and layering on RIAs that remain true to the “easy to install and update” nature of web applications (by virtue of almost zero foot-print on the desktop?) could be a Big Deal. It’s the SunRay vision, rolled through the Netscape days, on down web application row, sprinkled with Ajax, but then finally, potentially, back to having a fully operational GUI without the install mess.
Straight up Retailing
Currently on the web, we have AdSense and product placement/influence in blogs as the cream of the crop for moving product. That is, selling stuff. If it turns out that using RIAs increases sales, you can bet Amazon, eBay, and everyone else will do the dirty work of convincing end-users to use RIAs with discounts, better offers, and more virtual equivalents of putting the eggs and milk at the back of the grocery store.
eBay has it’s AIR application that we’ll have to watch for increased revenue. I’m told Amazon does all sorts of UI tweak testing on “test groups,” so I’m sure we’ll hear about their success or failure.
Selling more product is always a killer feature.
Web Colonization, or, Buttressing Roach Motel 2.0
Finally, though I don’t favor the trend, there’s quite a bit of web colonization going on. Increasingly, site providers want to “bucketize” eyeballs and keep them stuck on one URL and it’s sub-domains. The Sacred Link is a-OK as long it stays on the same site.
Obviously, you’ve got Facebook, MySpace, and all the social network sites that you have to go to to get any use from.
RIAs could serve an apt honey pot to both draw people into these roach motels and keep them stuck there. With an RIA, you could slowly strip away the idea of “the web” and keep the user’s focus on the roach motel. Sure, you might pull in data and processes from the web, but your goal would be to use the RIA as a sort of firewall against web 1.0.
Unfortunately, I think it could work quite well. We’ll see if Apple goes for that gambit as it, really, their favorite play.
<eom>
That’s the general dump on what seems to be going on in the RIA space. What’s your feel?
Disclaimer: Microsoft, Adobe, and Sun are client.
Technorati Tags: air, apollo, adobe, microsoft, redmonkclients, ria, ui, gui, ajax, silverlight, moonlight
I'd like to see better support for URLs in RIAs. The concept has been so useful for the web, that the first thing I'm going to miss in a desktop-based CRM is the ability to send links pointing to, say, customer "John Citizen" in emails.