denise: Image: Me, facing away from camera, on top of the Castel Sant'Angelo in Rome (Default)
Denise ([staff profile] denise) wrote in [site community profile] dw_biz2011-08-03 04:27 pm
Entry tags:

Finding people you know on DW

I've been pondering this question for a bit (foregrounded in my mind again by the latest wave of newly-minted dwenizens brought to us by LJ's unavailability this week and as a reaction to the real-names fiasco of Google+) and, failing to come up with any real answers -- or rather, coming up with too many conflicting answers, and none of them good ones -- I realized that the best thing to do would be to take it to you all, lay out my reasoning, and see what kind of solutions we can come up with when we all brainstorm together. :)

The task: Make it easy for people to find their existing friends on Dreamwidth, either while they're registering or after they've signed up.

The problem: Preventing new-user-dropoff (someone who registers an account, pokes around a bit, and then never returns to your site) is a function of a lot of different factors, but one of the biggest ones, with a social networking site, is: are the people I care about already using this service, and if so, can I find them? If people don't find the group of people they care about using the service already, they're more likely to wander off and never come back.

Services try to deal with this in a lot of different ways. The most common is an "address book reading" function: the site asks for access to your email address book, searches its database, and coughs up a list of people with those email addresses using the site. If it's done well, this can be helpful. If it's done badly, it's a privacy disaster. It also requires you to provide the site with access to your email account, and in most cases, requires you to be using a) a web-based email provider b) that they have programmed into the system (so, pretty much Gmail, Yahoo Mail, and Hotmail).

Other methods are things like a "you may know" service -- like how Twitter suggests "similar users" (based, I believe, mostly on who follows whom), and Dreamwidth's popular subscriptions page (a paid feature on DW, since it's resource-intensive to calculate). That kind of thing is good at identifying people who are in your extended network (friends of friends) once you have a few people in your circle, but they don't help to prime the pump: if you don't subscribe to anybody up front, those tools don't return results.

There are other technical solutions that people have thought up over time; things like various data files and formats you can import into a new service and have it scan for people who match (much like the email address book, only slightly less privacy-invading). Problems with those include user education, the fact those standards aren't well-known and well-applied, the fact there are tons of competing standards ...

So everybody, everybody keeps coming back to the "share your email address book, scan the users database for accounts that match those email addresses, return the results". And I can find solutions to most of the massively problematic portions of that concept, and things that could make the function more useful and flexible:

* Problem: what if I don't want anyone who has my email address to be able to find me? Solution: Allow DW users to choose whether or not they can be "email matched" -- if they say "no, people shouldn't be able to find me", then we respect that. (And release the feature pegged initially to the privacy settings that users have put on their email address: if you don't display the email address on your profile, you don't get the email search turned on, which essentially only automates the existing 'search by email' function that's in the site-wide search bar.)

* Problem: what if one of my friends is using a different email address on DW than I have for them? Solution: Allow DW users to add "other email addresses I should be searchable by" to their accounts, so I could (for instance) confirm that I own the email (which is the email address I was using for a really long time) in addition to (which is the email address I use with the site now). The other confirmed email addresses wouldn't display on the site, but it'd let people search and find you by. (You'd still run into the problem of people having outdated email addresses that you couldn't confirm anymore -- there are still people who know me by email addresses I haven't used in over a decade, I'm sure -- but we wouldn't want to allow people to use any arbitrary email address, lest I say that I'm and hilarity ensues.)

* Problem: what if my address book is full of people I sent email to once and don't want to ever talk to again, or companies with whom I interacted but don't want to be social with (true, and amusing, story: gets invited to new social networks all the freaking time), or (for instance) family members such as Aunt Margaret who would keel over and need smelling salts if she found out that I write porn about TV characters in my spare time? Solution: don't automatically add the people you find from an address book crawl, but instead just give people a list of the accounts returned by the address crawl, and let them choose whether or not to either a) add the person to their circle directly or b) send out an email saying "Hey, I'm on Dreamwidth now!" and let them choose whether or not to begin a relationship.

There are other problems I can think of, but those are the ones that immediately come to mind as the biggest concerns, and all of them are workable-around. You can also take the same idea behind "address book crawl" and extend it to other services: do things like letting people add/verify their Twitter account, for instance, and match it against other added/verified Twitter accounts, or add/verify their LJ account and match that, or really any other social network that has any form of automated function for returning "list the people I have relationships with". (And, of course, there's the method of building "places I have lived/worked/gone to school" fields into the profile or the site directory, so you can search for people who graduated school with you, or people who worked at $formerjob from 2002-2005, or people who lived in downtown Baltimore from 1997-2002, etc. But that requires a bunch of overhead in validating and sanitizing input, so you don't get eight thousand variations in spelling, which is what made the LJ schools directory so incredibly human-intensive and part of why we discontinued it on DW.)

I'm sure there are other possible awesome ideas that I'm just not thinking of, though, and I'm also sure there are other problems with the "mine your list of connections on other sites and match against the DW userbase" idea that I'm just not thinking of off the top of my head. So, I figured I'd throw it out to y'all at large, seeing as how you are a) extremely intelligent people b) who want to see DW succeed c) and are used to carefully thinking through an idea and evaluating it on privacy, security, and usability grounds.

So, the questions I have for y'all:

* What other ways can you think of to help a new user find their existing friends who have accounts on DW easily, quickly, and with minimal hassle?

* How can we best balance your privacy with your desire to find people you know?

* How can we help preserve the right not to be found by people you don't want to find you?

* What else am I forgetting to think of?

Post a comment in response:

Anonymous( )Anonymous This account has disabled anonymous posting.
OpenID( )OpenID You can comment on this post while signed in with an account from many other sites, once you have confirmed your email address. Sign in using OpenID.
Account name:
If you don't have an account you can create one now.
HTML doesn't work in the subject.


Notice: This account is set to log the IP addresses of everyone who comments.
Links will be displayed as unclickable URLs to help prevent spam.