Adding Structure to the Tower of Babel
Since the World Wide Web exploded in popularity in the early to mid 1990s, literally millions of web servers have been made available, most with some type of server-side scripting capability. Many are used to process credit card transactions or perform database searches. Untold numbers of other servers accept survey information, provide stock quotes, host online chats, or display maps. Unfortunately, all of these sophisticated scripts were hidden and unpublished, accessible only through a browser-based HTTP transaction. In its current state, the web is not unlike the Biblical Tower of Babel: Work is definitely getting done and it's impressive to look at, but no one really has a clue what their next-door neighbor is doing! When Dave Winer and Userland Software introduced the XML-RPC specification in 1998, they empowered developers to voluntarily open their server scripts as APIs for any other server developer to use. Winer refers to this new platform as the "Two Way Web," meaning that both clients and servers have a voice in this new conversation. Out of XML-RPC grew the Simple Object Access Protocol (SOAP), developed in conjunction with Microsoft, DevelopMentor, and Userland (see http://www.soapware.org/bdg and http://msdn.microsoft.com/library/default.asp?url=/nhp/Default.asp?contentid=28000523). I'll discuss these two technologies in a bit more detail, and then look at where this is all heading.