Live data from Hacker News

SOAP: The 'S' stands for simple (not really)

harmful.cat-v.org

61–70 of 92 posts

Re: SOAP: The 'S' stands for simple (not really)

#61
post #57

Earlier quoted context omitted.

Big companies and their commercial interests.

Why in an earlier age, did DCE fail so miserably? It was amply backed by ginormous corporate interests.

One reason is that Microsoft's implementation was compatible enough with Sun's to pass tests but not to perform much useful work. Without MS's active participation, most enterprises wouldn't benefit from interoperability.

Re: SOAP: The 'S' stands for simple (not really)

#62
post #19

Why did SOAP win, and XMLRPC not win?

Soap was supposed to be the enterprisey safe superset of XML-RPC. From my experience back at the beginning -- XML-RPC was slightly underspecified, and would have used a bit more of a firm hand about clarification of what was legal and what wasn't. SOAP was wildly overspecified and complexified to the point that you needed an army of consultants. Which is just perfect for enterprisey stuff, since you conviently have a…

Yep... as I remember it, XML RPC was "specified" by Dave Winer, and it was really sloppy. As I remember, there was no discussion of character encoding in the spec, and if you read the spec literally, you actually HAD to generate invalid XML documents because the spec was written by someone who did not understand that there was such a thing as character encoding and that it was important. And Winer absolutely refused to add features or to allow any kind of process by which XML-RPC could evolve into something good enough to use. Then the Microsoft people who brought you COM in all its baroque loveliness got their hands on the concept and made an industrial strength, godforsaken, complex thing called SOAP. The problem with SOAP mostly stemmed from the fact that they thought that all the work would be done by compilers and IDEs and so forth... they thought all the programmer would do is click a button and hey presto they would be able to run one object on one server and another object on a second server, and who cares what happens on the wire protocol? It's the compiler's job! But that's a terrible recipe for interoperability.

Re: SOAP: The 'S' stands for simple (not really)

#63
I stopped using SOAP in the shower a month ago and have never felt cleaner. Showering is a more efficient process now:

- I spend less money on resources (SOAP, lotion, etc)

- I get clean faster -- SOAP used to slow me down

- Using someone else's shower is easy, I just take my towel. I don't have to worry if their SOAP is compatible with me.

Re: SOAP: The 'S' stands for simple (not really)

#64

This is great. My (so far, only) experience with SOAP started when my boss asking me to investigate the new version of a (very big) vendor's SOAP API. Support for the old version of the API was being dropped in a few days. It turns out that our framework has SOAP built in, so I had it suck in the WSDL and make a sample request. It was rejected with a generic error. As it turns out, our framework was generating reques…

This has been my exact experience wrapping several big SOAP APIs.

Worse still, I've (recently!) wrapped an XML api that cares about the document-order of sibling elements. It might as well be a binary format if I have to copy your request examples and can't use a bog-standard XML parser/generator.

Re: SOAP: The 'S' stands for simple (not really)

#65
A quick note to those python devs out there who have to wrap SOAP APIs and haven't discovered it yet, https://fedorahosted.org/suds/ is a very clean and pythonic SOAP client library.

It's developed by a man named Jeff Ortel (on behalf of Red Hat, I believe), and it kicks the pants off of SOAPpy/ZSI/wsdl2py or whatever else you're using. You're welcome.

Re: SOAP: The 'S' stands for simple (not really)

#67
I will now share my secret SOAP API Pro Method:

Step 1: Ignore all tools which supposedly make things easier (very important)

Step 2: Find the web service API documentation

Step 3: Ctrl-C example XML request

Step 4: Ctrl-V example XML request into program, replacing appropriate parts with program variables

Step 5: Parse the response. You're on your own here... Godspeed. :)

Re: SOAP: The 'S' stands for simple (not really)

#68
post #17

Earlier quoted context omitted.

I'm no fan of SOAP, but as a C# guy I'm curious to know what took so long?

I've got the same question. But I've written them in both Java and C#. I worked on a project recently where we had a team of Java guys who worked on a SOAP implementation for a month. They could not get it to work in any way, shape or form. It was handed to me, and three of us did it a half an hour. All custom SOAP, still worked. I just don't comprehend why this seems so hard to people on Hacker News. SOAP is just an…

> SOAP is just another protocol and as messy as any other.

I think that's where you and most of the other people on the thread are losing it. SOAP is way messier than just good old REST.

(disclaimer: I've never been forced to actually use SOAP.)

Re: SOAP: The 'S' stands for simple (not really)

#69
post #11

Must be ~5 years since I last used SOAP. Needless to say I hated the stuff. Complex to build, complex to use (interoperability between different stacks - java/.net/... - was like 'cross your fingers and hope for the best'), complex to debug and walk through tcpdump network packets. It's complex in every way but the name. Of course, since that times I've alway advised against web services and so far I've succeeded in…

I'm being asked to create webservices so other developers don't do direct database access and their stuff wont break when things change. How do you manage that?

Google's internal solution is to encode data using http://code.google.com/p/protobuf/ and then to send it between processes.

Re: SOAP: The 'S' stands for simple (not really)

#70
post #4

I think it's a law that any protocol or technology with 'simple' in the name invariably isn't.

SMTP is really quite simple. Of course, the array of hacks that is a modern mail infrastructure isn't - from SPF via Bayesian spam filtering to MIME - but the protocol itself is, really, quite simple.

However it has quite a lot of complication in the encrusted extensions - http://fanf.livejournal.com/64533.html
Post reply on HN