Click here to show or hide the menubar.

Home >  Archive >  2010 >  November >  18

Previous / Next

XML-RPC keeps chuggin along
By Dave Winer on Thursday, November 18, 2010 at 4:02 PM.

I saw this cartoon comparing SOAP to REST in the Hacker News firehose feed, and wondered why Fox-News-style politics has to be part of technology discussions. Where is the religion coming from? Don't people want to use the best tool for the job? Would people willingly take a big step backwards? The answer to the last question is absolutely yes. It happens so often.  permalink

A picture named xmlrpc.gifOkay first -- let me get this out of the way -- SOAP is a mess. That's a strong statement coming from one of the guys credited with designing it. But I left the design process early because I didn't like the mess the big companies were making. I was quite vocal about it.  permalink

But the first versions of SOAP were really simple and easy to implement. You could do a full implementation in a weekend. The later versions were so complicated that you could never finish an implementation. No matter how complete you thought it was, someone could throw a call at your server that it wouldn't understand. A cynical observer might think the big companies liked this aspect of SOAP because they could claim to be standard-compliant without all that inconvenient interop! :-) permalink

Luckily the simple version of SOAP was published, in 1998, and a vibrant community developed around it. There are implementations in all the major development environments. It's baked into Python and the Mac OS. And a set of APIs for blogging tools was developed and were very widely deployed. All the major blogging tools supported the protocol, including WordPress which is so popular these days. I host the XML-RPC site, and to this day it gets a lot of traffic. A lot of people are, very quietly, using it. permalink

So when people compare SOAP to REST, and not to XML-RPC I wonder if they know that REST is missing something that it should always have had, a standardized way of serializing structs, lists and scalars. That's something XML-RPC (and SOAP) have always had, and any discussion of these technologies should include that advantage relative to REST, which forces you to cook your own serialization with every API. permalink

Because other developers like them, I implement REST interfaces all the time, and have been doing it for years. Every time I have to re-implement a layer that's provided built-into XML-RPC and SOAP. True, there is no single SOAP, and I would never, unless forced to, choose to implement an API in SOAP. But XML-RPC is a whole other matter. It's simple, easy, and it interops.  permalink

The need for a common serialization was so great that people are dumping XML in favor of JSON to get it. And when they do it, they talk about the incomprehensible complexity of SOAP. Too bad, because XML-RPC never had that complexity. permalink

So come on engineers, stop being so Fox-like and open your eyes. Maybe we can do better than we have been doing.  permalink

RSS feed for Scripting News
This site contributes to the scripting.com community river.


© Copyright 1997-2012 Dave Winer. Last update: Thursday, November 18, 2010 at 4:48 PM Eastern. Last build: 8/26/2012; 6:01:10 PM. "It's even worse than it appears."

RSS feed for Scripting News

Previous / Next