thesis

Wanderli.st – Midterm Presentation

ITP
Wanderli.st
projects
thesis

Wanderli.st – Project Proposal

http://wanderli.st – wander the internet, bring your friends


I propose to design and build Wanderli.st, a new tool that will enable people to manage their contacts across social web services. Wanderli.st will be a web-based contact management application that synchronizes a user’s friend lists on both new and familiar web sites. It will serve as a layer between currently-unconnected applications on the social web, linking existing online contact management tools (such as Google Contacts) with the myriad sites on which people share content (such as Twitter, Vimeo, Foursquare, and GitHub).

Wanderli.st will provide users with an improved interface for organizing their existing contacts (which can number in the hundreds or thousands) into a set of manageable, custom groups. Google Contacts currently provides only a rudimentary user interface for those wishing to organize their contacts in this way, so I will create improved tools to make this initial set-up step as fast and easy as possible.

Once a user has organized her contacts into groups, the user will then authenticate her Wanderli.st account with those third-party web services on which she wants to manage her contacts. The user will make selections from her custom groups and assign them to the different services using basic set operations; Foursquare, for example, might be assigned everyone who is in either the ’school’ or ‘family’ groups except those people who are also in either the ‘coworkers’ or ‘ex-boyfriend’ groups. Wanderli.st will then search for user accounts on each of those web services using the names and/or email addresses of only that set of contacts that they’ve been assigned, and it will then automatically send friend requests to (or, on sites with asymmetric social networks, simply follow) those users.

Later, if the user makes a change to one of her groups, either by adding a new person she recently met or moving someone from one group to another, Wanderli.st will automatically synchronize that change on each service to which that group has been assigned. In this way Wanderli.st will both lower the barrier to entry that a user faces when trying out a new web service, and will decrease the thought and effort required to keep one’s social graph up-to-date across services.

By making it easy for the user to understand and manage her contacts, Wanderli.st will enable the user to share content that is either very private or simply not “for” everyone with comfort and certainty about which of the people she knows can see each different piece of content. It will also benefit the third-party web services themselves because their users will more actively share content with the users’ more complete and easily-managed list of friends.

I plan to write Wanderli.st in Scala using the Lift web framework, and I’ll host it on the Stax Networks elastic application platform.

Note: I acknowledge that Facebook offers some of this functionality with Facebook Connect, and that in the future it might allow users to leverage Facebook’s Friend Lists to selectively export their social network to other sites; Wanderli.st, however, will differ in several critical ways. First, third-party services will only be required to provide a read/write API for users to add and remove contacts, and they will not need to write custom code as they would for Facebook Connect. Second, Wanderli.st will actually duplicate (and then synchronize) the user’s social graph on the third-party service, and this is to the advantage of those services because they will then own their social data, rather than rely on Facebook for continued access to the social graph. Finally, because Wanderli.st will only be a collection of spokes (social connections) without a hub (personal profile data, photos, and other content), users can feel confident about connecting Wanderli.st to third party sites, as there will be no private data that users will risk exposing.

ITP
Wanderli.st
projects
thesis

:%s/ThesisName/Wanderli.st/g

What’s in a name? that which we call a rose
By any other name would smell as sweet;

Wanderli.st is the name on which I finally settled for my social web contact management tool. It took me over five months to come up with something I liked, and it might have been longer had I not used it as my project for the 1-in-1 event during ITP’s 30th Anniversary Celebration, thus imposing a deadline on myself.

I want people to be able to wander freely between the different social web services on the Internet, I want users to leverage custom dynamic lists of their friends when creating relationships on new services, and I want to make existing social relationships more portable and manageable than they are now.

I needed a name that was short, memorable, descriptive, somewhat clever, and not already commonly used. I initially wanted a .com, but relaxed that requirement in favor of choosing a name that was reasonably Good, since pretty much every .com imaginable is being squatted. I think I should be pretty well-off in terms of trademarks and SEO, and perhaps I’ll have the funding (haha) to buy the proper domain around the same time as I’m ready to expand my userbase beyond those familiar with non-standard TLD’s.

The temporary name I used back in May was Constellate, and other ones that I’ve especially liked from the process were Netropolis, Tag, Telegraph, SocialLava, Cloudship, and Relationshift. I had columns of words that had names like ’social words’, ‘movement words’, ‘group words’, ‘gathering places’, ‘infrastructure words’, ‘vehicle words’, and ‘elements’. It was not an easy task.

THANK YOU SO MUCH TO EVERYONE WHO HELPED! It looks from the Google Spreadsheet revision history like Wanderli.st first appeared on September 6th – if anyone remembers suggesting it to me around that time, let me know and I’ll give you credit here :)

(The title of this post comes from the global find-replace syntax in the text editor Vi.)

ITP
Wanderli.st
projects
thesis

Wanderli.st – An Introduction

http://wanderli.st – wander the internet, bring your friends


I have 787 friends on Facebook. On Twitter I am following 216 people and am being followed be 285 people. I have 1,190 cards in Address Book, all of which are synced with my Google Contacts and my iPhone. I have 49 friends on Foursquare, 33 connections on LinkedIn, 18 friends on Goodreads, 8 contacts on Flickr, 1 contact on Vimeo, 0 friends on Yelp, and 146 buddies on AOL Instant Messenger.

If I want to sign up for some new website, it’s not at all easy to re-use these existing relationships: I can go through and add people individually; I can ignore the security risk, enter my Gmail login information, and selectively choose which (or all) of my 1,190 Google Contacts need an email invitation to the website; I might be able to connect with my Twitter account, but the nature of the information shared on Twitter results in the people I’m following being a strange subset of my social graph; I might be able to connect with my Facebook account, but I rarely want to publish a summary of my activity on the new site in the news feed of every single person I know on Facebook.

My social life on the Internet is somewhat of a mess, and it’s becoming increasingly unmanaged and unmanageable. Social networking websites are not going away, and I want better tools to consolidate and manage these myriad representations of my real-world relationships as I wander the Internet…


(photo of me at the xkcd book party by insunlight on Flickr | CC BY-NC 2.0)

Wanderli.st will be my attempt to solve this problem. I want to take my existing friendships and relationships with me wherever I go on the Internet. I want more powerful tools for managing my contacts, I want this private information to sync with a giant social graph in the cloud, and I want websites to access subsections of this social graph based on the permissions I grant them.

More specifically, I want Wanderli.st to help me organize everyone I’ve ever met using a simple system of custom tags (‘ITP classmates’, ‘bit.ly coworkers’, ‘Scala programmers’, ‘SXSW 2010′, etc.) and lists that are combinations of these tags (‘all of my family and photography friends, but none of my ex-girlfriends’), and then let me use those lists to automatically specify my relationships on social websites. I want an intuitive yet powerful address book application with standard fields for phone numbers and mailing addresses but also with dynamic fields for usernames on social websites. I don’t want Wanderli.st to bother with actual content – let other websites specialize in the sharing of photographs, videos, status updates, long blog posts, short blog posts, and restaurant reviews – Wanderli.st can simply be a social graph provider.

I want my social data to be device- and website-independent, and I want to be able to export all of it to a standardized XML file. But I also don’t want to worry constantly about importing and exporting, and instead I want to be able to make one change in one place whenever I make a new friend, and I want that change to be pushed automatically to all of the applicable social networks.

I’d like to be able to sign up for a new social photography website, assign that site a list (i.e. some combination of tags), and then have the option of inviting friends to that website based on some other combination of tags (perhaps I have a tag named ‘people it is okay to invite to random websites’). If I make a new friend who is interested in photography, then I want it to be sufficient for us to only have a) exchanged email addresses and b) associated our usernames on various photography websites with our Wanderli.st accounts – it will then seamlessly create our connection on those websites and automatically add those usernames to each other’s personal address books, with no “Steven has added you as a friend on Flickr” emails required.

I want to have the option of managing my privacy simply and intuitively at the level of the website, and not at the level of the individual piece of content: you can see the pictures of me drinking in college if we are friends on the site on which they are posted, but if I don’t want you to see them then I simply won’t be your friend on that site, and I can use a second site (or second account on that same site!) to share my other pictures with you.

Wanderli.st will also make it easier for me to move among social websites. Both established and fledgling websites will benefit from this because it will be easier for them acquire new users and provide existing users with the best possible social experience. Furthermore, there have been mass diasporas of users in the past as people have moved on from Friendster and MySpace, and I predict Facebook faces a similar future (more on this in a future blog post). I’m willing to re-create my social network only one more time after I’m ready to move on from where I am now (and Facebook still won’t let me export my data), but after that I want my data to be open and portable and mine so that I never have to re-friend a thousand people again.

I also intend to make Wanderli.st my ITP thesis. I have been thinking about the project for several months, and wrote up and presented an early draft of the idea in Kio Stark’s When Strangers Meet class last Spring. I think that Wanderli.st should be compatible and complimentary with existing standards and upcoming proposals (OpenSocial, Portable Contacts, WebFinger, etc.), but I think it is important that the project be a new site in and of itself that hosts the data and popularizes the platform through actual successful use cases.

I’ve read that the best software is made by people who are building the tools for themselves, and I’m excited to create Wanderli.st and improve how I socialize on the Internet. If what I’ve described here sounds like something you’d like to use as well, comment below or enter your email address at http://wanderli.st – I’ll let you know when it’s ready for beta testing.

ITP
Wanderli.st
projects
thesis
web ideas

An Infrastructural Insufficiency of the Internet

The Internet, when I first started using it, felt like a social desert. People had email, instant messaging, chat rooms, and discussion forums, but these channels for communication felt separate from everything else and more like alternatives to existing real-world channels. Communication was isolated from destinations for the consumption of content, from tools for the creation of content, and from platforms for the publishing of content.

Eventually, sites for the social sharing of content appeared, and each of these maintained separate representations of the social graph. Over time people collected contacts on Flickr, friends on Facebook, and followers on Twitter, and such sites became oases of social functionality. At first these patches of green built walls to keep out the marauding hordes of anonymity, but as they grew larger they also grew more open, and they started to trade content amongst themselves.

Each real-world individual, however, was forced to maintain a separate existence in each of them simultaneously. It was difficult for people to travel with various aspects of their digital identities between walled oases, and it was nearly impossible for them to take their friends with them when they did. As a result, people were forced to duplicate their selves and their relationships. Some walled gardens tried to build roads to connect with (and undermine!) the others, but nothing really improved. Everyone had to maintain a copy of themselves in each oasis in which they wanted to produce and share content, and life was a mess for everyone. It was time to build something new, a sort of subway under the blossoming desert, so that every aspect of every person could be wherever it was appropriate for it to be, all the time, all at the same time…

- – - – -

The Internet has outgrown its social infrastructure. It’s becoming increasingly inconvenient and infeasible to create and maintain multiple copies of our networks, with all of their social complexities (friends, family, coworkers, acquaintances, ex-girlfriends, etc), and with all of their nuances of interaction (friend requests, @replies, emails, wall posts, blog comments, etc). Tools such as Facebook Connect are hopelessly hindered by over-saturated social graphs, pre-existing notions of privacy, and misguided attempts to pull content back into single cluttered interfaces. Identity and content aggregators such as Chi.mp, Plaxo and Friendfeed don’t provide the tools for web-wide social graph management. Put simply, we need new tools for the modern social Internet.

What will they be like?
Who will build them?

ITP
Wanderli.st
projects
thesis
web ideas