Thursday, February 14, 2008

Personal datastores, agents and Facebook

If you become my friend on Facebook, who owns that connection? Facebook says they do, and why not? Connections are the basis of their business, people join Facebook for the connections, and Facebook is paying for the servers. If I understand their terms of service, you own the material that you put up on your site (photos, videos, etc.) and they own everything else.

I ran across the back-story for this while browsing Joe Andrieu's blog. It turns out that Robert Scoble of Scobleizer fame got himself kicked off Facebook by running a script (he doesn't say what script) to scrape data off the site. The interesting thing is that that's verboten. The ominous thing is that it may even run you afoul of the law (presumably the DMCA).

A while ago I mused about a converse situation, wherein you and I keep our connection information in our personal datastores. When I join a new service, an agent (which I own and control) looks at my connection information and finds people that I already know that I should link up with if they're on the new service. You're on that list. My agent calls your agent, they do lunch and then go push the appropriate buttons to make the link on the service.

The net result is that when I join a new service, in short order all my friends outside the service are friends inside the service (or maybe not all -- I might tell my agent only to invite "professional" contacts on one service, "casual" contacts on another, etc. They might also tell their agents to decline the invitation.). This all costs an extra agent, but only one per customer, and again, control of the agent rests with the individual, not the social networking site.

Unlike Scoble's scraping predicament, this scheme pushes data onto the service instead of pulling it off. However, it's still probably against Facebook's terms of service (and possibly illegal), since it's being done by a bot.

The question is whether the social-networking-enabled sites would go for such a thing. On the one hand, it helps create connections, and connections are their bread and butter. On the other hand, it leaves the actual connections in the users' control.

Assuming my friends' agents cooperate, I can easily figure out who's in who's network on what service without actually logging into that service. In fact, if their agents grant me permission, I can find out if they're connected on a particular site without even joining that site. And why not? They could tell me that in person without violating any agreement, so why not over the web?

I can't get at the site-specific data for people I find without actually logging into the site, unless they also make that data available from their datastore via their agent.

But why wouldn't they? If they've put their job history up on some professional site and they're willing to let me link up with them on that site, obviously they don't mind my seeing that data. They may even want me to. Which leads to a couple of points:
  • Social networking is a feature, not a service. In particular, it's a feature that can be added to personal datastores without any centralized service at all, as long as there's a defined protocol for agents to talk to each other.
  • In which case, exactly why would we need social networking sites?

No comments: