Feeds

Facebook open sources production code

"Folly" trove full of high performance widgets hits GitHub

  • alert
  • submit to reddit

Bridging the IT gap between rising business demands and ageing tools

Facebook has released Folly, a collection of what it describes as “reusable C++ library artifacts developed and used at Facebook.”

The trove awaits on GitHub and comprises around 50 items.

Jordan DeLong, a Facebook software engineer, explained “Our primary aim with this 'foolishness' is to create a solution that allows us to continue open sourcing parts of our stack without resorting to reinventing some of our internal wheels.” He also talks up the open source love, saying Facebook could not have been built without open source kit.

DeLong describes the code as follows:

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.

DeLong's post announcing the release modestly says Folly is very easy to use, contains “components [that] typically perform significantly faster than counterparts available elsewhere,“ and “... even offer a step forward in terms of programmer convenience.”

On the Github README, however, he's a little more candid, writing that:

“Performance concerns permeate much of Folly, sometimes leading to designs that are more idiosyncratic than they would otherwise be . Good performance at large scale is a unifying theme in all of Folly.”

This won't be the last time Facebook does something like this: DeLong's post says “This initial release is definitely in the spirit of 'release early, release often.' We will continue to update the open source tree as new Folly components are added, so you can expect to see more of this on github in the future.” ®

The Essential Guide to IT Transformation

More from The Register

next story
Auntie remains MYSTIFIED by that weekend BBC iPlayer and website outage
Still doing 'forensics' on the caching layer – Beeb digi wonk
Bring back error correction, say Danish 'net boffins
We don't need no steenkin' TCP/IP retransmission and the congestion it causes
NBN Co adds apartments to FTTP rollout
Commercial trial locations to go live in September
GoTenna: How does this 'magic' work?
An ideal product if you believe the Earth is flat
Samsung Z Tizen OS mobe is post-phoned – this time for good?
Russian launch for Sammy's non-droid knocked back
Telstra to KILL 2G network by end of 2016
GSM now stands for Grave-Seeking-Mobile network
Seeking LTE expert to insert small cells into BT customers' places
Is this the first step to a FON-a-like 4G network?
What FTC lawsuit? T-Mobile US touts 10GB, $100 family-of-4 plan
Folks 'could use that money for more important things' says CEO Legere
prev story

Whitepapers

Implementing global e-invoicing with guaranteed legal certainty
Explaining the role local tax compliance plays in successful supply chain management and e-business and how leading global brands are addressing this.
Consolidation: The Foundation for IT Business Transformation
In this whitepaper learn how effective consolidation of IT and business resources can enable multiple, meaningful business benefits.
Application security programs and practises
Follow a few strategies and your organization can gain the full benefits of open source and the cloud without compromising the security of your applications.
How modern custom applications can spur business growth
Learn how to create, deploy and manage custom applications without consuming or expanding the need for scarce, expensive IT resources.
Securing Web Applications Made Simple and Scalable
Learn how automated security testing can provide a simple and scalable way to protect your web applications.