1. Jul 5th, 2006

    If SOAP and REST are implementation details …

    Two more articles hit my inbox today. Both asking that we stop the silly emacs vs vi SOAP vs REST debate.

    Could we? Thanks.

    I’m hoping by 2007 we’ll stop arguing abstractions and learn to accept the differences and diversity of options. Two technologies, each suited to solve a different set of problems. Choice. Now what could be wrong with choice?

    But I can’t bear reading another article where XML/HTTP gets confused with REST. Can we stop with that? Bloggers can also fact check. Use Wikipedia. It’s free.

    SOAP is mostly enveloping around XML/HTTP. The devil is in that “all you can stuff” envelope. Unassuming, but it can hide an army of 3-ring binders and message handler chains. Still, it’s mostly about that envelope.

    Which is why I accept the argument that XML/HTTP is “SOAP Lite”. Some say that to belittle SOAP, some because they know simpler is better. Either way, we’re arguing color and taste of apples, which is a good thing. BTW, I like mine pesticide free.

    But REST is not XML/HTTP and never was.

    Just because you change encoding to remove the envelope, allow request even if they’re not POST, and parse operation name from URL, doesn’t mean you’re doing REST. You’re not even faking it. It’s still WS-* with a different on-wire format.

    The argument that Axis2 and Indigo do REST is nonsense. They don’t. They do SOAP lite.

    Do you really believe that SOAP and REST are two of the same and we’re just debating implementation details? Are you willing to stand behind those words?

    Show me.

    Switch your blog from REST to SOAP.

    Oh, and since I won’t have access to your feed anymore, can you please e-mail me your WSDL. I might have some spare time to create a SOAP client, so I can POST retrieve future entries, since your blog is no longer on the Interweb.

    That way I know you’re still blogging with conviction. And I can admit I’m wrong.

    It’s all just implementation details.

    Image by ohsleepless1

    1. Jul 6th, 2006

      Trying to clean it up and put it to bed… — Chip’s Quips

      [...] A post from Assaf the next day led me to dig further into what REST is. Turns out I’ve been doing a lot of that. Any time you write an RSS or ATOM feed and make it available at a URI, that’s an example of REST. Ruby on Rails uses RESTful URIs in their implementation of the model-view-controller pattern. Some even say that every web page implements REST, though that’s stretching the definition pretty thin. [...]

    2. Nov 28th, 2006

      tai

      > It’s all just implementation details.

      …and the (God|Devil) is in the details.

      Both use exactly same set of technologies, but because of this very slight difference, their use, usage experience, and targeting market is totally different.

      Reminds me of a quote from Building Communities with Software, saying: “Small software implementation details result in big differences in the way the community develops, behaves, and feels.”

    3. Nov 29th, 2006

      Assaf

      tai, I just read this article a couple of days ago, in a different context. It’s a good read, and I couldn’t agree more.

    Your comment, here ⇓