This Post In A Nutshell (aka, the Murray Version)
No one should be surprised that social network users can’t ‘vote with their feet,’ because most users give up a portion of their autonomy when they choose to use web services. This post will suggest that protecting autonomy is desirable and should be designed in to software, and outline five qualities that such software would have.
[The rest of the post will not be brief; it is in part a draft of an essay for my class in ‘Law in the Internet Society’.]
Voting With Your Feet and Other Freedoms
The ironic thing is that while some genuinely concerned users are trying to oppose facebook’s policies, the best idea they came up with was to create a facebook group.
It does seem a little odd, doesn’t it? We take for granted that a boycott is the most effective way to protest the actions of a commercial entity- so even the most ardent Facebook fans realize that something is not quite right when this sort of thing happens.
So Why Don’t You Leave?
The standard conservative retort to Americans who complain about the US is ‘well why don’t you leave?’ Answering this question proves illuminating when discussing web services. Liberals don’t generally move to Canada (even during the last seven years) because their friends, families, and jobs are in the US. That makes it difficult to “vote with your feet”, but significantly weakens protests.
This is not a critique of those who use didn’t move to Canada during the 60s, or those who use Word to criticize Microsoft1, or even those who use Facebook to protest Facebook. The ties that bind us can be strong, and it isn’t necessarily a sign of weakness that so few of us are willing to pay the high costs that come with breaking them. But thinking about protest this way highlights an important problem- that the services we choose can drastically reduce our freedom to make choices- our autonomy.2
Autonomy is never complete; we have no choice of the place and culture we grew up in, and as social animals our ties to friends and families are somewhat hardwired. But technology can – and should – do better.
Technology and Autonomy
Technology is easily fungible, so we can implement and use autonomy-protecting software. This is presumably philosophically desirable, but could also improve markets and lead to better products by increasing user choice.
Unfortunately, very few people design technology with autonomy protection in mind, since an autonomous user is a user who can choose to pay someone else. Designing modern, network-centric software this way is also difficult, since users expect frequent updates, reliable communication with large groups, and global accessibility, all of which are easier when designs are centralized.3
Free Software Is a Good Start…
Free Software is a great step towards autonomy-protecting software. By ensuring that users have the rights to modify their own software or pay others to modify it for them, Free Software ensures significant scope for user autonomy. And in practice, users exercise this autonomy all the time, helping to make the Linux market vibrant and competitive.4
… but it isn’t enough any more
The right to modify and run source code is now frequently insufficient to fully protect user autonomy.
Think about what it would take to leave Facebook, for protest or any other reason. If the software was open source, you or your friends could pay someone to modify it (or learn to modify it yourselves) and remove the offending features. You’d end up with OpenFacebook.com. And then…?
You’d still lack the basic information about your social network that enables protesting on Facebook- you’d have to rebuild your addressbook from scratch. You’d have lost the things your friends posted on your wall, as well. And if your friends who were still in facebook wanted to see how you were doing, they’d check your facebook page- which at best would be badly out of date and at worst might not even exist anymore.
Are you actually prevented from leaving under these conditions? No. But your autonomy- in part, the right to vote with your feet – is certainly constrained.
so what is enough?
A Free Software Definition for the next decade should focus on the user’s overall autonomy- their ability not just to use and modify a particular piece of software, but their ability to bring their data and identity with them to new, modified software.
Such a definition would need to contain something like the following minimal principles:
- data should be available to the users who created it without legal restrictions or technological difficulty.
- any data tied to a particular user should be available to that user without technological difficulty, and available for redistribution under legal terms no more restrictive than the original terms.
- source code which can meaningfully manipulate the data provided under 1 and 2 should be freely available.
- if the service provider intends to cease providing data in a manner compliant with the first three terms, they should notify the user of this intent and provide a mechanism for users to obtain the data.
- a user’s identity should be transparent; that is, where the software exposes a user’s identity to other users, the software should allow forwarding to new or replacement identities hosted by other software.
Traditional free software deliberately follows principle #3, and typically provides the other factors, but only as unintentional side-effects of being locally installed and managed software.
From Free Software to Services with Autonomy
To protect user autonomy while the pendulum swings back between centralized and decentralized services, services will have to be designed nearly from the ground up with these principles in mind. That will require a lot of work- not just technical design, but new licenses, terms of service, evangelism, and perhaps organizational models. Hopefully, though, these principles can serve as guideposts which can focus and guide those who want to give users their autonomy- one facet of which, among others, is the right, to vote with their feet.