Company
Date Published
Author
Tom Preston-Werner
Word count
1421
Language
English
Hacker News points
None

Summary

Tom Preston-Werner introduces BERT (Binary ERlang Term) and BERT-RPC, a new data serialization and RPC protocol developed to enhance GitHub's backend architecture. Drawing inspiration from Erlang's external term format, BERT is designed to be a simple, dynamic, and efficient alternative to existing RPC protocols like Thrift and Protocol Buffers, which Preston-Werner criticizes for their reliance on IDLs and code generation. BERT-RPC, built on BERT packets, aims to facilitate interprocess communication by supporting a wide range of data types and eliminating the need to encode binary data. The simplicity and ease of use of these protocols are demonstrated through a Ruby-based example using the Ernie framework and BERTRPC library, which have been successfully integrated into GitHub's infrastructure, handling over 300 million RPC requests in a short period. Preston-Werner encourages further development and implementation of BERT and BERT-RPC across more programming languages to streamline communication between different systems.