atom feed11 messages in net.java.dev.socialsite.devRe: Flexible relationship states
FromSent OnAttachments
DaveNov 6, 2008 9:04 am 
Jamey WoodNov 6, 2008 9:39 am 
DaveNov 6, 2008 11:16 am 
Jamey WoodNov 6, 2008 11:53 am 
DaveNov 6, 2008 12:33 pm 
DaveNov 6, 2008 1:04 pm 
Jamey WoodNov 6, 2008 2:11 pm 
DaveNov 7, 2008 4:52 am 
Jamey WoodNov 7, 2008 9:01 am 
Vijay RamachandranNov 7, 2008 10:17 am 
DaveNov 17, 2008 8:34 am 
Subject:Re: Flexible relationship states
From:Jamey Wood (Jame@sun.com)
Date:Nov 6, 2008 2:11:38 pm
List:net.java.dev.socialsite.dev

Dave wrote:

Users should have have to be aware of one-way versus two-way relationships and, in fact, I think such things should be hidden in the UI. I user should only be aware of relationship levels and the notion of a mutual relationship, which means one where the two parties have agreed on a how-knows message.

I meant to say "Users should NOT have to be aware of..."

I'm worried that if we're too flexible, we create the opportunity for a lot of complexity and confusion. I suspect that most people who install SocialSite will want it to basically behave in some way that they (or their users) have already become familiar with on major public sites. No major site that I can think of treats relationship level and mutuality as independently-modifiable settings. In fact, most seem to just require mutuality or not. For example, I see:

* "Pure" Social Networking Sites (Facebok, MySpace, LinkedIn, Orkut, Hi5, etc) - I think that most of these only support mutual relationships. - In cases where one-way relationships are supported in some way, they tend to be treated as their own "class" of things (such as Facebook's "be a fan of ..."). - When one-way relationships of some sort are supported, I don't think they're utilized for privacy controls, core "lookup my friends" APIs, etc.

* "Function-Oriented" Sites with a Social Networking Component (Flickr, Twitter, etc) - I think that most of these sites only support one-way relationships? - I don't think that these relationships are used for privacy controls, etc.

Of course, the above descriptions are just generalizations. And I may be off in the details for individual sites. But I do think that the experiences people have on popular sites will drive their expectations for something like SocialSite. So I think it's a red flag if none of those sites treat relationship level and mutuality as individually tunable "knobs." If they even do have both knobs, they seem to only support certain pre-defined combinations of them (e.g. on FaceBook: "friend" = level X and must be mutual, while "fan" = level X-1 and must be one-way). That precedent drives people's expectations.

Plus, I suspect there was good reason that behavior was chosen in the first place. I think it's less confusing (and complex) to be able to say that a friendship always has traits abc and a contact relationship always has traits xyz than to have to deal with a matrix of individual possibilities ("sorry, your friendship works differently because it's one-way without an agreed-upon knowhow string").

I do think there is a lot of value in having flexible relationship capabilities. I just think it's best not to try to take them too far too soon.

--Jamey