The Spirit of Openness
The Spirit of Openness
Here's a secret: Mark Zuckerberg didn't write all of Facebook in his dorm room at Harvard. (Sorry, Mark, your secret is out.) He had a lot of help. No, I'm not talking about all the wonderful folks who work on the site every day. I'm talking about the unsung hero of many a young Web site: open-source and free software. Without it, there'd be no Facebook. We use it, we love it, we are committed to its principles, we even make some of it ourselves.
What's open source? Typically it means two things: the software is available free of charge, and more importantly, so are the blueprints, or "source code." This means that anyone is free to make whatever changes they want to the software—maybe improving it or customizing it to make it better-suited to a particular purpose. If someone makes a useful change, they donate it back to the software project for everyone to use.
Here's how Facebook and open source go hand in hand:
Almost all our servers are running open-source software. Our Web servers use Linux and Apache and PHP. Our database servers run MySQL. We use memcached to help keep the site snappy. Some of our behind-the-scenes software is written in Python and Perl and Java, and we use gcc and Boost for the parts that aren't. Our developers use Subversion and git to keep track of their work. The list goes on—like many Web sites, we use it from top to bottom.
But we also make it a point to give back. Our highest-profile contribution to the open-source community is probably phpsh, an interactive PHP environment we use constantly when we work on the site. It was written in-house as a development tool and released to the world for anyone to use and improve. A close second to phpsh is our extensive contribution to the memcached code base; we've heavily modified it, more than doubling its performance and adding several important new features. Both of those are still actively being worked on here, and we will continue to release our updates to the world.
We contribute on a regular basis to the APC project, which just about every page on our site uses. We've contributed code to APD and Xdebug. Finally, we encourage developers everywhere to release code using the Facebook API as open source, and we've released some of our own such as the Facebook Firefox Toolbar.
Share and share alike and the whole world benefits. It was true in kindergarten, and it's still true on the Internet!
Steven, one of Facebook's infrastructure engineers, is probably making yet another change to memcached as you read this.
What's open source? Typically it means two things: the software is available free of charge, and more importantly, so are the blueprints, or "source code." This means that anyone is free to make whatever changes they want to the software—maybe improving it or customizing it to make it better-suited to a particular purpose. If someone makes a useful change, they donate it back to the software project for everyone to use.
Here's how Facebook and open source go hand in hand:
Almost all our servers are running open-source software. Our Web servers use Linux and Apache and PHP. Our database servers run MySQL. We use memcached to help keep the site snappy. Some of our behind-the-scenes software is written in Python and Perl and Java, and we use gcc and Boost for the parts that aren't. Our developers use Subversion and git to keep track of their work. The list goes on—like many Web sites, we use it from top to bottom.
But we also make it a point to give back. Our highest-profile contribution to the open-source community is probably phpsh, an interactive PHP environment we use constantly when we work on the site. It was written in-house as a development tool and released to the world for anyone to use and improve. A close second to phpsh is our extensive contribution to the memcached code base; we've heavily modified it, more than doubling its performance and adding several important new features. Both of those are still actively being worked on here, and we will continue to release our updates to the world.
We contribute on a regular basis to the APC project, which just about every page on our site uses. We've contributed code to APD and Xdebug. Finally, we encourage developers everywhere to release code using the Facebook API as open source, and we've released some of our own such as the Facebook Firefox Toolbar.
Share and share alike and the whole world benefits. It was true in kindergarten, and it's still true on the Internet!
Steven, one of Facebook's infrastructure engineers, is probably making yet another change to memcached as you read this.
Archived Posts by Date
2009
November (9)
October (17)
September (10)
August (10)
July (11)
June (13)
May (13)
April (13)
March (14)
February (13)
January (8)
2008
December (15)
November (14)
October (12)
September (9)
August (2)
July (3)
June (6)
May (5)
April (6)
March (2)
February (4)
January (3)
2007
December (4)
November (4)
October (1)
September (3)
August (4)
July (4)
June (2)
May (5)
April (9)
March (8)
February (7)
January (4)
2006
December (3)
November (6)
October (5)
September (7)
August (4)
Archived Posts by Blogger
Abraham Cooper (1)
Adam Conner (4)
Adam Hupp (1)
Aditya Agarwal (2)
Akhil Wable (1)
Alex Moskalyuk (1)
Alexandre Roche (3)
Alok Menghrajani (1)
Annie Ta (1)
Ari Steinberg (2)
Arjun Banker (1)
Austin Haugen (1)
Barbara Fischkin (1)
Barry Schnitt (1)
Benjamin Ling (1)
Bikash Agarwalla (1)
Blair Heuer (1)
Blaise DiPersia (1)
Blake Chandlee (1)
Bo Hong Deng (1)
Bob Trahan (2)
Brian Shire (1)
Brynn Shepherd (1)
Cameron Marlow (1)
Carl R. Augusto (1)
Carolyn Abram (11)
Cat Lee (3)
Chad Little (2)
Chengos Lim (1)
Chris Cox (2)
Chris Hughes (2)
Chris Kelly (4)
Chris Putnam (3)
Chris Ward (1)
Craig Donato (1)
Dan Rose (1)
Daniel Chai (1)
Danna Gutman (1)
Dave Fetterman (1)
Dave Morin (1)
Doug Beaver (2)
Dustin Moskovitz (1)
Elizabeth Linder (2)
Elliot Schrage (2)
Eric Kwan (1)
Eric Zamore (1)
Evan Priestley (1)
Everett Katigbak (1)
Ezra Callahan (8)
Florin Ratiu (1)
Gareth Davis (1)
Gene Fant (1)
Ghassan Haddad (1)
Gibson Biddle (1)
Graeme Menzies (1)
Harry Huai Wang (4)
Henri Moissinac (1)
Jack Lindamood (1)
Jake Brill (1)
James Wang (2)
Jared Cohen (1)
Jason Min (1)
Jason Sobel (1)
Jeff Kanter (1)
Jeff Williams (1)
Jeffrey Wieland (1)
Jesse Dwyer (1)
Jessica Ghastin (1)
Jimmy Lavoie (1)
Joanna Lee (1)
Joe Green (1)
Joe Hewitt (3)
Joe Sullivan (1)
Joel Seligstein (1)
Jon Fougner (2)
Jon Warman (2)
Jonathan Hsu (1)
Josh Elman (1)
Josh Wiseman (2)
Julie Trescott (1)
Julie Zhuo (2)
Justin Bishop (1)
Justin Mitchell (1)
KC Estenson (1)
Kari Lee (1)
Kate Losse (3)
Kathy H. Chan (4)
Katie Carter (1)
Katie Geminder (6)
Kevin Arata (1)
Kevin Der (1)
Leah Pearlman (5)
Lee Byron (1)
Lisa P. Jackson (1)
Liz Perle (1)
Luke Shepard (1)
Makinde Adeagbo (1)
Malorie Lucich (1)
Marcia Velencia (1)
Mark Kinsey (2)
Mark Slee (9)
Mark Zuckerberg (18)
Matt Cahill (1)
Max Kelly (3)
Melissa Luu-Van (1)
Melody Quintana (1)
Michael B Kaiser (1)
Michael Gummelt (1)
Michael Richter (1)
Mike Honda (1)
Naomi Gleit (4)
Natalie Minor (1)
Navid Mansourian (1)
Nico Vera (3)
Nikki M. Flatley (1)
Paul C. Jeffries (1)
Paul Janzer (1)
Paul McDonald (1)
Pedram Keyani (1)
Pete Bratach (1)
Peter X. Deng (2)
Philip Fung (3)
Prashant Malik (1)
Randi Zuckerberg (5)
Raylene Yung (1)
Richard Allan (1)
Rob Goodlatte (1)
Robert Johnson (1)
Roddy Lindsay (2)
Ruchi Sanghvi (1)
Ryan McGeehan (3)
Sam O'Rourke (1)
Sameer Moidu (1)
Sandra Liu Huang (1)
Sara Lannin (3)
Sasha Rosse (1)
Scott Marlette (1)
Scott Mills (1)
Shaun King (1)
Shervin Pishevar (1)
Sheryl Sandberg (1)
Simon Axten (3)
Sophia Huang (1)
Steven Grimm (1)
Suzie White (1)
Ted Ullyot (1)
Teddy Underwood (1)
Tim Sparapani (1)
Tom Occhino (1)
Tom Whitnah (4)
Victor Valdez (1)
Wayne Chang (3)
Will Chen (3)
Xenia Nosov (1)
Yair Landau (1)
Yishan Wong (1)

