XML is not for Messaging
I think we are starting to come to the realization that the use of XML for real time messaging comes at too great a cost. At one time the thought was that bandwidth and processing power increases would overcome the inefficiencies in parsing XML and in the verbosity of XML messages. What has happened instead as the availability of bandwidth and processing have increased the volume of messages has increased as has the demand for much lower latency. This trend does not bode well for XML.
I want to go on record emphatically that I was one of the leaders in terms of championing XML messaging for financial markets. Not going to spin it. I did it and we had some successes. The optimization of FIXML that we worked on with the CME has provided a solid and practical messaging standard for the listed derivatives market. FIXML provided a platform to standardize business practices in addition to messaging. Those adopting FIXML seem to rally around its simple flat structure, its efficiency (from an XML perspective) and ease of use. However, no one that I know of have tried to move FIXML into the low latency front office transaction space.
There is increasing dissatisfaction with XML in not just the messaging area. At one time XML was viewed as the be all and end all for syntax. Yes, I drank this Kool-Aid(tm) as well (to borrow an oft used phrase from my friend Mark Novak at the CBOE). One summer while Jacob was in college I had him build an XML based FIX Testing language written in XML and processed by XSLT. Some day he will forgive me for this adventure in learning. Funny, that was the last time he worked for the previous instantiation of Lasalletech, preferring to find summer employment elsewhere.
We are seeing a move away from XML based syntax to Domain Specific Languages, which, no surprise, are being overused of course. DSLs have their place. I recently was invited by our friends at ThoughtWorks(tm) to hear Martin Fowler speak about DSLs. I quickly realized that we built DSLs back in the laste 1970 and early 1980s for computer simulation. Languages such as GASP, SLAM, SIMON, etc. all were DSLs. At Pritsker & Associates in West Lafayette in the early 1980's (see en.wikipedia.org/wiki/Alan_Pritsker.) We even had one named SNAP, that stood for something like Strategic Nuclear Asset Protection (or some such name), that was a simulation language used to simulate attacks on our nuclear assets around the globe. A bit of a harbinger of modern video games, the language was complete with mortality rates based upon probably distributions. Isn't it amazing how much fun can be gleaned working on something so gruesome and surrealistic.
As Derek LaSalle of JPMC told me recently, "What's old is new again."
So what is the alternative for messaging if it is not XML? There is a move coming from that thought leading island that sits in mind and culture much closer to our shores than it's nearby neighbor Europe. Thought leaders in the UK are bringing back ASN.1. Back? It never really went away, finding its home in Telco via its ITU standards, incluing VoIP. ASN.1 which took a very back seat in mindshare to the XML juggernaught, appears to be poised for a comeback. My friend Matthew Rawlings, also of JPMC, keeps asking me - why wouldn't we create an ASN.1 encoding (ECN) for FIXML, FIX tag=value, and FAST? To which I say, why not, as long as we are not drinking any Kool-Aid.
"What's old is new again."
