Open Social is not Social Network Portability
I’ve been struggling since OpenSocial was announced last week to figure out how to put into words what exactly I felt was missing. I feel like I’m seeing lots of people reacting to the announcement describing what they want OpenSocial to be, not what it actually is.
(People I’m reading on this include my colleague Sebastian Wohlrapp, Marc Andreessen, Josh Catone, and Jeremiah Owyang – of course there are a gazillion others as well).
Did I miss something somewhere in the API documentation or the Campfire Video? (It has been a busy few weeks, and I would be happy to be wrong).
As I see it, in short: Open Social is not Social Network Portability. It’s social network widget portability.
Open Social enables widgets written to its OpenSocial API to be deployed (without rewriting) to multiple containers, but it doesn’t link my profiles on various networking sites, or allow me to carry my relationships with other people across network boundaries.
So if I make a “photos of my dogs” widget, and deploy it on Orkut and Hi5, I can share photos with my friends on both of those networks, but the two are completely separate. I’d have to log in to Orkut and share some photos there, then go log in to Hi5 and share some photos there.
My friends who are only on Orkut won’t see photos I share to Hi5, and vice versa. If I add someone as my friend on Orkut, they don’t “automatically” become my friend on Hi5.
In fact, as I read it, nobody but me even really knows that these two profiles (one on Orkut, one on Hi5) are the same person.
This mostly helps developers of widgets to run inside social networks. Instead of having to write an application for Orkut, and another for Hi5, and another for X, developers can create one application adhering to the Open Social API, and it can be used on all those networks.
This also helps small social networks, who don’t have a large enough user base to convince widget developers to create widgets for their platforms – the long tail of social networking platforms, if you will.
If anything, this will enable small, silo-style, disconnected social networks to continue to proliferate.
Can anyone point me to any example demonstrating how Open Social is more than described above?
I know the Container API / SDK – which will tell networks what they need to do to become containers – has not yet been released, and perhaps more will be clear when it is. But for now, this seems like a good thing (I do think an open API for widgets is a good thing) but certainly not a great thing.
See Tantek’s comment below and his post on Open Social and Portability, as well as this O’Reilly Radar post from yesterday, which I just came across: “It’s the data, stupid.”
There is this text in the description of Hosting OpenSocial Apps:
To host OpenSocial apps, your website must support the SPI side of the OpenSocial APIs. Usually your SPI will connect to your own social network, so that an OpenSocial app added to your website automatically uses your site’s data. However, it is possible to use data from another social network as well, should you prefer. Soon, we will provide a development kit with documentation and code to better support OpenSocial websites, along with a sample sandbox which implements the OpenSocial SPI using in-memory storage.
(I added the bold). I guess we’ll have to wait to see just how data from “another” social network might be used, or even how data from many social networks might be used.