Traffic on BigCo's stretch of the information superhighway came to a grinding halt today as everybody had to stop and let (yet another) hand-crafted SOAP parser/generator/transport solution cross the road.
Unfortunately, the solution seems to have been drunk, and made its way very clumsily from one side of the street to the other. It was mumbling a lot, making the messages it was spouting a little difficult to comprehend, and its listening abilities also seem to have been affected by a little too much of The Drink.
Let me tell you something, people.
Going your own way and bypassing The Tools when working with XML is, in most cases, unforgivable.
When you go to hammer a nail into a board, what do you use? Your hand? Your head? A banana?
No! You use The Tools. You grab a hammer and pound. Hammers were designed to do just this sort of work, and they're exceptionally good at it.
You see, your hand is soft and fleshy. Trying to pound a nail into a board with it will result in:
- A nail that isn't pounded into a board
- A trip to the emergency room to have your hand sewn back together
A hammer, on the other hand, would make the job a snap.
So why, God, why are there still developers out there who insist on doing this stuff by hand?
If you can write your own bloody SOAP transport using a low-level sockets interface, then I promise you can learn how to use the tools that will generate your client/server code from WSDL/whatever you happen to have.
It isn't hard. Granted, WSDL is nasty as hell, and some of the web services mucky-muck we have to deal with is so ugly that our messages belong inside "http://schemas.xmlsoap.org/soap/paper-bag" rather than "http://schemas.xmlsoap.org/soap/envelope," but still...
When you avoid the tools and do it all by hand, remember that someone else is going to have to come along later and wipe the ass of the mess that you've left behind.