Live data from Hacker News

Bebop: An Efficient, Schema-Based Binary Serialization Format

rainway.com

31–40 of 60 posts

Re: Bebop: An Efficient, Schema-Based Binary Serialization Format

#32
post #14

There's gotta now be way too many serialisation formats. Each one claiming similar things to others. What would be helpful is a concrete example showing what was tried with an existing approach that fell short. I mean code, benchmarks, theory.

We need an independent reviewer of serialization formats!

Re: Bebop: An Efficient, Schema-Based Binary Serialization Format

#34

The article doesn't mention at all how those speedups have been achieved, what tradeoff the format makes and what it is optimized for - which would be the actually interesting part. A link to the benchmark code and description of the data would be nice. It also doesn't show data for FlatBuffer, which is often a lot faster and leaner than ProtoBuf, or for Capt'n Proto. ProtoBuf is not exactly known for amazing perform…

Totaly agree. I use flatbuffer and it is a lot faster than e.g Json: https://google.github.io/flatbuffers/flatbuffers_benchmarks....

Re: Bebop: An Efficient, Schema-Based Binary Serialization Format

#35

I only opened this article to see a comparison with FlatBuffers and got disappointed. :( To be fair though, I am open to the idea of having a separate schema definition language, at least. (And please don't say DDL, it doesn't even come close.)

Agree, the ecosystem for flatbuffer and the perfomance is great. Here is the language support: https://google.github.io/flatbuffers/flatbuffers_support.htm...

Re: Bebop: An Efficient, Schema-Based Binary Serialization Format

#36

I only opened this article to see a comparison with FlatBuffers and got disappointed. :( To be fair though, I am open to the idea of having a separate schema definition language, at least. (And please don't say DDL, it doesn't even come close.)

FlatBuffers creates its own demented and completely incompatible data structures when deserializing into C++. Which means you then need to copy the FlatBuffers structures into normal ones, defeating the entire point of "zero-copy" in the first place.

This thing it looks like uses normal C++ structures under the hood, and if so that's a huge plus.

Re: Bebop: An Efficient, Schema-Based Binary Serialization Format

#37

Looks great, I would use it over gRPC just for being able to use objects instead of the java-like setX nonsense.

Though it would need writing all the network code!

It would not, because gRPC is agnostic to the payload format. You simply pass it pre-formatted payloads instead of passing pointers to proto messages.

Re: Bebop: An Efficient, Schema-Based Binary Serialization Format

#38

The article doesn't mention at all how those speedups have been achieved, what tradeoff the format makes and what it is optimized for - which would be the actually interesting part. A link to the benchmark code and description of the data would be nice. It also doesn't show data for FlatBuffer, which is often a lot faster and leaner than ProtoBuf, or for Capt'n Proto. ProtoBuf is not exactly known for amazing perform…

It does seem more similar to Capt'n Proto than the things it does compare itself to.

I would guess the high speed is the triad of

    length encoding with a header vs searching for delimiters
    using what they call structs for benchmarks (no repeatedly sending the field name)
    how much you trade off safety/sanity checks for performance
Oh, and keeping ints little endian.

Re: Bebop: An Efficient, Schema-Based Binary Serialization Format

#39
post #8

Earlier quoted context omitted.

There's also FlatBuffer, which is also specifically made for Gaming application by Google.

Originally created by Wouter van Oortmerssen http://strlen.com/

Wow, that CV is ... impressive.

Re: Bebop: An Efficient, Schema-Based Binary Serialization Format

#40
post #39

Earlier quoted context omitted.

Originally created by Wouter van Oortmerssen http://strlen.com/

Wow, that CV is ... impressive.

I guess he's a bit like the programmer equivalent of the underground musician that's not that well known by the mainstream but who inspired a lot of other musicians. For example, he wrote the language that inspired Brainfuck[0].

[0] http://strlen.com/false-language/

Post reply on HN