I like to think i am more of a disloyal opposionist..
some keys to consider in my earlier post on SOAP and REST – those are
a. niche – my intention was never to say SOAP is dead, merely that is not a necessary condition for web service development. There is a class of applications outside the traditional requirements of high end transactional enterprise development and workflow that just don’t require the reinvention of Corba-class integration.
b. the comment there isnt any demand for SOAP refers to comments from the Creative Commons.
In other words i am talking about classes of applications. Scale matters in some situations. And for the world of guaranteed transactional application development WS-I obviously has a big role to play. But i also think MQSeries isn’t dead. It is niche though, in the sense there are other kind of apps out there that just dont need to be so heavyweight. But niches are OK in the world of software. This is Long Tail world – as i try and explain here Heck i even think TPF has a context, whatever the FUD. It has a new development toolkit refresh and new customers so who is to say what is dead. Its not dead but it is niche. SOAP has a future of course it does with the full might of Microsoft and IBM developer community push behind it. WS-I will be around for many years to come, just like Corba is still driving behaviours in the telecoms industry as any BEA Tuxedo shop will tell you. But its not the be all and end all. Indigo promises to be a solid platform for conversational web services, and will benefit in my opinion from being decoupled from Longhorn.
This week i read a story EBay is planning to move to more SOAP-based Web Services access, according to searchwebservices.com -
EBay itself initially used XML over HTTP for Web services communication, but is now moving toward a purely SOAP implementation, according to Adam Trachtenberg, manager of technical evangelism at eBay.
SOAP is well-supported by the Java and .NET platforms and is tightly integrated into many integration development environments and tools. It also defines standard locations in which to pass information such as the SOAP and tags.
But SOAP also has its drawbacks. It is not fully implemented in all languages, including the open source PHP, Perl and Python, Trachtenberg said. Nevertheless, SOAP still allows for more complex Web services interactions than Representational State Transfer (REST) or XML-RPC.
“XML-RPC handles 80% of what SOAP does and it’s only 20% as complex, but SOAP has better buzzword compliance,” Trachtenberg said. “[However], you should probably skip using XML-RPC, as it only makes sense when you control both ends of the wire.”
REST is the most minimal of formats; it is baked right into the HTTP protocol. Using REST, the client makes Universal Recourse Identifier (URI) requests using existing HTTP methods such as GET, POST, PUT and DELETE.
“REST doesn’t have the overhead of XML-RPC or SOAP. People really use it because it’s so easy,” Trachtenberg said. “You can map REST and SOAP to the same engine. Ebay is looking to have a more centralized engine for business logic fronted by different interfaces.”
That stuff needs parsing and i plan to speak to eBay about its API strategy soon. seems like there is agreement simplicity is contagious, but also a desire for more access from Java and .NET developers.
As Danny Ayers points out responses have been measured, rather than backlash-oriented so far. Thanks folks. Although i haven’t heard from IBM which i find interesting.
Mike Champion explains
flickr and Amazon are definitely “semantically rich” platforms, but they don’t have the pain for which WS-* offers an analgesic. Plain ol’ XML over HTTP works just fine, and WS-* is overkill, in situations where:
* information is public and encryption/authentication are unnecessary;
* all communication visible to the service consumer is done over one protocol, HTTP;
* nothing terribly bad happens if a message is lost or duplicated;
* and there are few demands for multi-part transaction management beyond what can be implemented with HTTP sessions or cookies.
. Lots of agreement then. its all about niches or not. It is not surprising MS would get it – how many really sophisticated COM+ developers are out there in comparison with the great mass of Access and VB developers? Its all about fitness for purpose.
Champion really is champion. There is so much clarity in his thinking its worth citing some more, even if you feel the scale argument may be laid on a bit thick.
It is true that IBM and MS have bet heavily on web services technologies, but at least after the initial flourish of web services hype in about 2001, they have not touted them as the balm for all web developers’ pain. Instead, they are driven by the requirements of enterprise developers who need to both preserve their investments in complex legacy systems that actually work while moving to integrate them with cheap, powerful, and ubiquitous desktop and internet systems. RESTful success stories such as flickr and Amazon tend to have build built from the ground up for the Web, whereas the target audience for WS-* generally does not have that luxury.
Finally, REST advocates like to paint an appealing picture of a Web governed by open standards that mesh well with one another and over which XML documents conforming to industry-standard schemas with well-documented semantics are transferred. Few who actually work down in the trenches suffer from this delusion for long. Even a dirt-simple idea such as the XML format RSS becomes an interoperability mess in practice. Our former team member Dare Obasanjo often writes about the challenges of implementing his RSSBandit aggregator in the real world web, and Mark Pilgrim http://www.xml.com/pub/a/2004/07/21/dive.html and Sam Ruby offer an even bleaker picture of the realities. Once again, it appears that REST is a fine idea for simple scenarios where bad stuff can happen with impunity and corner cases can be disposed of arbitrarily. Building secure and reliable applications for situations in which serious money or human lives are at stake is another matter.
Bad stuff is always an interesting space. I bet a hundred bucks some of the most fun you have had in your life has been “in a place where bad stuff can happen with impunity”. Freedom is indeed a dangerous place.
On the where human lives matter question i will push back very hard. The Tsunami was an awful event; it tore us all up. But what about the people on the ground. Forget the stock exchange; it couldnt do shit. Forget transactions for a minute. RSS was instrumental in aid efforts, as much as traditional reporting. Blogs have been instruments of freedom in places like Iran and Iraq. Human lives are most definitely at stake, and no amount of hardcore transactional web services is going to mean a hill of beans to getting things done in tough scary environments like these. Would i recommend WS-I for Boeing’s controi system? I don’t know, you tell me. Human lives carries a lot of weight in rhetoric. Millions of dollars i am all yours. You make some great points , and i really appreciate you taking the time.
When it comes to httprequest we’re definitely on it. Stephen is the only analyst i know nailing it. Just because the function has been available a while doesn’t make it old news. On the contrary what matters is when developers like those Amazon make exciting it. Then it becomes buzz.
Dare Obesanjo from Microsoft makes the case that MS is not a one SOAP fits all evangelist. Seems like an opportunity for MS so “fair dos”.
Dare has a tendency to keep it simple thinking. He points to differerent types of development stacks.
“Context is everything. Replacing a world of distributed applications written with DCOM, CORBA, Java RMI, etc with one where they are written using the WS-* protocols is a step in the right direction. I completely agree that it leads to better interoperability across technologies produced by the big vendors who are using incompatible technologies today. But when your plan is to reach as many parties as possible one should favor simpler Web services technologies like plain old SOAP or just plain old XML (aka POX)”
I may be misreading him here, but i am intrigued with the notion of “replacing a world” of apps.
Rafe Colburn is one practitioner who evidently thinks SOAP is a little heavy; SOAP is not for everyone is all.
Anyone that has been involved in an RSS workflow needs you dont always need heavyweight coding for workflow. check out basecamp as an example of RSS as project management engine. Semantic Web and triple thinking aligns quite nicely with simple URI-based approaches. So i think there are still some market desisions to be made. I even think that ebXML has some semantics worked out which may he harder to pin down than expected from those that don’t believe it has a role to play. But that is another story.
Will there be coexistence? Certainly. Mark Baker has strong views too and i always get a kick out of people that describe applications as gorgeous. He isn’t kidding – that is one link you shoudl follow. And wait–look, he is way better at this than i am. He says: “My intent here is just to throw cold water on the general concept of “SOAP = interoperability”.
Finally i have to say I am also interested that while Microsoft picked up the meme, IBM didnt, at least no comments on my last screed anyway. Perhaps they are rising above it all (not “it is” notice, but “they are” – as a total context shift i wonder whether the blog revolution means we should finally changes style and stop referring to companies as singular; any good journal, magzine, or paper or whatever calls companies “it” not they…. RedMonk does formally, but forgets before we edit formal reports and turn conversation into something more formal and saleable. maybe we as organisations have changed now because we have all become legion. there is no single corporate voice, just as there can not possibly be a single corporate development standard. i wonder how many blos cite companies as singular entitties?).
IBM could ask Sam Ruby to establish a RESTful service integration strategy. WebSphere is an increasingly powerful platform, but it isn’t always necessary. On that slightly inflammatory note i am about to head out of the office and go on holiday for a week in Portgual. Who knows, with any luck i may get the chance of a bottle of wine with Jaime Cardoso.
What is my final note? What is my final note? Oh yeah – its to read Stephen’s blog because as usual he is nailing it. Did i remember to say keep it simple stupid. Oh yeah Cote is too, when he asks just who is the new application developer? Who is this person and what makes them tick (nailing it, not stupid)? What the hell are they doing? That is what SOAP bigots should ask themselves. Oh yeah – - the title of the blog was POX. What? that’s right – “plain old XML”. Apparently that is what super people say. heh.