Skip to content

The beginning of the end

While attending the W3C Web of Services Workshop I had a brief conversation with Mark Baker and Nick Gall. All of us presumed the imminent demise of WS-*, but couldn’t agree on when. I said within two years, Nick thought much longer, and - honestly - I can’t remember what Mark might have said. The problem, though, was identifying what event (or series of related events) would be universally recognized as the WS-* swan song. Well, I don’t know about you, but this might be it: “REST is totally sweeping Microsoft,” the litany of WCF engineers expounding the virtues of URIs and GET (as collected here by Tim Bray), the “deeper support for the web” in .NET 3.5 (Orcas), the Astoria Project, the Windows Live Data component of Microsoft’s Windows Live Services (seeming Microsoft’s answer to Google’s GData), and finally the fact that Mark himself has been helping move some of this along.

So instead of two years, it was two months.

Now, of course, the same cast of characters are manning the ramparts in RIA vs. the Web. I know where I’d place my bets. Money quote: “you might say that RIA is to user interfaces as RPC is to messaging interfaces.”

{ 12 } Comments

  1. Mark Baker | May 14, 2007 at 1:37 pm | Permalink

    I expect I just shrugged, because I’ve been predicting its imminent demise since 2000 8-)

  2. Mike Herrick | May 14, 2007 at 2:18 pm | Permalink

    I’ve been with you and Mark from the beginning on WS-*. I just don’t understand the aversion to RIA.

    Are you saying that we don’t need RIA including Ajax or is Ajax ok?

    If it is ok, which browsers should we support? You do realize how much pain is involved in this right? You essentially write your app several times in supporting things like IE 5 and 6.

    I have tremendous respect for you, Mark, and Mike Dierken. Please help me understand.

  3. Pete | May 14, 2007 at 3:42 pm | Permalink

    Mike: To be honest I don’t have a horse in the RIA race — yet, and am not well versed in the internals of Silverlight and Apollo. I can see that RIA technologies are meeting requirements for you and Patrick, and within the firewall there may very well be a play for such things.

    However, whenever you see the phrase “something vs. the Web”, never bet against the Web. In the REST (aka the Web) vs. SOAP war we had what on the face of it was a very reasonable idea: lets take a well-known computing paradigm (RPCs), that can be effective in certain situations, and extend it to be all encompassing. The principal issue with SOAP, beyond vendor wars and lame specs and mind-numbing complexity, is that it ignored the very tenets of distributed computing that made the Web possible in the first place. It had to fail.

    Non-Ajaxy RIA looks like its going down the same path: “Lets take a well-known computing paradigm (rich desktops) and extend it to the Web.” What these vendors have already forgotten is that we had rich desktop applications (VB, PowerBuilder) and they were abandoned in droves for the Web — and no one seemed to mind. In fact, if an application is not Web-based these days (barring things like PhotoShop), people get up in arms.

    You might argue that people didn’t want Web-based apps so much as they wanted browser-based apps. That’s true to some degree, but part of the goodness of browser-based apps are those pesky links that can be so easily passed around. Part of the goodness was using the Web from Windows, Linux, Mac, a phone, a kiosk, where ever (despite MS’s attempts to preclude this). Part of the goodness was hitting “view source” to see how its done. And deep down inside, part of the goodness, was knowing that a browser was intimately mapped to the notion of exploring a web of resources and that a Web application exposed said web of resources.

    Now, the RIA engines may not have thrown the baby out with the bathwater, but I bet they would if they could. What we do have, though, are proprietary (despite lip service to the contrary) runtimes designed explicitly to marry developer and user to a single platform. And thus they have in essence carved off a little bit of the Web for themselves. And it’s not just a matter of being “un-Web-like.” It’s more like Active-X, and non-standard HTML tags, and half-assed or no-assed implementations of usable standards(CSS, SVG). Things like this have been driving users and developers nuts forever (still are.) But developers have slowly learned that yes, you have to code to the standards, ignore proprietary features, and be universally operable. And now MS and Adobe are trying to lure us all back again with some flash and some sexy tools. Sure they work, but they are not of the Web. And you shouldn’t bet against the Web.

  4. Bill Higgins | May 14, 2007 at 5:09 pm | Permalink

    FYI, at IBM various teams have been considering REST-style web services vs. SOAP/WSDL-style web services for quite a while, but there’s a gap between “using a technology” and “ready to talk publicly about using/advocating a technology”.

    I can’t speak for all of IBM, but I know on the project I work on (Rational Jazz) we wrote our first RESTful web services around Feb 2006, mentioned them in passing at RSDC in June 2006, and have been mentioning using REST in passing ever since. We’re not trying to make a big deal out of using REST because for us REST happens to be compatible with some of our design principles (simplicity, debug-ability, interoperability, scalability), but it’s not a marketing bullet point, so we don’t make a big fuss out of it.

    My guess is that various teams within MS have also been using REST for a while but didn’t talk about it either because it was too early or because the fact that they were using REST just wasn’t a top-line feature.

    Re: RIAs, I happen to think that they *can* be very compatible with both the web as we normally consider it and REST-style web services for that matter. That was part of the point I was making in my Ajax and REST article six months ago ( http://www-128.ibm.com/developerworks/xml/library/wa-ajaxarch/ ). It’s all about how you design them.

  5. Pete | May 14, 2007 at 6:42 pm | Permalink

    Bill: I read your blog along with many other IBMers, and I understand that REST is widely embraced inside your company. Heck, many of the authors of Atom and APP work for IBM. But Microsoft, historically more, erm, proprietary than IBM (of late), acknowledging the benefits of the Web and the limitations of WS-*, and backing it up with code is pretty momentus.

    As for REST not being a marketing point for IBM. That’s a shame, especially considering how far your marketing team has ran with SOA/WS.

    On RIAs, my comment to Mike wasn’t based on a dislike for “rich” (what’s not to like?). And certainly rich can be RESTful. My beef, for what it is, is against proprietary. Yes, Silverlight runs in FF and Safari, but not on Linux and for how long? Only MS knows. Windows use to run on non-Intel chips too. Sure Apollo runs on Linux et al, but not on 64 bit Linux. And what happens to Apollo if MS “wins” the RIA race?

    Ajax is fine, RIA is fine, even inside-the-firewall Apollo/Silverlight is okay. But these technologies are not the Web, and I would be extremely loathe to use them.

    Let me put it this way. Would you write an Active-X dependent app these days?

  6. Patrick Logan | May 14, 2007 at 6:49 pm | Permalink

    RIA’s like Apollo and Flex (a subset of Apollo) are not “versus the web” at all. They can *use* the web just as a browser uses the web. Just the programming model is more rich.

    You can do non-web things with those specific RIAs. But you don’t have to. One could argue that, for example, Seaside does “non-web” things since it has opaque uri’s, etc. Seaside is still useful. Non-web uses of these RIA’s is useful, *but* please understand that Apollo and Flex have all the APIs needed to “use the web as the web”.

  7. Pete | May 14, 2007 at 8:17 pm | Permalink

    Patrick: Don’t get me wrong. I’m not saying that Apollo and such are completely unto themselves. What I’m saying is that the browser runtime is proprietary. This may be perfectly acceptable inside the corporation, but it’s not for the Web at large. And, generally, when someone bucks the standards trend there’s blowback.

    NetBIOS or IPX vs TCP/IP
    WINS vs DNS
    DRM vs non-DRM

    Is there room for browsers to grow? Most definitely. And if MS and Adobe were working in the developer’s best interest, they could have put their efforts here. It’s mostly MS’s fault that the browser has remained as stagnant as it has.

    Ultimately, though, I don’t think this is my next fight. WS-* may be on its way out, but this whole SOA thing irks me a bit too. :-)

    Oh, and while I don’t know Seaside, if it uses opaque URIs, then it is definitely not “non-Web” in this respect. http://www.w3.org/DesignIssues/Axioms.html#opaque

  8. Mike Herrick | May 14, 2007 at 9:27 pm | Permalink

    (This comment was delayed because Akismet thought it was spam.  I hate spam.)

    Pete, thanks for expounding.

    But Ajax is afterall at best a hack right?

    It isn’t really a standard?

    How precisely is it of the web?

    Flash is on lots of browswers on enough platforms. Flex is FOSS. Do I wish Flash was FOSS too? Yes!

    So if Flash was FOSS would it be of the web?

    Like I have said, I came to embrace Flex very relectantly. If we are talking about basic get/post web apps then fine, Flash might be evil, but if we are talking about Ajax then try to implement a real (complex) RIA app with a couple of Ajax frameworks and decide if that is a development model you want.

    The fact is that browsers still do not interoperate well and building Ajax RIA apps is insanely complex. How is that of the web!?

    Anyhoo, much TBD on this topic. I’m glad there are vigelent eyes watching.

  9. Pete | May 15, 2007 at 9:58 am | Permalink

    Posted on behalf of Bill Higgins who for reasons currently unknown (probably the “Bad Behavior” plugin) was unable to post a follow-up

    > As for REST not being a marketing point for IBM. That’s
    > a shame, especially considering how far your marketing
    > team has ran with SOA/WS.

    To clarify, I was only speaking about my project (Jazz); you probably know more than I do about how the broader IBM markets our web services technologies. That being said, we (Jazz) do tend to mention our use of REST at conferences and in our documentation, but its not a focus because we typically focus on the scenarios we enable for users rather than the infrastructure that enables those scenarios.

    > Let me put it this way. Would you write an Active-X
    > dependent app these days?

    No and hell no. My view is that any web-based application I’m involved with should be able to check the “no extension/plug-in required” check box. The only place I see for extensions/plug-ins are third-party contributions (e.g. Greasemonkey scripts) or optimizations (e.g. advanced client-side caching to make a fast app faster), but core web app functionality and other quality attributes (perf, security, etc.) should *not* have require a particular extension/plug-in.

    But that’s my view. It doesn’t bother me if other companies (especially competitors) depend on plug-ins for core functionality, though I surely get pissed when I’m in user mode and get blocked some app requires a plug-in that I can’t install for some reason.

  10. Bill Higgins | May 15, 2007 at 12:19 pm | Permalink

    Wow, the ‘bad behavior’ plug-in sure has delicate sensibilities :-)

  11. Pete | May 15, 2007 at 12:40 pm | Permalink

    “Wow, the ‘bad behavior’ plug-in sure has delicate sensibilities”

    Agreed. Disabled.

  12. Bill de hOra | May 15, 2007 at 12:53 pm | Permalink

    “But these technologies are not the Web,”

    What specifically makes them so? Is Tamarin the Web? Eclipse? Dojo? I’d guess your beef it’s about whether the stack is proprietary, but you aren’t saying so outright.

    “Lets take a well-known computing paradigm (rich desktops) and extend it to the Web”

    Amarok is instructive here.

{ 3 } Trackbacks

  1. Stefan Tilkov's Random Stuff | May 15, 2007 at 12:36 am | Permalink

    RIA and the Web…

    Patrick Logan criticizes Pete Lacey for his claim that Apollo/Flex is not on the Web: Here’s how you do it: write the server as if any kind of web-able client could consume it. Write the client in Apollo or just Flex to consume that server’…

  2. [...] In the recent past, supporters of the W3C’s web services standards (sometimes known as WS-*) have argued fiercely with supporters of an architectural style called REST over the future of distributed architectures for large-scale applications. Now some REST supporters contend that the war is over and that the web has won. [...]

  3. [...] quite a turnaround in the distributed application development Now that REST has won in the sense of representing the future of distributed application development on the web, what do we expect to see? Why of course a flood of enterprise software vendors offering REST support of some sort or another: Microsoft and IBM have already recognized the opportunity with Astoria and Project Zero, respectively http://future.gigaom.com/2007/08/07/web-services-war-is-over-time-to-rest/http://wanderingbarque.com/nonintersecting/2007/05/14/the-beginning-of-the-end/  Cheers,Nasir Ali Khan  Posted: Friday, August 10, 2007 6:48 PM by nasir Filed under: Web Technologies [...]

Post a Comment

Your email is never published nor shared. Required fields are marked *