In my last post I bemoaned the monolithic Facebook design and extolled the virtues of having an open, generic social networking platform, usable by any application or service provider. Shortly after writing that post, I happened upon this article about four young programmers attempting to build something very much like what I had in mind for “socialgraph.org”. They call their creation Diaspora* and you can read all about it here. I wish them luck!
Some readers weren’t entirely sure what I meant by the term “social graph” — I was referring to the data about you, your friends, and most importantly, the connections between people, which, in computer science terms, is represented by something called a directed graph, hence the term “social graph”.
One of the most frustrating things about the social graph is that you have to keep re-creating it over and over again. When I signed up for linkedin.com, I had to search for people I knew and build connections with them over time. Then I tried Facebook, where I got to do it all over again. Next I tried Twitter and I began to feel a profound sense of deja vu — why can’t I build my social network *once* such that any application I want to use can take advantage of that information? The reason you have to keep rebuilding your network is monoliths. Linkedin, Facebook, Twitter, Myspace — they’re all monolithic services, which include their own private social graph. This, in my opinion, is the biggest problem with the current generation of social networking apps.
Above and beyond the hassle of continually rebuilding your social network is the protection of your data. On that subject, this excellent page, on the evolution of Facebook privacy, graphically and vividly illustrates how poorly Facebook has done protecting its user data over the years.