Via Joe Gregorio, I discovered that Google has released one of their internal projects, Protocol Buffers, under an open source license. Protocol Buffers is a fast and efficient data serialization format, along with a simple RPC interface and IDL compiler.
I initially wondered why Google saw fit to define a binary serialization format, when both XML and JSON are suitable and human-friendly. But it didn’t take long to see the benefits, considering the scale at which Google operates, and the sheer amount of data it wrangles.
I’ve done a cursory read through of the documentation, and while there are some features I’m not sold on, it looks solid as a whole. I’ll be experimenting further, in order to add it to my toolchain, and see where I can apply it to my projects.
This release also solves one outstanding mystery for me, which originated a couple weeks ago when Chris Messina tweeted:
Apparently XML gives Google indigestion. They convert all XML to binary but the crap it all over the web.