Commentary

Serdar Yegulalp
 

A Quick Look At Facebook's Open Source

The other week, when representatives from Facebook mentioned that they'd be open-sourcing significant portions of their platform, I hazarded a guess that they would be providing at most a set of APIs. Now that Facebook's actually released some code under the aegis of the Facebook Open Platform, I had a look-see. To my delight, I saw more than just APIs.

The other week, when representatives from Facebook mentioned that they'd be open-sourcing significant portions of their platform, I hazarded a guess that they would be providing at most a set of APIs. Now that Facebook's actually released some code under the aegis of the Facebook Open Platform, I had a look-see. To my delight, I saw more than just APIs.


More Software Insights

White Papers

More >>

Reports

More >>

Webcasts

More >>

Once you download the code and unpack it, the first thing that will probably draw your attention is the README file: "This package contains the basic functionality needed to implement and expose the Facebook platform, including support for the Facebook API, FQL, and FBML." Also included is a list of ingredients you'll need to bake your own Facebook cake -- PHP 5, Apache 1.3 or a Web server that supports some of the same basic functionality, MySQL, and the optional but useful Thrift binary.

One thing I looked at most closely was the licensing. The majority of the code is not under the GPL but instead a slight variant of the Common Public Attribution License -- which is an OSI-approved license all the same. The changes: a) you have to attribute Facebook to the original work, and b) making the code into a Web service counts as distribution. The latter is, I take it, Facebook's way to close the ASP loophole and prevent its work from being capitalized upon unfairly. (Thrift, Facebook's platform for cross-language services, is available under its own licensing, which is reminiscent of the MIT license ... although that does make me wonder why they bothered with their own iteration of the license save for the sake of brand recognition. Wait, that's it!)

Facebook's open source projects aren't limited to opening up their platform per se. Other goodies include a Firefox toolbar -- something that you could use as a learning tool for building your own such add-on; I know I plan to -- as well as various libraries and JavaScript bits 'n pieces that ought to come in handy.

So how's all this shape up against OpenSocial? The latter seems to have wider use, at least in terms of who's using the API, but Facebook has a brand recognition (yup, that again) that's tough to ignore. I suspect both OpenSocial and the FaceBook code will end up getting used -- maybe even both together on the same sites! -- but it will be most instructive when some developers actually step up and talk about their experiences with the code.


Related Reading




Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

InformationWeek encourages readers to engage in spirited, healthy debate, including taking us to task. However, InformationWeek moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing/SPAM. InformationWeek further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.
T-Shirt Giveaway T-Shirt Giveaway: Each week we're selecting one great comment from our readers. The author of the comment will receive an InformaitonWeek Community t-shirt. So get posting!
Subscribe to RSS

Resource Links