On Wed, 2008-07-09 at 18:44 -0700, Andrew Lentvorski wrote:
> So, Google has decided to "share" their "replacement" for XML:

No, they've decided to share their ProtocolBuffer libraries. Everything
else is marketing.

> The biggest problem is simply that you now have a "stored blob of data"
> separated from "how to interpret that stored blob of data".  Ask NASA
> how well that works out over the long term.  A hint: it doesn't.  They
> have lots of tapes with no way to interpret them because they can't even
> tell what kind of numbers are on them.

There are trade offs involved in how you manage that. At some point, the
"how to interpret the stored blob of data" can be larged than "stored
blob of data" and you have to make decisions about how to handle that.

> This is, IMO, the *SINGLE* advantage that XML brings to the part.

Except it doesn't. DTD's and schemas are typically stored externally.

> > But, IDLs in general have earned a reputation for being hopelessly 
> > complicated. On the other hand, one of Protocol Buffers' major design
> >  goals is simplicity.
> 
> The moment I hear: "Our goal is simplicity" for a well-understood,
> well-trodden area I hear:
> 
> "We don't feel like taking the time to understand *why* all those other
> people did complicated stuff in functional, portable, debugged
> libraries.  And, we're geniuses, so we'll roll our own.  Because writing
> your own code is more fun than understanding someone else's.  Oh, and
> our stuff will have lots of bugs, get nice and complicated as we either
> add those other features or develop horrible hacks to work around the
> limitations."

Well, everyone is entitled to their opinion, but there seems to be a
prettty well established school of thought that simplicity is very
distinct advantage and a reason not to use more complicated mechanisms.

> There exist a ton of self-describing formats nowadays.  ASN.1 is pretty
> compact, last I checked.  JSON (Javascript Object Notation) isn't bad.
> There are *MANY* others.

Yes, and Google is well aware of that and specifically mentions it. For
their needs, those are all pretty bad, although clearly ProtocolBuffers
were designed with reference to some of the ASN.1 encoding formats.

> The worst part of this is that there are 10 gazillion programmers going
> "Oh, if Google uses it, it must be the thing to use.".

That is a separate and distinct problem. Arguably the cure is for Google
to release more and more stuff.

--Chris

-- 
KPLUG-LPSG@kernel-panic.org
http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-lpsg

Reply via email to