For the record, I don't hate Facebook. It's useful. It has brought me in touch with people I thought I might never hear from again. Not really life-changing, but nice. I was listening to James Taylor the other day and heard this line:
"... I've seen lonely times when I could not find a friend, but I always thought that I'd see you again..."
I realized that the use of past tense means that he now thinks he'll never see this person again. Or at least that's one interpretation. But now, well... you're almost guaranteed to see people again. Even without Facebook, I've met former co-workers as parents of my son's classmates. I run into people at zoos and water parks. But moving away often meant losing touch, especially if, as with myself and apparently Mr. Taylor, you're a horrible correspondent.
So the romantic notion of Mr. Taylor's friend that he treasured so deeply might be lost a bit because he'd soon find out how truly banal his friend's life was, and some casual chatter and shared links would fill the void somewhat, clearing from him any illusion that if only he had remained in touch, then perhaps he might have at last found social fulfillment. No, the reality is his friend probably moved away from him emotionally before moving away physically, and the tangible process of drifting apart is more dream-crushing than wistful longing.
But I digress.
Here's the thing that's bugging me. Facebook has almost no incentive to listen to what I want. Or, better said, what we want. And Facebook is not alone. The entire point of many services is to make you so invested in them that it's difficult to move. And so they can get away with minor annoyances here and there because in the end, you've spent months or years building up a friends list you can't easily export.
We have other businesses like this. Utilities are more highly regulated for the very reason that competition is inefficient in that space.
But online services aren't the same way. I could build up a new Facebook clone relatively easily--assuming some funding for infrastructure, give me maybe 6 months to a year and I'll have something recognizably close. But who would use it? Do you really want to re-create all those friends, try to goad them all into using the new service... sounds painful, doesn't it? I couldn't be as good as Facebook... I couldn't even be just a tiny bit better. I would have to be amazingly better to put you through that, but not only that. All your friends [that you actually care about] would have to agree, more or less simultaneously, that it was better.
So how do we solve this? How could we make Facebook and its various cousins have to be more responsive, and allow technology to become more diverse?
It seems to me that the answer would be a unified backend specific for certain types of storage. Friends/contacts on an open-source storage cluster. Music on another. Books on another, RSS feeds, links, etc etc etc.
Heck, and the reality is we wouldn't even need a unified storage mechanism. We would just need a unified interface point for any of the competing backends.
But the key point is that any frontend (display, workflow, organization, part of searching, etc.) would become highly competitive. It needs to be slicker and more user friendly than any of the other frontends. And if I don't like frontend X, I can replace it with trivial effort with frontend Y.
The backend could be similarly competitive. I could switch music service backend alpha for music service backend beta because it had a faster response time and more storage. This is a bigger investment on my part--I need to set up the transfer. But the backends are required to support such transfer, and further the backends are required to support whatever frontend I like (assuming, of course, that the frontend is using the standard interface to the backend).
Unfortunately, there's not a lot of money to be made with this model. Locking people into your service is very lucrative for the winners, and typically the people who support models like the one I propose are the losers.
But wouldn't it be great if we could make it like this? Data is portable between services transparently, and you actually own your data (even if, via terms of service, the various services can sample your data to find out info about you for targeted advertising).
You could even use different frontends simultaneously for different kinds of tasks each is good at, each pointed toward common datasets. That would be excellent.
Wouldn't it? Or would this just become another version of cyber-distopia?