Zend certified PHP/Magento developer

Facebook Open-Sources Internal C++ Libraries

Clearly it takes more than Queen Elizabeth’s 60th-anniversary diamond jubilee to keep Mark Zuckerberg’s Facebook out of the headlines; the social networking company has this weekend released to open source a collection of C++ library artifacts known as Folly.

Developed in house and used extensively on an internal basis, Folly’s components are said to be extremely fast and extremely reusable (internally, they will have been used by many hundreds of Facebook software engineers) and will now be available on GitHub.

Facebook’s Jordan DeLong has explained that his company is open-sourcing parts of its stack now based upon a track record that has seen the service use open technologies from top to bottom. Because Folly’s components are said to typically perform faster than equivalents available elsewhere, DeLong suggests C++ developers might find parts of this library interesting in their own right.

“The utilities contained in Folly are things we use heavily in production — this is code that runs on thousands of servers doing work on behalf of 900-million users every day. These utilities are loosely connected, but the over-arching theme for all of the components is high performance at scale. Some of them will show a fairly specialized focus, like reducing contention or packing things into small amounts of memory. Others, such as our in-memory JSON manipulation library or our string-formatting library, have a larger scope. But in either case, our motivation was to build components that were faster and more efficient than what we previously used,” he said.

DeLong has hinted that Facebook will now continue to update the open source tree as new Folly components are added, so you we expect to see more of this on GitHub in the future. He says that Facebook makes heavy use of so-called “modern C++,” which allows the firm to retain a lot of programming convenience without spending too much of its hardware resources on it.