This is the second in our series spotlighting large institutions in the USA and how they are embracing Linux and open source. The first in this series looked at NASA.
This article looks at Facebook, one of the best known technology companies.
Facebook, Inc. is an American social media conglomerate corporation based in California. It was founded by Mark Zuckerberg in 2004. Besides its social networking platform, it has purchased Instagram, WhatsApp, Oculus VR, and others. The company has a market capitalization of over $788 billion, one of the largest technology companies in the US. Not everything is rosy. While its growth has been phenomenal, the company has been continually mired with controversy in recent years such as the Facebook-Cambridge Analytica data scandal, become embroiled in politics, and various security issues.
How does Facebook embrace Linux and the open source movement?
For many years, Facebook has relied on Linux and open source software. For example, the company runs one of the fastest supercomputers in the world, ranked 91st. It’s a self-made computer sporting a mind boggling 60,512 cores and 63,488GB of RAM. And yes, it runs Linux — Ubuntu to be precise.
Facebook recently joined The Linux Foundation membership at the Platinum level, the highest level. This means it takes a leading role in helping to steer the future of the software platform. But even before its elevated membership, it was the lead contributor of many Linux Foundation-hosted projects, such as GraphQL, Presto, GraphQL, Osquery and ONNX.
Facebook employs many Linux kernel developers and maintainers across major kernel subsystems. For example, they write BPF, a Linux kernel code execution engine, cGroup2, a Linux kernel mechanism to group and structure workloads, oomd, a userspace OOM killer, and PSI which provides resource pressure metrics from the Linux kernel.
One of the standout open source tools that Facebook develops is PyTorch, developed by Facebook’s AI Research lab. It’s used to create AI in computer vision, natural language processing, and other disciplines. It simplifies deep learning yet retains advanced features. Although many deep learning tools use Python, the PyTorch library is truly Pythonic.
Another hugely important open source tool developed by Facebook is React, a truly splendid JavaScript library for building user interfaces powering some of the world’s most popular websites.
Facebook also leads the industry in open hardware, having founded the Open Compute Project (OCP), a collaborative community focused on redesigning hardware technology to efficiently support the growing demands on compute infrastructure.
Facebook hosts tons of GitHub repositories, many of which have attracted a lot of interest from open source enthusiasts. Here’s a selection of some of their popular projects (determined by GitHub stars).
GitHub repositories | |
---|---|
React Native | Combine the best parts of native development with React |
Jest | Comprehensive JavaScript testing solution |
Flow | Static type checker for JavaScript |
Docusaurus | Build, deploy, and maintain open source project websites |
Draft.js | React framework for building text editors |
RocksDB | Persistent Key-Value Store for Flash and RAM Storage |
Flux | Application architecture for building user interfaces |
HHVM | Virtual machine for executing programs written in Hack. |
Fresco | Powerful system for displays images in Android applications |
Folly | C++ library developed and used at Facebook |
Relay | Production-ready GraphQL client for React |
Prepack | Tool for making JavaScript code run faster. |
Yoga | Cross-platform layout engine which implements Flexbox |
Detectron2 | AI Research's next generation software system |
Zstandard | Lossless data compression algorithm |
Stetho | Sophisticated debug bridge for Android applications |
Infer | Detect bugs in Java and C/C++/Objective-C code |
Prophet | Forecasting time series data implemented in R and Python |
Working with hundreds of other organizations, Facebook is participating in bring reliable internet connectivity to those without it. The related Magma open-source project enables telecom operators to easily deploy mobile networks in hard-to-reach areas — reducing the costs of building and maintaining telecom networks.
Also developed by Facebook AI is their Deepfake Detection Challenge Dataset, designed to measure progress on deepfake detection technology. The project seeks to accelerate development of new ways to detect deepfake videos.