Social networking as an API

A little while back, Sean had the insight that social networks should be a feature, not a service. I think he was right, but I’ll go him a step further and say social networks should be an API, not a feature. Rather than the current state of affairs, where some slice of your social network is represented on every site you participate in, all of your social network would be consolidated in one place of your own choosing. This approach is being referred to as a “distributed social network,” but that strikes me as a misnomer. The current fragmented situation is also distributed, just along a different axis.

My idea is inspired by the concept behind OpenID: basically, that you’ve got one “identity server” and use your credentials on that server to log in everywhere. All identity servers speak the same language, so when you’re trying to log in somewhere, as long as it knows how to communicate with any identity server, it can communicate with yours.

Your social network could function the same way. In fact, it would make sense for your OpenID server to also be the central repository for your social-network information. While this wouldn’t be necessary, it simplifies things, and for the rest of this entry, I’ll be assuming it’s the case.

So how would this work?