After the last post about text and binary protocols, Sagee sent me a link to Google’s protocol buffers, which is a protocol used to send structured data over the network, which also provides backwards compatibility between versions. From the announcement: “XML? No, that wouldn’t work. As nice as XML is, it isn’t going to be efficient enough for this scale. When all of your machines and network links are running at capacity, XML is an extremely expensive proposition. Not to
(read more...)
By Ran Arad | July 23rd, 2008 | Filed under Development, Interoperability, Standardization
A while ago, Paul E. Jones, the prophet of AMS, mentioned that AMS would use XML encoding: “We just finished a meeting yesterday. During the meeting we reached agreement to use XML for this new system. Personally, I think that’s going to be very cool. There is a huge amount of tool support for XML. We also had a person from the W3C attend who shared information on the Efficient XML Interchange (http://www.w3.org/XML/EXI/). In theory, this allows one to create
(read more...)
By Ran Arad | July 16th, 2008 | Filed under Interoperability, Standardization
I have previously mentioned Joel Spolsky’s brilliant post about standards. If you’ve not read it yet, it is really worth your while. In that post he quotes Jon Postel‘s robustness principle and Marshall Rose’s critique: Counter-intuitively, Postel’s robustness principle (”be conservative in what you send, liberal in what you accept”) often leads to deployment problems. Why? When a new implementation is initially fielded, it is likely that it will encounter only a subset of existing implementations. If those implementations follow
(read more...)
By Ran Arad | April 7th, 2008 | Filed under Interoperability, Standardization
If there is one thing I learned, it’s that text based encodings are a menace. They have their use, have no doubt; I’m not throwing away all the XML flavors and HTTP-like protocols. I’m just saying that their use should be limited to cases where we already deal with text-based data, like HTML or information repositories, not for complex communication protocols. Binary Decoders Two things can be said about binary decoding: it’s rigid and it’s repetitive. That means that if
(read more...)
By Ran Arad | February 11th, 2008 | Filed under Standardization