Remember when Facebook decided to open itself up so that third-party developers could build applications that work on the social networking site? Earlier this month, Google out-opened Facebook by introducing OpenSocial, a system that lets developers build applications for Google’s Orkut and all of the other partners in the initiative. What can we expect next?
First, let’s take a look at the OpenSocial system itself. OpenSocial is an open system that “provides a common set of APIs for social applications across multiple websites,” according to Google. If you’ve written applications for Facebook using FBML (Facebook Markup Language) and really hate the idea of learning yet another scripting language, take heart. This is a standards-based system; if you already know JavaScript and HTML, you know all you need to write OpenSocial applications.
OpenSocial features three common APIs. The People and Friends data API lets applications view and update profiles and friend relationships. This is the kind of application you’d use if you wanted to get a list of someone’s friends, for example. The Activities data API lets applications view and publish “actions.” If you want to build an application that lets users know when one of their friends uploads data, you’d use this API. Finally, the Persistence data API is a little more complicated; it lets applications “edit or delete content for an existing application, user, or gadget instance, and query the content in an existing feed.” If you serve content and want to push it out to all of your gadgets, this is the API you want to use.
So what, specifically, can you write with this system? To judge from some of the examples provided on Google’s website, just about anything. The home page for the OpenSocial system includes a number of examples: a PayPal app for performing transactions with your friends via the online payment system; a Shelfari app that lets you share your favorite books with your friends; a New York Times feed; and many more.
“The Web is fundamentally better when it’s social, and we’re only just starting to see what’s possible when you bring social information into different contexts on the Web,” a Google spokesman noted. “There’s a lot of innovation that will be spurred simply by creating a standard way for developers to run social applications in more places.”