Wednesday, January 2, 2013

The Distributed Social Web

It's 30 years since the Internet began with the roll out of TCP/IP. Earlier than that the basic design of the Internet was generated in the ARPANET. The Internet and its progenitors had as a key design goal a distributed and resilient infrastructure. Poor reliability of links and nodes meant that the network needed to continue to operate even if links or nodes went AWOL.
Those requirements remain and much of the infrastructure that runs on the Internet demonstrates similar design. Two good examples are email and the XMPP protocol, both of which use a federated model. My mail and XMPP servers don't have "hard wired" connections to other mail or XMPP servers. When I send mail or message someone on another network I don't create an explicit connection between my server and theirs. Instead the traffic is routed through servers which federate with mine as required. In the case of XMPP the federation is generated either when I log on to an XMPP account not on my server or someone on another remote server messages me. In the case of email it happens when I send or receive email. In either case there are often multiple routes available and the connections live only as long as needed.
It's a good system that requires little human interaction. I don't have to determine how to get my email to you. Instead I enter your address and the various components of the email system work out where you are and how to get to you. Ditto with XMPP. The more infrastructure nodes that are "out there" on the Internet, the better the system works.
Now to a change in the way the Internet works. I'm not talking about the underpinnings...rather I'm talking about what sits on top of them. We are seeing the rise of the internet monoliths. Google, Facebook, Twitter...the business model of these and other Internet monoliths requires that you go to their "monolithic" location (I know that they are certainly using distributed infrastructure, its the presentation I'm talking about).
The business model relies on monetising either your presence, your traffic or increasingly it seems, your data. At the heart of all this is your data. We've seen the "privacy" shuffling going on at Facebook for some time, we saw a recent Instragram furore about data (and no I don't buy the hysterics over that but it was nonetheless troubling). Facebook was recently reported to have 900 million members. Facebook in this post suggests it's 1,000 million people. Those are phenomenal numbers. If you are one of those people, then your data is deeply embedded in Facebook. How would you migrate to another platform? What do Facebook's terms of service say about ownership and copyright of your data? Do you know?
These are all pretty valid questions given that, in simplistic terms, you and Facebook have different goals. You want to create and maintain connections with your friends. Facebook wants to make money out of your presence on their site and your data on their site. Please note: I am not saying that Facebook wants to sell your (explicit) data. I do believe that it's clear however, that their game plan is to make money from the fact that your data is on their site. That's good and proper that they should want to make money. It's your choice about your involvement however.
Data is also explicit (your posts, your pictures...) and implicit (who you talk to, what you say you do, where you say you visit...). The implicit data is probably more important than the explicit...hence the issue of Facebook following users beyond Facebook that arose last year.
Given these divergent goals it's likely at some point that someone is going to be unhappy about the deal. More to the point it comes to some basic questions about what we want from the we want large monoliths that can arbitrarily decide how we use the internet and what, to a large extent happens to our data?
The problem is fundamentally that the infrastructure of the "social web", unlike the infrastructure of the older parts of the web, is these monoliths. It isn't distributed - you aren't choosing a "Facebook provider" you're choosing Facebook.We are putting a lot of our eggs in one basket with our use of the likes of Facebook and Twitter.
The other option that's emerging from these concerns are distributed social networks: you choose which provider you use, or you create your own, and then you federate with other providers so that you remain connected and can interact and collaborate with others. One good example of this is Diaspora which grew out of exactly the concerns I've expressed. It's an early stage project which is just on the verge of being generally available.
I'm hoping that the next wave of the internet sees the rise of the Distributed Social Web. That way we begin to have choices. We can continue to use the big monoliths or we can begin to take control of our presence and our data and connect with our friends, family and colleagues in new ways and with new capabilities.


  1. Hi there, have a look at Newebe, a fully distributed social network: each user hosts his account. It might interest you.
    By the way, nice article.

    1. Thanks Gelnior, and thanks for the kind words. I will check out Newebe.