I had the pleasure of attending IndieWebCamp in Portland last month, a BarCamp-style conference where techies get together to brainstorm ideas about how they can help people own and control their online identities.
The so-called indie web movement, a spiritual cousin to the open source and standards movements, is rooted in a desire for digital freedom, primarily from monopolies that threaten to restrict and violate the common Internet user's online existence. It calls for practical means to protect this existence by preventing or disrupting the control that any one company has over a person's online identity, either from a functionality or data point of view.
It's a thought-provoking movement for a number of reasons, not least because it finds itself screaming into the wind, so to speak. Most Internet users, with the proliferation of social networks, increasingly place their digital lives in the hands of proprietary services run by mostly private — and always self-interested — companies. These users don't own the identity and content they publish to these services in a way that insulates them from their vague terms of service and the application thereof. Nor can they continue to enjoy those services (at least in the same manner) if the companies shut them down, redesign them undesirably or fail to improve them. Yet, only a small minority of users actively worry about these problems and usually only once they've been stung by account deactivation, incessant downtime, censorship, privacy leaks, or critical design shortcomings.
There's a moral tone to the indie web movement, not just an insistence that users ought to control their online identities for the practical purpose of avoiding conflicts with their service providers. Proponents argue that the Internet needs to maintain its decentralized nature and resist consolidations of power lest technological progress gets stymied, data gets lost, hoarded or corrupted, and users get disenfranchised en masse. There's a tension here, since private companies that treat their users as virtual sharecroppers are clearly responsible for much of the progress occurring on the web today, and their services are making it dramatically easier for everyone, including the technically illiterate, to participate online.
There were two particular challenges to the indie web movement that struck me while attending the conference. The first had to do with identifying the relevant and recognizable needs of the average Internet user to obtain better control over their online identity. Indie web proponents lodge a disparate number of valid complaints against proprietary services, each with its own merit but none that would be recognized by mainstream audiences as a massive, immediate problem on its own.
Tantek Çelik, the conference's lead organizer and my gracious host, cited the famous downtime of services like Twitter and Tumblr as reason for decentralization, as well as the tendency of acquired services to get shut down. Others cited the desire to more easily export and manage the content they post to services so it can be used on their personal computers and published elsewhere on the web. For others still, it was primarily an issue of personalization and the ability to interact with numerous online services and their respective functionality with more flexibility and fluidity.
All of these are pain points that are best articulated by technologists who take the time to understand them but are surely felt by "normals" as well. They don't, however, seem top of mind enough to compel millions of ordinary Internet users to take concrete steps to address them, at least with today's solutions. Downtime is frustrating but most people learn to work around it; shuttered services disappoint loyal users but most likely faced their demise due to popular disinterest; and most people don't know what else they want out of the services they use, at least substantially enough to seek alternative solutions.
This complacency poses a critical motivational problem for the primary decentralization scenario proposed by those in the indie web movement, wherein users (both early- and late-adopter alike) take the initiative to host their identity and personal content independently of any proprietary service. The idea here is that everyone should register their own second-level domain and put up a personal website of some sort, just as I've registered markmhendrickson.com and centralized my online identity there. This site could be a simple, static presence or advanced enough to exchange information with proprietary services so that interactions can take place with friends or followers. Theoretically, these proprietary services could get cut out entirely over time, and independent personal websites could begin communicating with each other directly, effectively mapping social networking relationships onto the Internet in a distributed, peer-to-peer fashion.
In addition to the marketing challenge of compelling individuals to establish these independent sites, there's the technical challenge of bringing this distributed system to life and making it possible for normal people to get involved. The technical challenge can be divided on one side into the infrastructural issues of decentralizing the real-time communications that currently take place within centralized services (such as forging social relationships, posting content to streams, and interacting with that content). On the other side, there are the technical issues of setting each user up within the decentralized system and making sure they have the tools needed to participate without getting tied to any single provider.
Each IndieWebCamp attendee spent the second day of the conference working on a self-chosen project that would aid the movement. I took it upon myself to devise a tool that would perhaps solve the second half of this technical challenge while also communicating to mainstream users why they ought to set up their own domains. My project was primarily user-centric, since it deferred many of decentralization's intricate engineering decisions and instead focused on motivating users to overcome their default complacency and break ground on their own online homestead.
I established several main requirements for this tool:
It had to simplify for users the process of registering a domain name and a basic web host, both of which had to be treated as commodities and substitutable at any time. While it's not possible or feasible for users to literally own their domain and hosting, the next best thing is to minimize the differentiation power of these services by abstracting them away.
It had to automate the process of setting up an initial website, or homestead, on the newly registered domain and host, as well as to automate the processes of updating or extending it later on. While the software for the website had to be fully hosted by the user and open-sourced for maximum control, it could be assisted by the tool on an ongoing basis through code and data pushes.
The user couldn't be expected to use FTP, a command line interface, a file system, or any other technologies beyond the browser because doing so would severely limit its accessibility. User interactions had to be limited to filling out web forms and clicking on things.
The financial and time burden of using the tool to both set up and maintain a homestead needed to be minimized as much as possible.
Users couldn't be required to reenter their personal information or manually upload content they've already shared elsewhere.
The tool's initial user experience is outlined by the wireframe above. The marketing appeals directly to a person's need for control, since that's ultimately what users are expected to obtain in a decentralized system, it likely resonates with an underlying fear that their current online identity may be in disarray, and it's a vague enough proposition to allow many solution details.
The page then addresses four of the most identifiable needs under the tent of controlling one's online identity. Obtaining a personal URL allows a user to more easily point people to their information online; ranking well-curated personal information highly on Google allows a user to control what people find out about them when searching their name; listing all of a user's social networking profiles in one place brings order to identity fragmentation; and backing up a user's online content from numerous sources provides peace of mind. The area at the bottom that lists other people's websites is meant to provide social validation for these propositions.
To get started, the user needs to enter just their desired URL, an email address and a password (with the desired URL checked against a domain registrar's API, assuming one exists). Requests for other values, such as the user's name, are omitted since they can be gathered from the user later on. The goal here is to have them engage with the setup process as painlessly as possible.
Upon entering this basic information, the user is prompted to connect their new homestead to any number of their online services. A link to each of these services, once connected, will show up on the user's homestead. Content posted to them can also be pulled, either once or continually, for redisplay or simply backup on the user's homestead, depending on what kind of service it is.
For example, when a user connects their Facebook account, they can choose to have all of their photos and status updates automatically republished to their homestead. Not shown are possible options to simply back up these but not republish them. By connecting with any of these services, the tool can also automatically determine the user's name, portrait and any other details to display on the homestead.
The final setup step consists of actually paying for the desired URL, with the assumption that the tool could arrange for free hosting. This part of the mockup isn't fleshed out much, but basically the page would show the appropriate form once the user has chosen their preferred payment method.
The result is a profile page not terribly unlike those you'd find on most social networking sites but hosted on the user's own domain and consisting of information about and from the user from a variety of sources. Their service profiles show up on the left along with their portrait and bio, and content they've decided to import into their homestead shows up aggregated on the right.
This is meant to be just a start. There are a number of ways the design and functionality of a given user's homestead could be advanced. The layout and theme could be customizable. The user could add the ability to post content directly to their homestead and then have it syndicate out to other services. They could even start creating connections with other homesteaders by adding them as friends or the like, all referenced by their own URLs.
Perhaps an open-source ecosystem could even emerge that provided plugins and other modifications to the core software package, eventually enabling social experiences that rival those of proprietary services, with feeds, messages, tags and more. The central accomplishment here would be in enabling large numbers of people to claim independent online presences with the potential to play increasing roles in their online lives. Once enough people have done so, it'll be much easier to weave a indie web between their homesteads and insulate them from the decisions or fate of any particular company.