Google’s Protocol Buffers …

… or, “Everything old is new again!

Yesterday, Google announced Protocol Buffers, their data interchange format and API libraries. Before I say anything else, I want to say I’m glad they did it: it uses neither XML nor ASN.1, which means someone at Google has a clue.

What bothers me is that yet again, what was old is new again–their on-the-wire encoding of the data is simply TLV and AOL has been using SNAC/TLV for at least 15 years now. However, AOL’s SNAC/TLV covers a lot more use cases than what Protocol Buffers does. Then, there’s AOL’s FLAP transport for SNAC which Google hasn’t even approached. There’s still a lot more “work” that Google has to do–or, just use what AOL’s already proven works.

Of course, Google gets the community pat-on-the-back because they released this publically whereas AOL still has it hidden behind some proprietary lock and key. AOL, this is another technology opportunity missed: you could have continued to keep your internal, proprietary technology relevant if you’d simply opened this stuff up, first. Now, you’ll have to continue to replace it–at a huge sunk cost–with “standards-based implementations.” Oops.

In the end, I’m glad to finally see someone not blindly drinking the XML Kool-Aid. Maybe there’s hope, yet.

Tags: ,


  1. I guess this qualifies as under lock and key. It’s more a documentation for the existing protocol then a specification for deriving a new one, but it pretty much defines how FLAP, SNACs, TLVs, etc fit together, at least in the realm of AIM. Although I agree with you. I’d love to see us open up some more of our technologies, if not as is, at least in design, so maybe some open source equivalents can be considered. *ahem* bucky *ahem*

  2. David: Have you actually read the OSCAR Protocol page you linked to? Specifically:

    “[…] Regardless of whether you write your own library or use an existing library, you must agree to and follow the Open AIM Platform Developer Agreement and Terms of Service in order to use the AIM API. You may use this documentation of the OSCAR protocol to develop, test, and deploy your own instant messaging client and you may release that client under an open source or a proprietary license.”

    A few things:

    (1) Using the OSCAR protocol for uses other than developing an instant messaging client isn’t covered. Can I implement my own server? Can I use the OSCAR protocol for something completely unrelated to instant messaging?

    (2) I have to agree to and follow the Open AIM Platform Developer Agreement and Terms of Service? You’re kidding, right?

    And yes, I agree–AOL’s Bucky is the holy grail that all these Web 2.0 companies are trying to invent. AOL could go down in history as the enabler of yet another “Internet revolution” … or, they could end up as just another botched M&A in the business history texts. Want to bet me a beer as to which way things will end up? :-)

Speak Your Mind