Tuesday, February 19, 2008

SOCIAL: Thoughts On Google's OpenSocial

Unless you've been hiding under a rock lately, you know that Facebook is presently the industry darling in social networking, having largely pushed MySpace off the industry's stage, as it seems to offer a more compelling model for social interaction to users overall. Just as importantly, Facebook also lets any other company that wants to join in party do so by building 3rd party Facebook applications, of which over 7,100 now exist, making Facebook increasingly rich in functionality and content by leveraging the creative capacity at the edge of the Web. In the Web 2.0 era (and in all computing eras before), the central truism is that a platform beats an application every time. This applies here with a vengeance and MySpace and other social networking sites have suddenly rushed to embrace openness and 3rd party widgets and gadgets to such an extent that MySpace has thrown in with Google on OpenSocial.

Essential Things To Know About Google's OpenSocial

1. OpenSocial only offers the lowest common denominator, not the full richness of each social networking platform.

While application developers can create apps using the OpenSocial model and they will be able to run on dozens of different social networking sites, OpenSocial can't help you leverage the full capabilities of the site it runs on. Social networking site APIs aren't anywhere as complex as say, the Windows APIs, but we've seen this before with platforms such as Java, where the development model can't support the full capabilities of the underlying operating systems. Like Java, write once, test everywhere is the name of the game for OpenSocial and while economies in this model certainly exist, a single universal widget model tends to discourage product differentiation in favor of broad distribution. This means to get at the full richness of the underlying platform and create a competitive product, you have do custom coding for that site and you've just broken the reason to use a common application model.

2. OpenSocial is largely based on open standards and there's only minor developer lock-in.

Overall, it actually seems pretty safe to do a lot of your social application development using OpenSocial. It uses the essential browser open standards of XML, HTML, Javascript, and the data formats are all ATOM and RESTful/WOA. You can even host Flash content and functionality inside the OpenSocial application as long as you don't break the rules. Finally, most of the really popular development platforms, including Ruby on Rails, can support the server-side API. All in all, Google seems to have stuck to a fairly open and non-proprietary model including avoiding crufty proprietary markup. OpenSocial documentation and sample code all uses the Creative Commons licensing and Apache 2.0, and the OpenSocial FAQ says everything will be open sourced at some point. Kudos for this open stance, Google.

3. OpenSocial is a real doorway to social networking data portability as well as potential security holes.

A site that supports OpenSocial applications provides that application with all the people data in that user's account. Their own info as well as their friends. This can be used to export user's social data from sites that don't support themselves directly and it could even be used to knit together a person's social data across other social sites that support OpenSocial, with properly designed 3rd party apps. But it also opens the door to security problems and expect to see that security, cross-site scripting, and exploits become an issue over time, as it always does when platforms open up to the rest of the world.

4. OpenSocial is simple and straightforward but also capable of developing full-blown, rich Internet applications.

And without server-side infrastructure. Developers can simply innovate with a few bits of markup and procedural code and drop it into the OpenSocial ecosystem and leverage the massive audiences and scalable infrastructure of OpenSocial compliant sites. OpenSocial even supports powerful interactive Web user interface models like Ajax explicitly. Like we saw last year, with the new productivity-oriented Web development platforms, this will change what's possible while also creating mountains and mountains of relatively useless, uninteresting apps amongst a few real gems.

5. OpenSocial is from Google and excessive philanthropy should not be expected.

Google almost certainly thinks OpenSocial will ultimately be very good for Google, if not outright bad for a few others (probably Facebook). While the openness is encouraging, if OpenSocial is successful, Google has a plan to make that success work for it. Those plans may not always be to the benefit of everyone playing under the OpenSocial umbrella. User beware.

6. A new era in competency in social software is being ushered in by models like OpenSocial.

A lot more social applications are being created because of open social platforms have become so popular. But building successful social applications is a lot different prospect from building traditional business and consumer applications. Expect that many developers and software designers will fail to build applications successfully until we learn that a different focus and way of thinking is required. Understanding people is the key to building effective social networking applications.

No comments:


Copyright © 2009 by Michael Moir. All rights reserved.