Is the Web Finally Growing up and Going Binary?

Maybe.
I remember the good old days. I was hired to work on this signaling protocol called H.323. It used an interesting notation called ASN.1 with a binary encoding, capable of using a bit of data for a boolean of information. Life was good.
Then came SIP. With its "simple" text notation, it conquered the market. Everyone could just use and debug it by looking at the network. It made things so much easier for developers. So they told me. What they forgot to tell us then was how hard it is to parse text properly - especially for mere machines.
Anyway, it is now 2015. We live in a textual internet world. We use HTTP to describe our web pages. CSS to express its design and we code using JavaScript and JSON. All of these protocols are textual in nature. Our expectation is that this text that humans write (and read to debug), will be read and processed by machines.
This verbosity of text that we use over the internet is slowing us down twice:
- Text takes more space than binary information, so we end up sending more data over the network
- Computers need to work harder to parse text than they do binary
HTTP/2
HTTP/2 is the latest and greatest in internet transport protocols. It is an official standard (RFC 7540) for almost 2 full months now. Its main objective is to speed up the web and to remove a lot of the hacks we had to use to build web pages and run interactive websites (BOSH, Comet and CSS sprites come to mind here). Oh - and it is binary. From the RFC:Finally, HTTP/2 also enables more efficient processing of messages through use of binary message framing.While the content of our web pages will remain textual and verbose (HTML), the transport protocol used to send them, with its multitude of headers, is becoming binary. To make things "worse", HTTP/2 is about to encrypt everything by default, simply because the browsers who implemented it so far (Chrome and Firefox) decided not to support non-encrypted connections with HTTP/2. So the verbosity and the ability to watch messages on the network and debug things has gone down the drain.


Very interesting article!
It's actually very amusing that people are only talking about this now when I had brought up these concerns about the inefficiency of HTML and HTTP as far back as circa 1997, and suggested to some colleagues about going binary. Nobody seemed to think it was an issue, however, given the increasing popularity of HTML combined with the dot-com boom. And even more ironic, 20 years go the concern of text-vs-binary was an even greater concern given the bandwidth limitations (many households still only had 56k modems and workplaces were primarily limited to ISDN, unless they were fortunate to be near a university with access to T1 lines like here at the U of I). I guess 20 years late is still better than nothing when it comes to technological progress :D