Blogs

RedMonk

Skip to content

Too Rich For My Taste: The RIA Q&A

Once upon a time, the notion of delivering application functionality over the web seemed fanciful. The misguided thinking of some web zealots. I should know, having worked in shops that did both client/server and portal/web development. Shops that left me similarly skeptical (in the distant past).

But of course that was then, and this is now. The application landscape circa 2007 is, of course, heavily web oriented. As some of the gray beards in our midst have pointed out, it’s as if we’ve come full circle back to our green screen mainframe days. The more things change, the more they stay the same. And so on.

Over the last quarter or more, however, we’ve seen a resurgence in interest in what are often termed Rich Internet Application technologies, or RIA. Between the high profile vendor announcements (Apollo, JavaFX, and Silverlight) and some lower profile alternatives (RCP, XULRunner), the number of available paths for would be web application developers to walk down are proliferating rapidly. That much is clear.

What’s less clear is where some of these paths might lead to, the degree to which they stray from the major web thoroughfare, and what it might cost over the longer term to walk them. Or, in some cases, why there’s a separate path in the first place.

While I’m certainly not in a position to answer all of the above, perhaps by exploring some of the questions in more detail we can make tracks towards some answers. To the Q&A.

Q: Before we begin, anything to disclose?
A: Lots, in this area. All of the vendors behind the “high profile” RIA offerings mentioned above – meaning Adobe (Apollo), Microsoft (Silverlight), and Sun (JavaFX) – are customers in some capacity. As are backers of some of the “lower profile” technologies, such as Eclipse (RCP) and IBM (RCP, XULRunner). I think that covers it.

Q: Just to set expectations appropriately, what are your thoughts on the need for RIA technologies in general?
A: I’m a confirmed skeptic. Are there areas of opportunity? Sure. The JavaFX focus on mobile devices, as an example, I think is one area of significant opportunity because a.) the browser paradigm isn’t cemented on mobile devices, and b.) it probably is not the best usage of limited screen sizes. Likewise, there are things that HTML, CSS, Javascript and so on simply can’t deliver without some help – things like video.

But overall, I’m less convinced than many that we actually need some of the technologies being offered.

Q: Why is that? Some of the demos, after all, are very cool.
A: Well, let’s set aside my concerns with the ulterior motives and agendas at the moment, and just focus on the actual use cases. Ultimately, I come back to something Tim Bray wrote nearly four years ago. In part, he said:

On more than a few occasions—most recently in the context of Avalon—I’ve observed here that both IT admins and end-users prefer browser-based apps to traditional compiled clients, for everything except content creation. Every time, I get emails and incoming pointers from people saying “You just don’t get it, the Web interfaces are so tired, we really need a richer UI paradigm.” The interesting thing is that these reactions are always—every time, without exception—from developers. Not once has an end-user type person written in saying they wished they could have a richer interface like the kind they used to have in compiled desktop apps.

I agree with this. Forget the fact that I spend better than 95% of my day in a browser – yes, even for email and so on – because I’m as far from the typical user as you’re going to get.

Just consider your family and friends: are they mostly working off of network based applications? Webmail? Search? Banking? And so on? If yours are anything like mine, the answer is yes.

Cue Joel Spolsky:

“Users don’t seem to care about the little UI glitches and slowness of web interfaces. Almost all the normal people I know are perfectly happy with web-based email, for some reason, no matter how much I try to convince them that the rich client is, uh, richer.

So the Web user interface is about 80% there, and even without new web browsers we can probably get 95% there. This is Good Enough for most people and it’s certainly good enough for developers, who have voted to develop almost every significant new application as a web application.”

Q: But still, there are things that rich clients can do that thin clients cannot, correct?
A: Of course. Just as there are things that thin clients can do that rich clients cannot. Or, as in the case of cross platform compatibility (try and find Linux support for Apollo or Silverlight) choose not to.

But the thing I find fascinating about the capabilities question is how quickly that’s changing. A few years ago, it would have been ridiculous to suggest that CRM could be delivered via the browser. Now? Saleforce.com and SugarCRM seem to be doing fairly well at that, and we at RedMonk are very pleased with Highrise. Even applications that have been held up as canonical examples of applications that can’t be delivered via the web, like Photoshop, are going online.

As Bill de hÓra says:

The real question is, what requirement cannot be met by a browser based app, *especially* if you include XUL? I mean fundamentally can’t be met or utterly pointless, not just “difficult” (difficult is merely motivation). The benchmark used to be a word processor, now it seems to be Photoshop.

That is indeed the real question, as far as I’m concerned.

Q: So you’re not convinced, in other words, that the extra bells and whistles are going to compel adoption?
A: In some cases, they certainly will. But ultimately, history seems to indicate that ubiquitous availability trumps functionality. The browser is available on any platform; at this juncture, at least, many of the aforementioned RIA technologies are not. Which is not to mention that the functional gap has narrowed dramatically over the past few years: application responsiveness was addressed in part by Ajax, offline capabilities are in the process of being solved by a variety of approaches.

Q: What do you think the market opportunities are, then, for the RIA technologies mentioned?
A: Obviously, I think the individual technologies will start from their respective ecosystems. Apollo will appeal to Flash/etc developers, JavaFX to Swing/etc devs, Silverlight to .NET folks, and so on. And to be clear, those respective ecosystems are nothing to sneeze at; they’re very sizable in their own right. Each technology, in effect, has a built in opportunity in front of it to leverage.

The question will be, in my mind, to what extent each can grow beyond its own developer base. Can they, in other words, begin to poach some of the developers that today are developing pure web applications. Can they persuade these independent developers that a.) there’s a volume audience waiting for the type of internet application that cannot be delivered using today’s pure web technologies, and b.) that their respective infrastructures are the right path now and going forward.

Q: What do you think the answer is?
A: Reactions, as you’d expect, depend largely on who’s doing the commenting. If you’re a Flash developer, or a Java developer, or a .NET developer – what Tim would refer to as a sharecropper – the odds are you’re pretty excited. And that’s probably a good thing; more capabilities for those platforms is certainly welcome.

But amongst folks that I read, what I see is substantial and mounting concern over, potentially, a threat to the web.

anaesthetica:

“The answer to the question of Mozilla’s direction seems dependent on what one sees as the proper goals of Mozilla. Is Mozilla simply a browser company? Is it broader than that: a platform for internet applications? Or broader still, as the central front and last best hope for a free and open web?”

Coté:

“To cut to the chase: the growing Flash/Flex/Apollo RIA reach rankles me.

It seems like a direct threat to the web.

The path that I’ve seen Adobe going down is creating their own networked platform. As I think of it “the web without all that web.” Instead of using the web, you’d use the Adobe client, be it Acrobat to edit forms or one of the RIA clients, or, at least, an HTML page with an embedded Adobe RIA.

There is no single vendor that’s created and provides the platform of the web: as you may recall, Netscape and IE tried the proprietary lock-in gambit. And then were were Java applets, ActiveX, and all manner of other end-routes around plain old HTML. In the end, no vendor or approach has been able to shove the web off into a corner and treat it just a back-end.”

Jeremy Zawodny:

“The browser is the new desktop and Microsoft is hoping that the CLR and Silverlight in general will be the new Win32 API and/or virtual machine. And they’re doing it in a way that only Microsoft can: by delivering full documentation, debugging tools, very large partners, and a world-wide network of trained evangelists and support staff. Say what you will about the company, but they know how to roll out software to developers. They’ve been doing it for a very long time.

That’s really what this is about. It’s not about competing with Flash. Microsoft is thinking much bigger than people seem to be giving them credit for.”

Mike Shaver:

“I don’t think you should need to buy, or even use-for-free, any given tool to build the web, and by using and helping to drive open web technologies Mozilla lets people choose the tools they want to use. We don’t force you to use the ones that we make money or marketshare on: you can use Eclipse or Firebug, Rails or J2EE, Komodo or Notepad, YUI or Dojo. If you ask the people who are building the exciting and significant apps on the web today, be they gmail or eBay or twitter or facebook or flickr or even Windows Live Search, I bet you that vanishingly few of them use IDEs. They use the tool that works best for them, for a given problem, sometimes using a bunch at once. I would be very surprised to discover that all of a given team even uses the same text editor, to be frank.”

Mark Pilgrim:

“Play with your vendor-specific runtimes. Don’t call me when you wake up one morning with a pink line in the round window and your BFF vendor won’t return your calls. If you need me (but of course you won’t), I’ll be holed up in my drab unpainted toolshed around the corner, quietly building applications on the web that works.”

Rafe Colburn:

“These latest announcements are a continuation of the great history of vendors trying to get people to abandon HTML in favor of the proprietary flavor of the month. The most successful attempt has been Flash, but it hasn’t made significant inroads against HTML. Most Web sites built using Flash are derided as useless and idiotic. Java Applets, ActiveX controls, and all other attempts along those lines have been failures. The title of this post refers to one of the original threats to the Web — Microsoft Blackbird. Back in 1995, everybody was talking about it as a richer, more powerful platform to replace HTML. (Check out this Byte article for a breathless preview that contrasts it with Java.)

Needless to say, I’m still betting on the web. I imagine the latest generation of proprietary web-based platforms will wither on the vine just like their ancestors.”

Sam Ruby:

“A worst case scenario may very well be that, over time, increasingly more and more content gets rendered by a common plugin that is closed source and controlled by a single vendor.”

Simon Willison:

“The fawning over Silverlight and Apollo is incredibly short sighted.”

Ted Leung:

“In the end, though, I probably won’t be doing much with Silverlight, for the same reasons that I’ve written about before. The technology has definitely gotten stronger, but the other issues haven’t really changed much: there are no tools for the Mac or Linux, and as far as influencing the technology, you’re just standing outside the Big House, pressing your nose up against the window.”

Q: Most of the concern, then, seems to center on the vendor oriented initiatives: what of the alternatives?
A: Glad you asked. Back in March, Anne posited that the real threat to Apollo was Firefox, not Silverlight. I think she’s correct in her assertion that Mozilla is the real player here, but to me its the combination of Firefox and XULRunner that’s the real threat. One of the more perplexing developments in all of the discussions of Apollo, JavaFX, Silverlight, and so on to me has been the glaring omission of XULRunner. For the unfamiliar, XULRunner Wikipedia defines XULRunner as “a product in development which will serve as a runtime environment for XUL applications. It replaced or renamed the Gecko Runtime Environment.”

In development it very well may be, but the projects being built on top of it are interesting. Mitchell mentions Joost and Songbird, but I’m far more intrigued by its usage within IBM’s Lotus portfolio. Faced with some of the same challenges application development wise as Adobe, Microsoft, and Sun – but without the same need for platform relevance – IBM chose the Mozilla route. Along with, of course, their RCP foundation.

As James Andrewartha has very kindly kept me appraised of, there’s considerable upheaval within the Mozilla community at the moment concerning XULRunner, so that may be playing a role. See, for example, Chris Brentano’s comment from here:

I think that despite what Mozilla and Co think their obligation to the community is, the community obviously has a different perception. Chris simply stepped up to say what many people I’m certain were thinking. Mozilla took millions of users under their wing, offering a “Better, More Secure Web Experience”, and while they’re giving away their product for free, they still have to support their customer base, and part of this (as Chris described) is to keep the web open and free by stepping up to the challenge of proprietary and closed frameworks such as Apollo, Silverlight and Java FX. By failing to do so they fail the millions of people they liberated from closed proprietary products such as IE that they worked so hard to free people from.

You don’t criticize if you don’t care, as the saying goes, and I think Mozilla’s moves to address the specific issues here are almost besides the point.

What’s far more relevant, and far more interesting, is the importance a number of developers are beginning to place on what was once little more than an interesting project. In a strange way, the introduction of Apollo, JavaFX and Silverlight have galvanized interest in the Mozilla based project, and compelled it in some fashion to (willingly?) become the standard bearer for a multi-vendor controlled future.

Q: How do you mean non-vendor controlled? Aren’t we likely to see open source implementations of JavaFX and Silverlight, at a minimum?
A: Indeed we will. The open source JavaFX project page is already up, and Miguel and his intrepid band of Mono developers have committed to implementing an open source version of Silverlight under the project name of Moonlight. And while Apollo isn’t open source, Adobe is releasing the Flex technologies.

But while these are commendable decisions on the parts of the respective vendors, open source does not in this sense equate to independent. In some respects, it’s akin to the difference between the open source Linux and MySQL projects. You can freely obtain the code for each project under the same license, but the former project is contributed to and driven by a number of parties while the latter is maintained and developed solely by a single entity.

Q: The motives, then, are what you are questioning?
A: In part. Consider the shift to web applications, from a vendor perspective. At one point, you needed expensive tools to design me an application that I needed to a.) pay you to run, and b.) pay someone else for an operating system to run it on. That’s good for vendors.

For the general computing public, that’s still largely the case, but the trend is clear: applications are increasingly being developed using free tools and delivered via a medium that is indifferent to my operating system, and I may or may not pay you for the application. That’s good for customers.

There will be, rightly or wrongly, concern on the part of developers that the RIA technologies are little more than an attempt by vendors to stave off a future in which they’re significantly less relevant. Hence the increased attention to technologies like XULRunner.

Q: What about choice? Isn’t it good that developers have more choices for designing richly functional applications?
A: As mentioned above, I do think it’s a positive for the respective communities that these technologies are made available to them. But, like many of the folks above, I’m concerned at the larger ambitions harbored by some of these technologies. A proliferation of content delivered in Silverlight, as an example, would negatively impact me as a Linux user. Ditto for Apollo.

But I’m also concerned that the task of web development – already non-trivial even with a handful of viable browsers – could get even more difficult. Beyond the technology implications, the Paradox of Choice is sure to be operative.

Q: Considering the above, then, what lies ahead for the mentioned technologies?
A: Keeping it conservative, as I dislike intensely the business of prediction, I’d say the following: Apollo will capture the attention of the Flash/Flex crowd, but have difficulty displacing XULRunner for applications such as Joost or Songbird. Silverlight, will initially gain traction as a Flash alternative for Microsoft-heavy shops, and build from there. JavaFX, meanwhile, will build out from its mobile story, which is quite strong, but have trouble with desktop penetration. RCP will remain buoyed by IBM’s dedication to the platform, while XULRunner – depending on how the community perceives their response to recent criticism – will pick up momentum not because it’s a platform of choice for ISVs small (Joost) and large (IBM) – but rather the fact that it’s not the competing technologies. Beyond that, it’s too difficult to say.

Q: So in short, your views are…
A: If you’re working with the web, and staying true to the path of platform independence and compatibility, you’re with me. If you’re not; if you’re trying to replace and/or subvert the web, you’re against me.

Categories: Application Development, Open Source, Software-as-a-Service, Trends & Observations.

  • http://www.monson-haefel.com Richard Monson-Haefe

    Interesting article. I find it difficult to understand, however, how XULRunner is any better than Flash/Flex, JavaFX, or Silverlight in terms of changing the Web. XULRunner will make as much of a change as any other RIA technology open source or otherwise.

    In addition, you fail to talk much about Ajax at all which is surprising since its considered the most popular RIA technology today. The advantage of Ajax over XULRunner and other RIA technologies is that its integrates seamlessly with HTML content and is browser independent. XULRunner on the other hand is tied to the Firefox browser.

    You are right that RIA technologies in general are an end-run around the Web. In fact, RIA technologies tend to disable one of the most important aspects of the Web, hyperlinking. In particular deep linking which has made the web what it is today.

    So I don’t fundamentally disagree that RIA technologies changes things and that they move away from the Web, but I do disagree that XULRunner is some type of pixy dust that will make all the proprietary solutions go away.

    All the best,

    Richard

  • someone

    Excellent overview, very well thought out and qouted.

  • http://redmonk.com/sogrady sogrady

    Richard: thanks for the comment. couple of points:

    re: Ajax – the context of the piece being the new RIA technologies, you’re correct that i spent little time on it directly. i thought it would be implicit, however, that when i mentioned my skepticism of the Apollo/JavaFX/etc alternatives it would be understood that the alternative was Ajax. i’m not sure what i’d be setting it up in opposition to if not that, but perhaps i didn’t make that clear. thanks for bringing that up.

    re: “XULRunner is any better than Flash/Flex, JavaFX, or Silverlight in terms of changing the Web” – the point is not that’s it better. i don’t think that’s stated anywhere in here, and certainly not from a technical perspective. the perception that i’ve observed, rather, is that Mozilla’s perceived independence is the differentiator here. that doesn’t make it “better”, but it does have a role to play in adoption and interest.

    re: the contention that Ajax is browser independent, i’d take mild exception to that. Google Calendar, as an example, was not Opera compatible last i checked and therefore not usable on the default browser that ships with devices like the Nokia 770. or how about Outlook Web Access, which delivers a rich UI to IE users, and a subpar experience to everyone else? i’d say instead that Ajax can be browser independent.

    lastly, if you don’t believe “that XULRunner is some type of pixy dust that will make all the proprietary solutions go away” we’re actually in agreement, because i don’t believe that either. where non-browser RIAs are called for, as in situations such as Songbird, i expect XULRunner to be an interesting consideration for developers. no more, no less. and certainly not something that will make “all the proprietary solutions go away.” if i made that contention above, feel free to point it out and i’ll correct it.

  • http://shebanation.com Andrew Shebanow

    Interesting, need to think on this before replying in depth. But I agree with Richard on the XULRunner point: XULRunner is no more a part of “the web” than Flash or Flex or Apollo or Silverlight – XUL applications don’t run in IE, or in Opera, or anywhere but the Mozilla world. XULRunner isn’t part of any web browser, either, and there is no View Source.

  • http://www.devel.co.uk/ Paul Cooper

    How about the various offline cache-sync apps that are either framework or app specific, e.g. Zimbra offline, Dojo, and Slingshot. They have the obvious pro that they are simply local versions of existing HTML + Ajax technology with syncing as soon as network appears, and all have the con of being tied to their particular framework (Dojo javascript, Rails) or application (Zimbra).

    A typical part of the elevator pitch for RIA is the ‘web apps don’t work on the plane’, and despite what DHH would contend there are plenty of situations when web apps suffer – flaky / slow networks, temporarily overloaded servers, etc (my parents are still on dial up so I know all the cons of all apps I use) . Can’t count the number of times I’ve lost blog posts or emails because of random issues at some point in the stack. Perhaps local caching internet apps (LCIA?) will be the ‘good enough’ answer to RIA?

  • http://blog.digitalbackcountry.com Ryan Stewart

    I tend to agree with Andrew, why is XULRunner more “web” than Apollo? I get the impression from the post that most of it is due to the fact that XULRunner is an open source project. Is that correct?

    I’m a big fan of XULRunner, but it can’t keep up when it comes to rich ,edia. That may not be important to some developers, but it is important to a lot of customers. And I think it’s one of the big reasons Flash and Silverlight are talked about a lot.

    =Ryan Stewart
    Adobe Evangelist

  • James

    Excellent write-up Stephen. Slingshot is basically Apollo for Rails from what I can see, although it’s not clear what browser they’re shipping. Firefox 3 will have offline data storage, which will available as direct access to the embedded SQLite in XULRunner 1.9. Which leads me in to the primary advantage of XULRunner – you don’t need to learn another language to use it. Everyone has to learn CSS and JavaScript for web dev these days, and that’s still true for all the RIA platforms except JavaFX, but only with XULRunner do you not need to learn another. This is also why Firefox extensions are so numerous and are almost (or definitely according to MoCo) a RIA ecosystem in themselves – see the eBay browser extension and others. Their View Source is just unzipping the jar on the filesystem, which extends into XULRunner apps – I’m looking at Songbird’s .js files right now.

    Which is not to say it’s a panacea or there aren’t barriers to adopting it, just that it has more to recommend it than not being from Microsoft, Adobe or Sun.

  • http://redmonk.com/sogrady sogrady

    Andrew: not sure that i – or Richard for that matter – argued that XULRunner was “more a part of ‘the web’ ” than Apollo. but in any event i do think it distinguishes itself from each of the technologies you mentioned (with the qualified exception of Flash) – Flash or Flex or Apollo or Silverlight. it does so on the basis of cross-platform support. XULRunner right now supports Linux as a platform, while Apollo and Silverlight do not. Flex? no Builder for Linux. Flash? you support Linux now, but still don’t put out builds for x64, and skipped Flash 8 for Linux entirely.

    for many potential developers and consumers, this is a non-issue. but contrasted against the ability of XULRunner to market to virtually any platform, and it is nonetheless a differentiator.

    Coop: an excellent point. i tried to work that in with this bit: “Which is not to mention that the functional gap has narrowed dramatically over the past few years: application responsiveness was addressed in part by Ajax, offline capabilities are in the process of being solved by a variety of approaches”, but you’re right to emphasize it. the ability of offline apps to persist data locally is a potential game changer in my mind, without question. it doesn’t make the richer RIA frameworks useless, but it does remove one of the more critical use cases.

    Ryan: the importance of XULRunner, as i apparently failed to convey, is more than the fact that its open source. according to many of the developers that i speak with, it’s that Mozilla’s offering in this space is comparatively agenda free. unlike Adobe, Microsoft or Sun, Mozilla really has little at stake here. as long as Ajax persists as a legitimate application platform, their value proposition is cemented – and they have no shareholders to answer to. such is not the case with Adobe, Microsoft or Sun. while each of those firms is addressing a legitimate market need with their RIA offerings, their macro ambitions can and probably should be questioned. in Adobe’s case, this is probably due at least in part to previous derogatory commentary from Adobe made in the direction of web applications (e.g. “Javascript sucks” or “the fact that the back button doesn’t work is a.) a myth or b.) a good thing”). this has given rise – rightly or wrongly – to the impression for many that Adobe is working against, rather than with, the web.

    as for the rich media comment, i’d certainly agree that when it comes to things like video playback and display, Flash is light years out in front. that said, the Songbird media client does a decent job of playing media on a variety of platforms by leveraging existing technologies.

    in any event, it’s not as if i’ve contended above that XULRunner is the once and future RIA platform. far from it.

    James: excellent points. i would have posted your emails on the subject, but didn’t have time to wait for permission. wish they’d been blogged publicly so i could just point to them ;)

  • http://www.redmountainsw.com/wordpress Chui

    It’s a matter of time before RIAs dominate the web.

    In answer to Joel Spolky’s comment, green screen applications would have been adequate for the web too, but people do have a preference for applications which is more tactile and visual.

    The lack of RIA style application on the HTML platform is no because there is no demand, but that it’s so damn hard to write one that works across the board.

  • http://blog.digitalbackcountry.com Ryan Stewart

    I think that’s probably the primary disconnect you and I have Stephen. I don’t think having shareholders to answer to automatically puts your motives into question. I’m also not sure that Mozilla could be considered agenda free. Don’t they want the Mozilla platform to succeed? Isn’t that an agenda in and of itself? But isn’t that what ever organization and company wants – to see its solution succeed? I guess I’d be curious to see what traits you think make it agenda free. The open source? The basis on open standards? The fact that it’s a non-profit?

    As I said, I really like XULRunner, and I think there is a very significant place for it in the market. I think this particular market, like most of the others in the technology industry, is going to have a blend of different approaches to solving a “problem”. I think that kind of ecosystem is beneficial for everyone. Is that crazy?

    =Ryan Stewart
    Adobe Evangelist

  • http://redmonk.com/sogrady sogrady

    Chui: respectfully disagree. i think the constraints of the browser from a UI perspective actually have very beneficial implications for usability. it’s not that the browser is the perfect metaphor for every application – it most certainly is not – but that it works well for a lot of them. that’s a better and more efficient paradigm than having to learn a different UI for each app, which could be the case if RIAs become more of the norm.

    Ryan: you seem to be implying that my contention is that shareholder interests and developer or user interests cannot align, and i don’t think that’s the argument i’m making here. there are countless counter arguments to that position, the simplest of which is Google: better, more user friendly ads made them a mint, and therefore aligns well with shareholder interests. everyone’s happy.

    that said, it seems relatively straightforward to me that public companies should be subject to a level of scrutiny that non-profits should not, simply because the financial implications are so much greater. quick example: were and are the motives behind IE and Firefox different? you bet, because they’re coming from totally different places – and – money is at stake. lots of it.

    the question being asked in many quarters these days, then – and rightfully so in my opinion – is whether or not the Adobe (or Microsoft or Sun) shareholders’ interests are aligned with the developers and users in the same fashion. frankly, we don’t know the answer yet.

    but do i think it’s entirely unreasonable for developers and users to be somewhat more trusting of Mozilla’s motives? no.

    i’d also object to your simplification of my agenda argument. you omitted an important modifier with respect to my usage of “agenda-free” – the “comparatively.” there’s no question that Mozilla has an agenda with respect to Firefox, and to a lesser extent XULRunner, but it simply does not have the same sort of financial implications that Apollo does for Adobe. Mozilla’s a.) not public and b.) a non-profit; that does change the equation significantly, despite their holding corporation.

    none of this makes Adobe “evil” or Mozilla “good” of course, but it does – as nearly as i can determine – have implications for developer perceptions and adoption. Apollo, as mentioned above, will undoubtedly find a market and a sizable one in its installed base. and XULRunner has proven nothing yet. there is, as you point out, undoubtedly room for both.

    i really can’t see how anything i’ve written above, moreover, contends otherwise – that there isn’t room for a blend of approaches. if you see something that says “XULRunner is the once and future RIA platform”, please quote that for me and i’ll respond directly.

    otherwise, i think we’re more in agreement than not.

  • http://www.redmountainsw.com/wordpress Chui

    Stephen, while I agree that limiting the vocabulary of interaction in user interfaces make good sense, there are some very basic interaction units which are missing in HTML. For instance, a grid for entering, sorting data. Another is a combobox.

    RIA like Silverlight may demo with fancy pants GUIs, but I think Adobe Flex illustrates how having basic, familiar user controls that HTML has long ignored can go a long way towards how quickly and effectively web applications can be built. The time it takes to whip up a web application can be easily 10x that of a Winforms application.

    On top of it, a lot of web applications depend on hacks that consume a lot of memory footprint. 40Mb for a web-based instant messenger is simply untenable in the long run. With lower memory consumption, RIA VMs can change the game in terms of deployability and ubiquity on non-PC devices.

    The Web is still an open frontier. When it comes to a shootout between platforms, there are only two possible outcomes – the quick, and the dead.

  • James

    Chui: XUL also has quite a few of those widgets http://developer.mozilla.org/en/docs/XUL_controls and in this and other respects XUL/XULRunner and Flex/Apollo are quite similar, differing more in the community and license behind them.

    Stephen: I did give permission to quote in the first email I sent, but no matter. I do have a post fermenting (fomenting? the distinction goes all the way back to Latin – to boil vs to heat) on something you touched on in the post, and more so in the comments – who the driving force behind an open source project is. Also possibly some ruminations on Google, but I should probably just post rather than wait until I’ve crafted the perfect response.

  • http://www.dekoh.com Vijay

    Stephen,

    I agree with good parts of your analysis. Here are my thoughts.

    Rich Internet applications on the the desktop bring richness in 3 dimensions:

    1. Rich in user experience. Adding ‘Rich Interface’ to web hosted apps was the origin of RIA. This has led us to AJAX and renewed look at capabilities offered by Dynamic HTML, Javascript and CSS.

    2. Rich in functionality. Applications can leverage the web (web services and APIs) and combine it with local desktop resources (devices, filesystem…)

    3. Rich in access. Allowing users to interact with the application online or offline creating a seamless user experience.

    The platform needs to be
    1. cross-platform
    2. cross-browser (or outside the browser Apollo and JavaFX)
    3. rich in API
    4. support standards-based technologies
    5. open platform

    Dekoh platform is built with the above in mind.

    Vijay
    Dekoh

  • http://www.flex.org David

    Hi Stephen,

    “But ultimately, history seems to indicate that ubiquitous availability trumps functionality. ”

    I think this asks the wrong question and gets the wrong answer. This isn’t about ubiquity or about functionality. It is about quality of experience, fidelity, richness, performance, and interactivity. Flash Player, HTML/JS are both ubiquitous and both enable a lot of functionality. Silverlight enables a lot of functionality and given MSFTs ubiquity has a shot a ubiquity over the next 5-10 years too. So put aside this straw man.

    The real lesson from history is that people will gravitate inexorably (but not always in a straight line) to better experiences. DOS to Windows. Buying a CD on Amazon circa 1997 vs downloading from iTunes in 2007. WordStar to Word. (I remember in the early days of Windows the number of people who just absolutely insisted that they were more productive with “good enough” non WYSIWYG word processors. That period didn’t last long.) Look at early versions of WebMail to today’s products from Google and Yahoo and MSFT. They are more responsive, more interactive, more performant. The 1.0 versions were not really good for any serious user of email. They are pretty good now (but IMO still not as good at Outlook if you get a high volume of email). But is this over? Will they not still evolve to better, richer, faster, more interactive experiences? Of course they will. And if one can build this with lower cost and great ease in a new technology like Flex/Flash or Silverlight or even XUL, of course people will. Who uses Wordstar today? Google Docs is cool and really opened people’s eyes to what is possible in a browser with HTML/JS, but once Buzzword (and presumably other like competitors over time) get out why would anyone go backwards–who doesn’t want better fidelity, better performance, etc.

    Anyone else remember how many mocked USA today when it came out for its use of…wait for it…color printing. The NY Times in black and white was indeed “good enough”. Well. the NY Times now uses color too. Look at any media type–TV, Radio, Music, Film, etc etc, or almost any experience in society, and it has trended toward richer.

    I am old enough the my first experience of the internet predates the first browsers. I spent long hours with usenet in the early 90s (anyone else spend time in comp.multimedia and alt.director?) . When I first saw web based forums in the mid 90s, my reaction was: who cares, usenet is good enough. Needless to say, I haven’t used Usenet much lately.

    This conversation sometimes feels to me like the caracature of the crotchety old guy telling the kid: “When I was your age, all we needed was kick the can to keep entertained…what do you mean you want a computer or video game or or or…”. My 7 year old uses the web most days. He mostly goes to sites like nickjr.com, looneytunes.com, miniclips.com, etc etc. He loves it. I watched him surf around last weekend on and off for a few hours. He never once experienced more than a trivial use of HTML. These sites all use Flash to create a richer, more interactive experience. Hours of surfing and using the web no real experience of HTML. Amazing. I am not suggesting that is the experience I want for all my applications by any means, but I am saying that he is not going to consider today’s level of HTML apps “good enough” when we grows up, any more than most folks here still consider usenet good enough.

    Regards,
    David
    (I work at Adobe.)

  • http://daveshields.wordpress.com dave shields

    Steve,

    Great post. Reading it spurred me to finish a post on the merits of HTML that I’d had on the backburner for a while. See Location, location, location

    HTML — Good Enough for me.

    thanks,
    dave

  • http://www.redmountainsw.com/wordpress Chui

    Steve,

    Kudos to XUL. Silverlight and Apollo is going to enjoy 90%+ deployment. Mozilla’s share is sizeable but nowhere near that. It’s a reality that developers have to consider.

  • http://www.redmountainsw.com/wordpress Chui

    Sorry, previous reply was for James.

  • http://redmonk.com/sogrady sogrady

    James: no waterfall, post agile-y ;)

    Vijay: thanks for the mention. will check out Dekoh.

    David: reasonable minds may disagree, of course. and this is certainly not the first time i’ve been cast as crotchety.

    but again, i do feel like i’m having words put in my mouth. i don’t recall suggesting that a.) interfaces won’t or shouldn’t evolve, or b.) that the technologies above will not or should have a place, as you seem to be asserting.

    i’m merely more skeptical of the volume opportunity than some.

    as for your son’s Flash exposure, that’s an interesting datapoint. but let’s consider the usage of Flash relative to the usage of alternate techniques such as Ajax. Flash is unquestionably richer, but would you contend that Flash is more common than the HTML/Ajax alternatives? i certainly would not.

    i’d also beware of putting too much stock in the richness argument. Adam Bosworth at one point recounted a story of one Microsoft executive informing him that .doc would eventually dominate the web, leaving .html for dead. his justification? .doc was far richer.

    richness is an important component to adoption and deployment, no doubt, but one among many.

    Dave: excellent, glad to see this inspired a response.

    Chui: i know this was directed at James, but i’ve got a question for you. Flash is already a.) deployed on better than 90% of machines, and b.) richer than HTML. why isn’t every site built in it, then?

  • Pingback: links for 2007-05-25 « The Wayward Word Press

  • Pingback: Bill Higgins :: links for 2007-05-25

  • http://sgddemo.sun.com/sgd Fat Bloke

    Stephen, what are your thoughts on the virtual display remoting approach to delivering applications over the internet?
    (IDC call this Presentation Virtualization or Desktop Virtualization)
    e.g. https://sgddemo.sun.com/sgd
    then just click “login” and use the server-based apps.

    How will this fit alongside RIA? or won’t it?
    -FB

  • Asbjørn Ulsberg

    Chui, think about how the HTML situation could have looked like if Adobe, Sun and Microsoft invested all the time, money and energy they have in Flash, JavaFX and Silverlight in HTML+CSS+JavaScript instead! Instead of sugar-coating their own proprietary product portfolio, they could have improved and advanced the web with free and open inventions through standardisation and implementaiont (in Internet Explorer for instance).

    HTML5 will address much of what you point out of HTML4’s failures and shortcomings. It will have a data grid that allows for sorting and entering data, with a rich scriptable DOM on top of it (as all other things specified in HTML5). It will also have a combo box (through the “list” attribut and “datalist” element). Please have a look at the Web Forms 2.0 specification on whatwg.org.

    Now, back to the energy investment. This especially applies to Microsoft, which could have done quite a bit to improve the bad situation web developers have when building web applications today. Most of the “hacks” you mention are done solely to circumvent bugs or incompatibilities in Internet Explorer. What if Microsoft had fixed those, say, 7 years ago? How would the situation be today? Perhaps we could have invested more time building applications than building around bugs?

    There’s a long way to go and the reason for that is (among other things) because time, energy and money is invested in the (in my humble opinion) wrong fields and that some companies still believe in the binary, proprietary, closed, un-view-source-able, un-hyperlinked, hypertext-defeating world instead of the Web. I think that’s both old-fashioned and sad.

  • http://www.flex.org David

    Hi Stephen,

    Indeed reasonable minds may disagree, but now I am not even sure what exactly we disagree about. you write, “but again, i do feel like i’m having words put in my mouth. i don’t recall suggesting that a.) interfaces won’t or shouldn’t evolve, or b.) that the technologies above will not or should have a place, as you seem to be asserting.”

    OK, so do we agree that interfaces are and will continue to evolve toward richer, more performant, more interactive, (and implicitly likely leverage client side resources (CPU/Storage))? Because if so, I think we are either caught in a semantic argument about the term RIA, as opposed to the substance. Whether one uses Flex/HTML/JS/Flash Player or Silverlight/Java seems like a detail–interesting to developers, (and to me, at Adobe) but not really about the trend in app experiences. My argument is that the trend is inexorable to something that is best described as “RIA” but you may prefer another term.

    If we do actually agree on the trend, then the question becomes, what is the best way to create these evolving application experiences with ubiquity and the lowest cost/highest productivity. That is an entirely different question of course, and it is dependent on the nature of the app. HTML/JS and Flex/Flash (and hybrids of both) are effectively equally “ubiquitous”, so evaluate them on things like tooling, debugability, accesibility, maintainability, performance, availibility of UI framework(s), APIs for managing data, connecting to sockets, displaying graphics and media, etc. They both have strengths and in many cases the right answer will be both. But I’d love to see your POV on this… if you have actually used any of these technologies to build an application–what were the actual pros and cons?

    -David

  • Pingback: RIA - is it "Rich Interface Application"? « Software (Ad)Venturing

  • http://www.sbclist.com Steve Hilsman

    Enjoyed the post. Technically most of it is beyond me. However, I noticed that with the original post and each of the contributor comments, there was an awareness that the end user has a vote. How much horsepower (More or Less) does the application require to meet the user requirements and is within the scope of the developer/host ecosystem.

    Aristotle hosted a discussion on this topic a few years ago and Aunt Daisy continues today to ask, “Why can’t the damn thing just do what I want it to do? Nothing more and nothing less”!

    Maintain a list of the SBC product offerings worldwide. Many of them you did not reference in the post and comments. Many are not worth noting, now or perhaps never. But they have presence on the Web and have thrown their hat into the ring

  • Pingback: Around the web | alexking.org

  • http://www.redmountainsw.com/wordpress Chui

    Asbjørn,

    I’m all for better standards, all else being equal. The reality is until the VMs are on users desktops, they are quite irrelevant. XForms was talked about back in 1999, and where we are today? Hacked up javascript manipulating DOM divs.

    Stephen,

    I can’t argue with statistics. :) You are absolutely right. HTML beat Flash hands down in sheer deployment figures.

    But this is like saying 99% of phone usage is around people talking to each other, and not IVR. HTML is to the browser what the mouth is to the telephone.

    It’s not useful to claim HTML is beating other platforms on the browser because HTML defines the browser and the browser defines HTML.

    The real question is: what kinds of applications are we not seeing more of on the web, and why not? For instance, uploading photos is still a pain on HTML. Another example is serious data entry apps, with lots of validation screens. How many times do you encounter a screen that says “please press submit once, or your credit card will be charged twice?”. You can’t develop a serious line of business app (Bank teller app for instance) if your operators risk making that kind of errors.

  • Pingback: No need to go beyond the browser « Software (Ad)Venturing

  • Pingback: Chui’s counterpoint » Blog Archive » Why Silverlight May Yet Displace HTML

  • Pete F

    here’s an alternate ending…

    flash,silverlight and (curiously late entrant)javafx fight it out

    my pick for a winner would be microsoft, except a funny thing happens..

    in this desperate race, someone hits on the idea of supporting a markup protocol called html -you may have heard of it

    they figure a) the more grist they can find for their mill the better -b)they can extend html to include their native markup, thus creating a glide path

    suddenly they find that throughput of “native” markup is dwarfed by html, and they are the new web browser on the block, eating IE share from the inside out

    the other RIA platforms have to follow suit, even if they desperately don’t want to

    ***at this point we realise the the whole RIA fuss was all due to the arrested development of html -arrested by microsoft using the market share of IE -and who can blame them when everything they do for IE is a gift for google et al***

    but now the brakes are off -using IE as your browser no longer means that IE is your browser

    i can author a page in html and nominate the browser plugin to render it

    i can write a rich client app in java that does for real, what google web toolkit only fakes (a java html browser)

    html goes from its current state of “well that’s nice but if IE doesn’t do it then..” to “i never thought i would be writing to your magazine”

    the html standard rockets forward to fill that same vacuum that RIAs plan to fill

    which ushers in an html renaissance

    and that little paperclip thing in office turns into a real boy and ends poverty by making low cost keyboards with just one key that allow 26 poor people to work collaboratively

    and we wake up and it turns out to be all just a dream

  • Pingback: tecosystems » Adobe: The Good, The Bad, and the Both - The Q&A

  • Pingback: Microsoft to See Silverlight Installed on Millions of HP Computers | 网络赚钱网摘

  • Pingback: DailyDigital » Blog Archive » M$ forcing Silverlight onto people?

  • Pingback: tecosystems » Fight the Future

  • Pingback: No need to go beyond the browser

  • Pingback: RIA - is it “Rich Interface Application”?

  • Pingback: Interfaces en aplicaciones web « Blog de JoseMPelaez

  • http://mrwebservice.wordpress.com/ Mr Web Service

    I think Pete’s onto something.

  • Pingback: tecosystems » What Would SOG Do?: Views on Sun

  • Pingback: tecosystems » What am I Missing About Android Netbooks?

  • Pingback: tecosystems » The Rich Versus the Convenient

  • http://japangold.blogspot.com/ Mariko

    i think it’s entirely unreasonable for developers and users to be somewhat more trusting of Mozilla’s motives