Editor's note: What is Facebook? The world's largest social media? This is what most people know about it. Recently, Wired magazine published an article stating that behind the largest social media, Facebook has also made a lot of contributions to the evolution of computing. Due to the openness of Facebook, many of its technologies have become industry standards. The original title of the article is “How Facebook Has Changed Computing”.
Over the past 15 years, Facebook has changed the way we keep in touch with our friends, changing the way we argue with our families, changing our perceptions of privacy and changing the way we spend on government promotions.
But Facebook is not only this, it has also changed the computer. From Netflix to Uber to the Wal-Mart site, many of the apps and services we use every day are based on the technology developed by Facebook.
As Facebook grows to accommodate millions or even billions of users, it has to create tools ranging from data storage software that can handle an amazing amount of user information to the hardware of the data center that hosts those databases.
Recently, it has created new ways to build interfaces for its web and mobile applications. Crucially, Facebook does not keep these ideas for themselves.
It publishes a lot of work in an open source way, which means that anyone else can use, modify, and share Facebook's inventions.
Jim Zemlin, executive director of the Linux Foundation, said: “For years, Facebook has been a driving force behind open source, sharing many key technologies with the wider community. ”
The foundation has an organization dedicated to GraphQL, a programming language created by Facebook to handle communication between applications and servers, which is now used by many other companies.
Due to the openness of Facebook, many of its technologies have become industry standards.
Airbnb technical director Adam · Adam Neary said: "Facebook is playing a huge role in transforming the way we build servers and writing code for browsers and mobile phones. The entire ecosystem is driven by Facebook and then open source technology. ”
The birth of big data
Facebook's biggest contribution to the larger computing community is Cassandra, a database system that scales across hundreds or thousands of servers.
Facebook is not the first company to build such a database. Both Amazon and Google have published related papers detailing their own distributed database innovations, but neither company has code for these internal applications.
Facebook engineer Avinash · Avinash lakshmi was a member of the Amazon paper project. He and Prasant Malik combined the ideas of Amazon and Google papers to create Cassandra.
Then, in 2008, they released the code. Soon, Cassandra was used by other companies, such as cloud computing company Rackspace.
Jonathan Ellis said: "They are not just imitating what Google and Amazon do, they are innovations, they do something different." ”
In 2010, Jonathan · Ellis used Cassandra extensively during his tenure at Rackspace and co-founded DataStax, a company that supports Cassandra for corporate clients.
Today, according to data from the DB-Engines website, Cassandra ranks 11th in the world's most popular database rankings. Apple, Netflix, Instagram, and Uber are both users and contributors to the project.
Facebook is also an early contributor to Hadoop, an open source data processing platform, and Hadoop has almost become synonymous with big data.
Hadoop published a paper based on Google before, and most of the early development was done by Yahoo.
But Facebook is one of the first companies outside of Yahoo to adopt Hadoop and contribute additional tools to the platform.
Hadoop has spawned a number of startups, such as Cloudera, which was founded by former Facebook research scientist Jeff · Jeff Hammerbacher.
In recent years, Facebook has invested heavily in artificial intelligence research to make better use of its own data, and it has also published some research results.
In 2015, the company opened up some of the source code for artificial intelligence algorithms for an artificial intelligence platform called Torch, which was nearly a year earlier than Google's open artificial intelligence engine TensorFlow.
Then, Facebook continues to fund the development of the Torch variant PyTorch, which is currently the third most popular artificial intelligence framework.
Open data center
For Facebook, it's not enough to just develop software that can handle millions of users. The company must also design computers and buildings to manage all the data.
In the process, Facebook came up with some unusual ideas, from the use of external air cooling instead of industrial cooling systems, to the “open-air” data center, to the “modulation” that allows you to quickly replace processors and other components. ;server.
As part of the Open Compute Project, Facebook has released all of these designs, and the project is now an independent organization.
Facebook was questioned when it announced Open Compute in 2011. Although open source software was very mature at the time, it is unclear whether Facebook's special ideas are useful to other companies.
But soon, suppliers like Taiwanese company Quanta began selling computers based on Facebook design, and other companies including Rackspace, Microsoft and Apple also contributed their own hardware designs for the project.
Today, Facebook is working with telecommunications companies such as Ericsson and Deutsche Telekom to develop telecom infrastructure projects to help them build new open source telecommunications infrastructure, including a remote antenna system called ARIES and a wireless tower connection system called Terragraph. .
Complete the puzzle
For most of the first decade, the widely used Facebook open source contribution was these behind-the-scenes infrastructure.
Netflix may use Cassandra to manage your information in the data center, but that doesn't mean you will interact with Facebook code on its website.
This situation began to change in 2013, when Facebook released Response, which is an open source code "library" that Facebook and many other companies use to build web interfaces that look and feel like native apps.
Response took some time to catch up, but in recent years, it has become the most widely used library for building "front-end" applications, surpassing Google's framework Angular. Airbnb, Netflix and Walmart all use React.
Quincy Larson, founder of the programming education website FreeCodeCamp, said: “In 2015, I noticed that my friends in San Francisco suddenly abandoned tools like jQuery and Angular and switched to React. Very trust in React. ”
This may be related to the release of React Native in 2015. React Native allows developers to use React to develop native apps for Android and iOS, which means they can develop web and mobile apps using the same code.
Facebook is not the first to offer tools for building mobile applications using web technologies, nor is it the first open source library to build web applications.
But Greg Raiz, chief innovation officer at consulting firm Rightpoint, said the two ideas combined to make it unique. “I think this is a whole story,” he said. “It helped us complete the puzzle. ”