Congratulations to Google for getting the OpenSocial train on the right track. Today, they've announced a new Apache Foundation incubator project called Shindig.
My complaint with OpenSocial's launch was not really with the substance of what was provided at launch, but rather the message and the discrepancy between what was marketed and was what actually launched. The reaction you don't want after the launch of a technology initiative is "huh, what?", but I think that's exactly what they got.
While at Visa, the team I was on probably spent 75% to 80% of its time on heading off the 'Huh?' moment in trying to launch a technology platform initiative within the Visa ecosystem. That time wasn't spent in writing technical documents or building implementations - our primary tool was Powerpoint! (That's not the right solution either - Edward Tufte, I appreciate you!
I think the Google OpenSocial team made a mistake in understanding that their audience and communicating to them in terms their audience would understand. I believe the most significant audience was Facebook developers who understand the architecture of social network apps through the lens of the quirky (and yes, innovative) Facebook Developer platform.
Here was the main problem: the media buzz about OpenSocial were largely about making life for the developer easier by allowing social network applications to run on multiple social networks. But the basis for this portability was the Google Gadgets framework, something that wasn't clearly part of the OpenSocial announcement.
What was a Facebook developer to think?
Here's what I would have done differently:
- I would have launched with a clear itemization of what OpenSocial was, or at least what it is intended to encompass. Believe it or not, until today's open source announcement, it wasn't clear to me if the Google Gadgets layer of the framework was actually intended to be part of the OpenSocial portability promise. As a developer on day zero, I don't know what I'm supposed to get excited about. If I'm a developer or architect, what do I tell my boss to expect?
- I would make public commitments about producing open source implementations, and not just "reference" implementations. That commitment makes a huge difference in countering the "lockin" confusion that swirled in the early days.
- I would produce a "OpenSocial for Facebook developers" guide that describes the OpenSocial architecture relative to the Facebook architecture. As I said before, I think this OpenSocial announcement was targeted largely at Facebook app developers, so why not do everything possible to make their lives easy?
- In general, I would have spent more time on making sure the media message and the message to the developer community were more in sync. There's nothing worse for a large company's credibility with a developer than having a developer being told one thing about a launch by his non-techie boss and then learning the truth is much less clear, and having to communicate that back to the non-techie boss. Messaging to the developer community is as important as it is to the trade press and technology management audiences.
Note that none of these things suggest that the announcement was too early. In fact, I think the announcement was timed very well (for Google's internal strategic reasons, as well as in the cycle of OpenSocial development).
I see that Facebook has just announced that they will be "licensing" their architecture to other sites. Interesting! If it ain't truly free & open, though, it ain't gonna fly. You heard it here first.
Interesting times indeed..
UPDATE (3pm Pacific): The facebook announcement is here. Dave McClure draws an amusing picture of the impending battle here.