I’ve built more than a few projects which use protocol buffers somewhere
in them to store data or otherwise schlep it around – in files, over the
network, and that kind of thing. A friend heard about this and
wanted to write an implementation in another language and so I supplied
the details. Everything seemed to be going fine, but then we started
getting *really weird* errors when he tried to point his new client
at my server process.
Just trying to get the outermost “envelope” thing to pass would fail.
This made no sense. We finally had to get down to individual bytes from
the network dump to try to sort it out. Then we tried to encode “the
same th