It's become fashionable to bash Web services and SOAP recently. Web services have been surrounded by far too much hype. SOAP is derided by developers as slow and over-complicated. Here's the back-backlash: The early adopters are naturally going to think SOAP is over-complicated because they could do it all themselves. But sooner or later you've got to get tired of doing the service requests by hand, of coding fault responses, of writing custom parsers for the return documents. And if you're not such a hard-core developer, those requirements constitute a high barrier to entry -- the freely available SOAP modules make life a hundred times easier.

And development time isn't all that matters. What you get with SOAP + WSDL is a reasonably standardised way of documenting your service, in a way that can be attached to a contract. And because it's all objects and method calls, there's a shared language to express Service Level Agreements in. Both of which are extremely important before a technology gets adopted by business. Web services do make life easier. The fact that SOAP is used makes it possible to implement commercially.

My favourite thing about Web services? I can get on with what I want to do (recombine things in interesting ways) without pissing around cleaning up malformed things to make them recombinable. It's the same reason I don't build my own computers, the same reason I use a Mac, the same reason I like science. Standing on shoulders.