Greplin (YC W10) open sources 10-15x faster protocol buffers for Python
For a long time (much longer than I expected it would take) I've been working on a protobuf implementation in C that does not use Google's C++ implementation at all.  I've been through about three rewrites and I finally have the interface right.  I'm hoping it will be usable with Python soon (weeks).https://github.com/haberman/upb/wiki(if anyone's looking at the code, I'm working on the src-refactoring branch at the moment)The benefits of my approach are:* you can avoid depending on a 1MB C++ library.  upb is more like 30k compiled.* you can avoid doing any code generation.  instead you just load the .proto schema at runtime, so you don't have to get a C++ compiler involved.* Google's protobuf library does have a dynamic/reflection option that avoids my previous point, but it is ~10x slower than generating C++ code.  My library, last time I benchmarked it, was 70-90% of the speed of generated C++.