When Facebook stock goes on sale later this week, investors will be making a bet on open Web technologies and open hardware infrastructure.
Three years ago, Google declared the Web had won. The Web, Google's Vic Gundotra said, had become the dominant software platform. But the subsequent ascendance of Google's Android mobile operating system complicated matters. Google is now a company with divided loyalties.
That leaves Facebook as the largest technology company to go "all in" on the Web. Unlike Apple, Google, or Microsoft, Facebook has no native software platform or hardware business. Like non-profit Mozilla, Facebook is betting everything on the Web and open technologies.
"Facebook, as big as it is, it is also nimble and can move quickly and adapt quickly," said Carlos Icaza, a former software executive and adviser to several startups and Fortune 500 companies, in an email. "The one thing that Facebook has, it's that it is not platform-specific. That is, after all, what gives it its edge."
[Learn more about how Facebook prepares for its stock offering. Read As Facebook Preps For IPO, Privacy Tweaks.]
Facebook relies on and contributes to a number of open source projects that form its technological spine. With open source tools, user data, and its social advertising platform, the company earned $3.7 billion in revenue last year. That's anywhere from 10 times to 30 times less than Google, Microsoft, and Apple each earned in 2011, but Facebook aims to narrow that gap. Having the attention of some 845 million users every month could help it do so.
Facebook has the opportunity to succeed. The question is whether the company has the technology and talent to turn user attention into ad revenue. Here are 11 technologies that Facebook will be using to grow its business.
Google and Facebook have both been pushing to advance HTML5. But advancing HTML5 standards is particularly important to Facebook because so many of its users play Web-based games. Most of those games still rely on Adobe's Flash technology, but Facebook partners like Zynga and Gamzee have been testing HTML5-based titles. With Facebook's new App Center, Web apps will become even more important to Facebook.
2. Facebook Platform
Facebook's collection of APIs and infrastructure is open to third-party developers to build on. Companies like Zynga have taken their businesses to new heights by standing on the shoulders of Facebook, and many smaller companies are pursuing the same path.
3. Facebook Credits
Facebook last year made an estimated $470 million from Facebook Credits, according to research firm eMarketer. That's more than three times the $140 million it made from its virtual currency in 2010. Facebook's virtual currency technology appears to be technology that will pay for itself and then some.
4. Facebook Apps
Facebook's Apps, like Messenger, Photos, and Groups, tend to be overlooked as technological assets because Facebook's value as a platform for third-party developers is so much more obvious. But over time, if Facebook can keep users engaged, the company's own applications are likely to become key assets for user retention. Just as some people are reluctant to venture away from the familiar confines of Microsoft Office, there will be a subset of Facebook users who prefer the Facebook UI, apps, and platform over other online services. And Icaza expects Facebook will push this further by introducing its own file storage and sharing service similar to Dropbox, Google Drive, and iCloud.
5. Open Compute Project
By backing the Open Compute Project, Facebook can leverage community knowledge to improve its data center infrastructure while lowering data center costs.
Hadoop is an open source framework for running distributed applications. Derived from Google technologies and initially developed by Yahoo engineer Doug Cutting, Hadoop has become critical infrastructure for a number of large technology and media companies like Amazon, Facebook, and Yahoo. Facebook claims to run the largest Hadoop cluster in the world, pegged at 30 petabytes in March 2011.
7. The LAMP Stack
Facebook was built with Linux, Apache, MySQL, and PHP, among other technologies. Like Google, Facebook opted for open source technologies to control its destiny and to minimize costs. The open source memory caching system known as Memcached should probably be included here too, even if its function is to augment the performance of Facebook's LAMP systems.
Facebook has released a lot of its technology as open source. One project it hasn't made available is Scuba, a system for doing real-time, ad-hoc analysis of arbitrary datasets. Scuba was developed because traditional approaches to querying MySQL databases were too slow at scale. When you have as much data as Facebook, performance at scale matters.
9. HipHop For PHP
PHP doesn't perform that well at scale. HipHop for PHP, open sourced in 2010, transforms slower PHP code into optimized C++. Using HipHip for PHP, Facebook reports that its code requires about 50% less CPU usage and that its API infrastructure can service twice as much traffic with about a third less CPU usage.
10. Scribe And Thift
Scribe is an open source framework for collecting log data, originally designed to interface with Facebook's servers. It's built atop Thrift, a system for creating and coordinating software-based services in multiple programming languages. Using Scribe and Thrift, Facebook can log billions of system messages daily using a diverse set of modules written in PHP, Java, Python, or C++ code.
Released last summer as open source, Phabricator is a suite of Web applications for creating and managing software projects. It includes tools for managing workflow, bug tracking, and communications management. The Phabricator website offers this gem of a description: "Facebook engineers rave about Phabricator, describing it with glowing terms like 'okay' and 'mandatory.'"