X
Tech

fbOpen: Facebook open-sources its Platform

Facebook has gone ahead and open-sourced major parts of the Facebook Platform, the means by which third-party developers write applications for the site.
Written by Steve O'Hear, Contributor

Facebook has gone ahead and open-sourced major parts of the Facebook Platform, the means by which third-party developers write applications for the site.

"This release is just a first step in providing you a look into Facebook Platform, and we hope you'll help us iterate on and improve it", announced the social networking site.

Developers or any third party can now download source code which includes "most of the code that runs Facebook Platform plus implementations of many of the most-used methods and tags" to examine and run on their own servers in order to better understand how Facebook Platform works, and to help make improvements.

The goal of this release is to help you as developers better understand Facebook Platform as a whole and more easily build applications, whether it's by running your own test servers, building tools, or optimizing your applications on this technology. We've built in extensibility points, so you can add functionality to Facebook Open Platform like your own tags and API methods. We're also hoping you use Facebook Open Platform in ways we've never thought of – just as you showed off your creativity with Facebook Platform, we hope this lets you be creative with the foundation of the platform itself.

While enabling the developer community to contribute to the codebase of Facebook Platform is obviously one of the reasons for going open-source, a second and perhaps more important potential benefit is that competing social Web sites could adopt the standard in order to support their own third party application deployment.

As I wrote when the open-source rumors first surfaced:

By open sourcing Facebook Platform it would no longer be proprietary (in terms of licensing) and, like OpenSocial, would have the potential for much wider adoption amongst sites other than Facebook (becoming non-proprietary in practice). This in turn would cement support for the Facebook Platform amongst third-party developers as the return of investment for creating FB-compatible apps increases.

However, in today's Facebook announcement there is very little mention of such a scenario. While the official FAQs don't entirely rule it out, the most we get is typical Facebook PR speak:

Are there any partners implementing this?

This release is focused on helping developers more deeply understand Facebook Platform, more easily build applications, share their findings with other developers, and make the entire ecosystem stronger. We welcome interested partners to use the open-source release in any way appropriate for them in order to provide a more social experience for users around the web.

In the next few days I'll try to get some clarification on this issue.

Rest of the FAQs after the jump...

What is Facebook announcing today? Facebook is announcing the open-sourcing of a significant part of Facebook Platform. This project is called Facebook Open Platform, referred to as "fbOpen" in the code.

Why is Facebook releasing Facebook Open Platform? As Facebook Platform continues to mature, developers have been requesting more complete tools and deeper insights into how the platform works. Facebook Open Platform is fundamentally a way for us to give back to our community. In helping developers better understand Facebook Platform, build tools, and share their findings, we strengthen the ecosystem as a whole and help developers build better applications. That translates into a richer experience for Facebook users.

What's included in Facebook Open Platform? Facebook Open Platform contains most of the code used to run Facebook Platform, including the REST API, FBML parser, FQL parser, and FBJS sanitizer and proxy, along with implementations of many common tags and methods, and a few samples to help developers hit the ground running.

How will this help developers? Facebook Open Platform helps developers better understand Facebook Platform and makes it easier for them to build engaging applications. Some specific benefits of Facebook Open Platform include the ability for developers to run their own test servers, optimize their applications, build their own tools, and share what they've built with the community. We've also added extensibility points, so developers can augment the functionality of Facebook Platform to better serve them (for instance, by adding their own tags or API methods). Just as developers showed their creativity with Facebook Platform, we're looking forward to seeing what they build with the foundation of the platform itself.

What is the benefit to Facebook users? Facebook Open Platform gives developers an inside look into the foundation of Facebook Platform, leading to a stronger developer ecosystem and better applications. That translates into a richer social experience for Facebook users.

Are there any partners implementing this? This release is focused on helping developers more deeply understand Facebook Platform, more easily build applications, share their findings with other developers, and make the entire ecosystem stronger. We welcome interested partners to use the open-source release in any way appropriate for them in order to provide a more social experience for users around the web.

How is Facebook Open Platform licensed? Facebook Open Platform is licensed under the Common Public Attribution License (CPAL), except for the FBML parser which is licensed under the Mozilla Public License (MPL).

How can developers share their code? Facebook has set up channels in existing forums where developers can exchange code snippets, etc. We encourage developers to share what they're building, and look forward to seeing the community evolve.

Editorial standards