The Lifester Project
Prof. Michael Kearns and Nikhil Dinesh
LIFESTER: A SOCIAL NETWORK SERVICE FOR NETWORKED LIFE
This term in Networked Life, we will illustrate a variety of concepts from the course using a social network in which class members are the vertices --- a kind of private facebook or Friendster service. The main purpose of building our own service is the desire to have the growth of the network be more controlled than on those commercial services, while still having the growth remain "natural" in some sense. It will also be technically easier for us to have our own service, rather than trying to use one of the commercial services for our experiments.
One of the differences between our network and the commercial services is that in our service, each of you will be assigned a UserID consisting of your last name followed by a few random digits. In order to create an edge or link to another user, you will need to know their UserID --- which, due to the random digits, means you'll actually have to have some minimal actual human interaction with them. This is in contrast to the commercial services, where it is possible for users to create edges simply by browsing each others' profiles. While there are of course a variety of ways to circumvent this random-digit trick to get you to meet each other, we ask all participants to play in the "spirit of the game" (to borrow some Ultimate frisbee terminology), and spend a little time getting to know a classmate when you create a Lifester link to them.
We will periodically give you assignments requiring you to either find new classmates to link yourself to, or to introduce two classmates you are already linked to, thereby creating an edge between two of your existing "friends". In this manner, we will be able to crudely balance "local" growth of the network with "long-distance" or "random" growth --- a theme that arises in several of the models for network generation we will eventually study.
Throughout the term, we will use our social network to run various social experiments --- for instance, investigating how efficiently the members of the network are in forwarding messages along short paths, how the network structure influences various games or economic exercises taking place over it, and so on.
DESCRIPTION AND TIMELINE OF ASSIGNMENTS AND EVENTS
Task 1: User registration and creation of initial edges. Must be completed online by 6 PM, Tue Jan 25.
By the given date, each of you should create a Lifester account for yourself by following the registration process described below. This should only take a few minutes. You should then meet at least three classmates and create Lifester edges from your vertex to theirs by following the edge creation process, also described below. All edges created during these first days of network growth should be declared to be of type "initial". Note that only one party from each pair needs to create the edge between them.
Some time will be given in-class on Tue Jan 25 for students to mill around and meet each other. However, if you already know some classmates, you are encouraged to begin by creating links to them.
DESCRIPTION OF THE SERVICE
Lifester consists of three main components. The first is registering yourself with the service, thus creating a "vertex" that represents you in the network. This is done only once by each participant. The second component allows you to create edges (network links) to other participants, provided you know their UserID. You will be asked to do this many times throughout the term, though in a somewhat controlled fashion. The third component allows you to view your profile, and to see which other users you are connected to. We now describe each component in turn.
1. Creating your profile and vertex. In this step, which you will perform only once, you register with Lifester and create your profile. You will be asked to enter your 8-digit Penn ID, name, and to fill out a profile form quite similar to that of thefacebook --- your year of graduation, concentration, interests, etc. All such information is of course optional but encouraged in order to make your profile informative and interesting. Please note that currently we do not support modification of your profile, so please enter everything you intend to during your initial registration session.
Once you enter your Penn ID and profile information, the system will assign you a UserID consisting of your last name followed by some random digits. It is important to realize that you always authenticate yourself or log on to Lifester using your PennID, while your UserID is how other participants refer to you.
2. Creating edges to other users. In order to create a link to another user, you must know their UserID. Since this UserID contains random digits, it will be necessary for you to actually have some form of contact with a user in order to link to them. We strongly encourage participants to actually meet in person briefly and get to know each other for a few minutes before creating a Lifester edge between them. It will make all our experiments more interesting and meaningful if you do so. You may also find yourself in some slightly embarassing in-class moments if you can't recall at least a little bit about your network neighbors.
To create a new edge from yourself to another user, you authenticate yourself to the system with your Penn ID, and provide the UserIDs of the parties you wish to link to. Once two parties meet and decide to form a link, it is only necessary for one of them to declare the edge to the system.
When you create a new edge, you must declare it to be one of three types: "initial", "local", or "random". In general, Prof. Kearns will provide guidance on which type to declare depending on where we are in the process; but roughly speaking, "initial" edges will be the first few you create, "local" will be edges created by meeting the "friend of a friend", and "random" will be edges created without any third-party introductions.
3. Browse your profile and neighbors. After you have registered with Lifester, you may at any time view the profile you entered with the system, as well as the profiles of all the other users to whom you have links. No other profiles are visible to you. It will often be useful to review or print out the profiles of your network neighbors prior to in-class exercises using our network.