Every once in a while I think of a project and just have to pull something together to satisfy my own inner-geekiness. This was one of those projects.
In my humble opinion, few images are as personal and as striking as the visualization of an individual’s social network. These are constructed in such a manner that an individual’s friends are displayed in an image or a dynamic application and the connections between them are visualized. Traditionally, it can be difficult to gather the data necessary to identify an individual’s friends and the relationships among friends; however, social networking websites (such as Myspace.com, Friendster.com, and Facebook.com) have been collecting this information for the past few years. Facebook recently began providing developers access to their databases and, in effect, gave developers the ability to create a map of an individual’s personal relationships. Since then, developers have been taking advantage of these newfound sources of information in order to provide Facebook users with fun and interesting “applications” for their personal profiles.
So, given the possibilities, I decided to try to make an application as an experiment in graphing the connections between friends. There are currently two Facebook social network visualization programs that I am aware of, TouchGraph and Friend Wheel. TouchGraph was created by a company called, not terribly surprisingly, TouchGraph. It is a very nice little application that allows you to dynamically navigate through your social web (see an example video here). However, while very neat, it is difficult to integrate into a Facebook profile and very slow. Thomas Fletcher created the other Facebook application, called Friend Wheel, which graphs the relationships of individuals around a circle (great commentary here and examples here). Unlike TouchGraph, Friend Wheel creates a static image of an individual’s social web. For example, here is my “Friend Wheel” (names redacted for privacy):
As you can see it creates a very pretty picture, but the information is not terribly meaningful. You can see groups of connections (e.g., on the top and left-hand side); however, it is very difficult to identify how different groups of users interact (i.e., which groups share friends). Another issue is that every friend is plotted, with their name, regardless of whether or not they choose to share their demographic information.
Therefore, I decided to create my own application, which I dubbed Connection Cloud. Connection Cloud uses an algorithm similar to TouchGraph, but provides an image that can be easily integrated into a Facebook profile, similar to Friend Wheel. Here is a plot of my “Connection Cloud” (again, names redacted for privacy):
Now there is clear segmentation between groups of friends and the interactions between groups are clearly visible. The red blob represents my college friends and the blue blob is my high school friends. The branches off of the blobs are usually groups of close friends who I worked with or who are not from the “core” groups of friends. Red circles are girls, blue circles are boys, and black circles are unknown (privacy settings prevent gender identification). Similarly, friendships between two girls are illustrated as a red line, two boys have a blue line, a boy and a girl have a purple line, and friendships between a boy or girl and an “unknown” are illustrated with gray lines. You can also enable privacy to only plot the names of individuals who explicitly share their demographic information. While it is admittedly not as colorful as TouchGraph or Friend Wheel, there are currently options to assign random colors as well as friendship dependent colors (i.e., the color is dependent upon the number of friendships an individual has, similar to a heat map).
I occasionally modify the source code (it is in a working stage at this point) and hope to release it under a Creative Commons license in the near future. If you have a Facebook account, I would greatly appreciate your feedback!
If you have a Facebook account, click here and go to my Connection Cloud application page to get more information.
UPDATE (12/17/2007): See this post about why Connection Cloud is not online.
UPDATE (12/18/2007): And see this post that Connection Cloud is back online!