This is a letter I wrote to the Orkut team in August 2004, at the request of a Googler. I was not a Googler until two years later. May still be some weird formatting issues due to transferring it over from Word to here.
Well, it’s taken me longer to get around to this than I expected, and I hope that you’re still able to find my orkut comments useful. I don’t have the time to go into all topics about orkut that interest me, nor can I afford to go into the depth on each topic that I’d like at this point. If you’d like more specific input on particular issues or features, we can talk about that after you read my initial commentary below.
And one more thing before I get started: I figure I ought to give you an idea of my familiarity with and interest in the social networking space:
I’ve been involved with online communities since I was 15.
I helped out the Prodigy Online Service a great deal, spearheading the creation of a new forum, beta testing their offline board reader, and providing lots of UI feedback.
I was a forum leader for two different areas of AOL.
I’ve created, moderated, or significantly contributed to many Web forums.
I’ve beta tested quite a few social networking services: Friendster, Tribe.net, Linked In, Ryze, Spoke, Flickr, Multiply, Dodgeball, and others.
Here’s what I’ll be tackling in this note:
…and not comprehensively tackling:
Okay, and with no further ado, I’ll get on with the show here.
The foundation of a trusted network.
Orkut advertises itself as a trusted network, and I believe that a trusted network must include all of the following:
- Clearly articulated rules and goals
A collaboratively based structure
Useful delineations and appropriate disclosure of ties
Clearly articulated rules and goals
In order for people to be able to assess and behave according to the trustworthiness of others on a service, they must first understand the actual service’s rules and goals. Orkut has already taken steps in this direction by articulating that the service is to be, ideally, one that encourages communications amongst actual people, not ‘characters.’ But beyond this, orkut hasn’t really expressed what the service is about, who it’s designed for (‘everyone’ isn’t, in itself, a useful answer), and what its goals are. This ambiguity (accentuated by a not-very-informative front login page) is discouraging to prospective users and also makes current users less apt to understand and trust the network.
A collaboratively based structure
Smart Filtering to better interpret and adapt to members’ interests
Right now, people are thrown in ‘orkut jail’ when they ‘misbehave,’ either judged and sentenced by automated processes, by orkut administrators, or by anunsegmented group of peers. This suffers from lack of appropriateness (computers are only so smart), scalability issues, and untargeted group-think problems respectively. While I understand that a Slashdot karma system has its own flaws, I think that a system based upon a mixture of this and the user-moderation in Craig’s List is an appropriate solution for orkut.
Over time, such moderation could affect (limit / throttle) privileges in the area of messaging, posting, scrapping, and so on. Eventually, it could also contribute to a scheme whereby communications and search results are prioritized based upon similar-group preferences… that is to say, what I see would be sorted and/or filtered based upon the preferences and behaviors of those I’ve linked to, what and who I’ve modded, and what those I’m strongly linked to have viewed, rated, and modded.
For instance, let’s say I get yet another FoaF message in Portuguese (ack!). While I consider it ‘not interesting,’ Portuguese speakers might find it to be really funny or useful. Therefore, based upon user/group past behaviors (deleting, replying, etc.), the absolute messaging privileges of the sender should not be revoked, but rather, I shouldn’t see messages from that person (or his/her associated group, perhaps).
About the current karma system
I think the trusty, sexy, cool evaluation system should be scrapped. Here’s why:
It’s cheesy & a put-off for those who want to use orkut for business networking, or for those who are over 25, married, etc.
The concept of ‘sexiness’ is simply too variable amongst different groups of people. Even within my close group of friends, there’s a wide range of disagreement regarding who (or what) is ‘sexy.’ Sexiness is interpreted in completely different ways by age, interest, status, and so on.
One’s perception of another’s ‘trustiness’ really depends upon their interactions. I’m going to have a much different take on someone’s trustiness if I’m their business partner than if I’m their gym buddy.
So here’s my admittedly somewhat-radical idea: Scrap the trusty/sexy/cool thing, and instead implement a system of connection strength metrics, tie descriptors, and enhanced testimonials.
Connection Strength and Type ‘ Delineating and disclosing ties appropriately
First of all, change the label of ‘friend’ to contact. I know it may seem impersonal, but overall, it’s a better description of current and future connections. One’s boss is not one’s friend, typically, but many might want to link to their boss or subordinates or other colleagues on orkut. I like my family members, but it just seems weird to call my Grandpa or Mom a ‘friend.’
And frankly, the word ‘friend’ is widely overused and abused. [Name] once invited me to link to him, and I did so gladly. I greatly respect him and was honored at what I felt he was implying. But ‘ though we had initially planned a lunch meeting ‘ [Name] and I have not yet met. We haven’t even exchanged more than a few quick e-mails. So I’d hardly consider him a friend… and I mean that in the most honest yet non-mean-spirited way. I’m sure you understand.
Orkut (the service) should not be about (just) friendships. It’s about ties. Strong ties, weak ties… amongst contacts. Maybe you can come up with a better word. But let’s ditch the online ‘friends’ pretense. Like Friendster, it’s so 1999.
All connections are not equal
Imagine someone using orkut to find a date for an upcoming concert. And another person using orkut to hire a nanny for their daughter. Two drastically different interests and needs… but both greatly potentially assisted by a smart delineation and disclosure of member ties.
In the first case, the member wants to see who his contacts know socially… and be able to assess a fit by looks, personality, musical tastes, and so on. Unfortunately, as orkut works right now, he can’t tell how his contacts are really connected to that hottie he spied while browsing. Sure, he shows that HisName –> Jane –> Fred –>ThatHottie… but how well does Fred really know ThatHottie? Does he know her from work, from clubbing, or is Fred just someone who ‘friends’ every ‘hot chick’ on orkut? And for that matter, how does Jane know Fred… and, more importantly, how well?
The person seeking the nanny obviously has different needs. She looked up ‘Mary Smith’ on Orkut after seeing Mary post an ad on Craig’s List looking for nanny work, and she sees that she is connected to Mary by three degrees of separation. But, again, she has no idea how she is connected; do these folks know Mary from her previous nannying work, from the gym, or from dating, or…?
Therefore, it’s critical that orkut offer the ability to specify AND view (either directly or indirectly) the strength and type of ties between people.
Members should be invited to score the strength of their connection with each of their contacts numerically on two axes from 1-100: Professional and Social, with (again) boundaries placed or statistical adjustments made in this context so as to take into account those who give the max points to all their contacts and so on.
Then, when viewing a network path, one might see this:
Me –> Jane –> Fred –> Marta [briefcase icon] 87, [martini icon] 13
You have strong connections to Marta socially, but weak ties to her professionally.
In this example, Marta would be a more appropriate contact for the person seeking a Nanny; the potential employer would probably have a better chance learning about Marta’s professionalism than how well she holds her liquor.
Beyond quantitative-tie listing, I think it’d be very useful for people to be able to simply note (in a small free-form field) how they are linked to someone, so that when I link to Jane, I could specify that she’s my piano teacher… and this information would be visible when someone moused-over the connecting arrow.
How is this better than the current system of haven’t met, acquaintance, friend, good friend, and best friend? Let me count the ways!
- The current system doesn’t fit nicely in a business context.
Haven’t met is interesting but orthogonal to the issue of strength-of-tie, and should not be part of this scale! For instance, I once corresponded regularly with a penpal for many years before meeting him, and I certainly considered him a friend (more than an acquaintance) well before I met up with him. This situation is especially common nowadays, with people having friendships (even quasi-romances) with people they’ve ‘met’ only on the Internet. On the flip side, I think it’s quite possible to have very weak ties with someone you’ve met.
In contrast, my proposed system (with tie-strength and connection descriptor):
Works for ties with family, significant other, work colleagues, etc.
Doesn’t make a false distinction between those people we’ve met in person and those we haven’t.
Lets people accept link requests from others with the understanding that they can indicate their connection appropriately. For instance, right now I’ve noticed that many people link to others to suggest ‘I like you, even though we’re not yet friends.’ With my proposed system, the recipient could decide that, hey, this (requester) person looks cool even if don’t know them at all; I’ll accept their connection request and simply give them zeros for both professional and social tie strengths (to be later adjusted as appropriate).
Provides value by letting people understand and take into account connections (‘Hmm… this guy knows her from his college marching band, so maybe he could tell me if she’s got good chops for the new quintet I’m putting together.’)
Could be a super-valuable companion to messaging and profile-item-disclosure / privacy (I’ll talk more about these issues later).
Understandably, there’s also a sticky point associated with my proposed quantitative system: the awkwardness in potentially learning (and knowing that others could possibly learn) how one is rated by friends. Therefore — while perhaps not foolproof — one protective measure could be to avoid publicly listing connection strengths with single ties. That is to say, with Me <-> Betty, there’d be no indication of tie strengths.
From a UI and functionality perspective, on the Your Connections (formerly ‘Friends’) screen I’d like to see each contact listed on a separate row with (and sortableby) the following info:
Link description: ‘gym partner’ or ‘college friend’ or ‘former colleague’ etc.
They updated: The date of the last time they updated their profile or photo gallery and what they most recently updated, e.g., ‘7/3/04 ‘ New job description’
Tie #s added/changed: The date when you added them to your list, or when you most recently changed your tie strength ratings for them. This would help (especially with sorting/filtering) members update such ratings over time by noticing, for instance, hmm… I haven’t updated his ratings recently, and we’ve become much closer friends in the last month.
Social tie strength: In the form of a simple 3-character text entry box, possibly augmented by a Flash-based slider.
Professional tie strength: Same as above.
You’ll note that I have omitted the age, gender, and location in this listing. While I suppose it could be included in a different view, I think that I’m already aware of such information for most of my contacts. If I can’t recall something as basic as someone’s gender, why am I even linking to them?
Who’s yer daddy?
In an effort to help users ferret out fakesters and also add some transparent accountability to the system, I’d like for orkut to show ‘invite trees’ of at least two degrees. In other words, we should be able to click on a link and see ‘Tara Jones was invited by _Suzanne Johnson_, who was invited by _Matt Smith_.’ With this, people could have additional info-ammunition when there is a group of, well, jerks in a particular community; ‘Hmm… all of these twits were invited directly/indirectly by one guy!’ It’d also be useful when looking at testimonials: ‘Hmm… he only has testimonials from people he’s directly invited!’
Defining how we describe and see each other
Let’s tackle the most basic issue first, even though it’s something I think you’ve heard time and time again. The ‘fan’ concept as currently implemented is absolutely broken.
First of all, I question the value of fan indications in general. What use (or even fun) is it for me to see that some ‘hot babe’ has lots of fans? Or that Orkut ‘ the creator of the service being used ‘ has lots of fans. No duh!
But if, for some reason, this feature must be kept in, then at least make it work more like fandom in the real world. I’m a fan of Larry and Sergey. They don’t know me from Adam. This is not a connection in the way that Fans on orkut is currently implemented (e.g., that Larry and Sergey must first acknowledge my existence). This is merely a one-way indicator.
In other words, members should be able to ‘fan’ anyone they want. The current ‘fan only if already friends’ is both useless and also harmful, since it often incents people to request connections from others with whom they really hold no (reciprocated) connection.
On a somewhat related note, perhaps orkut should move to a system whereby anyone can link to anyone and reciprocation is noted but not required. This is something that definitely should be considered, but I don’t have the time to delve into it at the moment… sorry.
I’d like to be able to offer testimonials on any orkut member, not just my friends… though of course I think such testimonials should be displayed separately from ‘friend’ (or ‘connection’) testimonials.
Additionally, I’d like to see testimonials contain two fields: the current main text box for a testimonial-type message, and a separate ‘adjectives’ box. After someone has accumulated more than [x] total testimonials (including descriptors), it’d be neat to display something like the following on their profile:
Andrea has been frequently described in the following ways by others:
By those with whom she has strong professional ties [suitcase icon]: Decisive, funny, smart
By those with whom she has strong social or family ties [martini icon]: Loving, smart, athletic
By others: Active, sexy, driven
An aggregate-variety of this descriptor field would also be neat to show in orkut search results.
Profiles and Privacy
Do folks want their business colleagues knowing their turn-ons?
Do I want friends-of-friends to know about my career (‘Wow, he must be rich!’ or ‘He does that for a living?!’)
I’d like to see more fine-grained user-controls in the profile sections… perhaps based upon strength-of-connection levels and/or connection degrees. For instance, it might be useful to say:
Show this field only to strong social connections, limited by two degrees
Show these fields only to weak social and professional connections, not limited by degree
For instance, I might want my sexual orientation viewable only to people with weak professional connections AND strong social connections, but not limited by degree. Or I might want my entire profile viewable only to those within three degrees.
I think this sort of control would enable folks to worry less about bleed-through of social and professional information, since many of us do like to keep our work and social ‘lives’ separate.
The current navigation is neither intuitive nor consistent.
Here’s what I’d change:
- Move News. This should be under Help, and any new announcement should be listed on the front page. News archives could be under Help. After all, why shouldNews take up part of the coveted top navigation UI when it’s so seldom useful navigationally (news is updated infrequently, and users aren’t notified when there are updates anyway).
Don’t remove options willy-nilly! When I’m viewing my profile, I should still have access to the regular options.
Don’t switch navigation/edit options from side to side. When I’m editing my profile, the profile-segment links shouldn’t be moved suddenly to the right-hand side.
Overall, be consistent! You already have section links at the top and action links along the lefthand side for most of the time ‘ don’t veer from this.
Filtering incoming messages
Messaging issues are the bane of orkut’s existence, to the point where many of my friends are now putting ‘orkut’ in the same mental category as ‘spam.’
Personally, I’d say ‘ without exaggeration ‘ that about 95+% of the messages I receive via orkut are completely uninteresting to me. I’d turn off FoaF and community messaging entirely in my preferences (as I’m sure countless others have done), but it’s that 5% that grudgingly keeps me from doing this.
The solution, I think, lies in a mixture or selection amongst Bayesian filtering, collaborative filtering, strength-of-tie factors, and other user-specified restrictions.
From an implementation perspective, Bayesian filtering could be potentially handled via thumbs-up / thumbs-down buttons in the orkut mail interface… but this admittedly wouldn’t work for people viewing orkut messages in their regular e-mail.
Ideally, users should be able to specify a ‘strength-of-tie’ threshold for receiving FoaF messages. For instance:
I’d like to receive Friend of a Friend messages only from connections with weighted/aggregate strength-of-tie scores in the following categories:
[checkbox] Social connection stronger than ___ on 100 point scale
[checkbox] Professional connection stronger than ___ on a 100 point scale.
This way, people could opt to receive messages, say, only from people who are strongly connected to them socially, or from people with weak social ties but strong business ties, and so on.
Other user-specified restrictions
This could be in the form of ‘Send me 2nd degree but not 3rd degree FoaF messages’ or ‘Send me messages from females aged 20-30’ or ‘Send me messages from people who are in my communities and are 2nd degree contacts’ and so on. This has the potential to get quite complicated, so perhaps these ‘filters’ could be part of an ‘advanced’ user interface option.
Limiting message sending
Initially I thought that perhaps there should be some limitations or throttling on orkut messaging so, say, Jeff Bezos doesn’t get 50,000 messages from excited fans or disgruntled shoppers. But then I realized that this issue is indeed better handled from the receiving end. After all, why should I be limited from writing 7th degree contacts when some of those folks may want to hear from everybody… or may want to filter on criteria other than degrees-of-separation and so on. In other words, aside from extreme cases requiring throttling (someone shouldn’t be allowed to send more than 200 messages in an hour!), I think orkut should let messaging restrictions be handled solely by recipients (with admittedly perhaps some default filters in place).
With that said, I think there should be some awareness involved when people are sending group messages, such as an alert like: ‘WARNING! This message will be sent to as many as 3,719 people. Please consider whether it would be more appropriate to contact a smaller group of contacts individually, or post a note on one of the community forums.’
I think that you should show orkut messages only in orkut, and not allow for the receipt of actual messages within one’s personal e-mail for the following reasons:
This thwarts the privacy concern that stems from people accidentally writing people back without realizing that their reply will disclose their identity.
By placing all communications-reading within orkut, you can amass data on clickthrus, immediate-deletes, and so on. This, in turn, will contribute to user-based and group-based filtering initiatives. For instance, if 98% of recipients delete John Smith’s mail without reading it, then it’s likely he’s sending unwanted communications. Additionally, showing all mail headers in orkut (rather than an external reader) allows orkut to show clickable thumbs-up / thumbs-down icons, further facilitating collaborative filtering.
One’s communities quickly become unwieldy, at least for those of us with more than 30-40 communities. Therefore, user-grouping of communities is something that’d be quite useful, especially given the prevalence of communities-as-badge (‘I want people to know I am affiliated with or love [x], even though I don’t plan on writing a lot of stuff about it’).
For instance, it’d be great if we could group according to anything we want… topics (‘Geeky stuff’) apart from orkut’s default categorizations, level of interest (‘Favorite groups,’ ‘Not favs‘), frequency of desired access (‘Check weekly,’ ‘Check daily.’) and so on. From there, we could also set permission and notification preferences (‘Tell me anytime someone posts something in these communities,’ ‘Make my posts in these communities not accessible by the main [future] orkut Community Search tool’) and so on. Also ‘Show info on these communities on my orkut home page’ and ‘Include / exclude these communities from the list on my profile’ (useful for memberships in personal/sensitive-topic communities, such as spousal abuse discussions, etc.).
Functionality beyond forums
I understand that there’s likely some tension between orkut and GG2 in terms of overlap, future functionality, and so on. However, GG2 aside, I’d love to see polls, file archives, photo galleries, and bookmarks (orkut-internal and also Web-external) in the communities.
Moderation and privacy
Moderators should be able to mark forums as only readable by members, mark forums as inaccessible by orkut community title and/or message content searches, and should also be able to permanently ban (not just kick) users even from public communities.
Additionally, moderators should be able to appoint co-moderators and/or temporary (vacation) moderators.
I’d like to see the forums support basic HTML (my fingers are trained to type not ) and/or actual BBcode (I’m so used to type either href…> or [url=] and not [link]!) >
I think you know the rest in terms of what needs to be done forum-functionality wise. Look at vBulletin & phpBB, then copy what they do. Simple but true, excepting the issue of karma / collaborative filtering discussed earlier here.
Or if you really want to get fancy, introduce Gmail-style conversational expand/collapse functionality. Yum!
At minimum, you need to include read/unread awareness within the forums and in the community listing overall. And yes, I realize this (like many of my other suggestions) is resource intensive.
I don’t care whether it’s e-mail, RSS, a separate page, etc. People need to know when folks have replied to their threads, period.
Presence detection and live communications
One of the most common complaints I’ve heard about orkut is that there’s ‘nothing to do.’ While I’m sure that more folks would use the boards more if certain forum-issues were addressed, I’m also confident that the establishment of presence-awareness and live interaction features would greatly increase the ‘stickiness’ of the service. By ‘online’ below, I’m referring to a state of ‘active within past [x] minutes’ (with the threshold increased for those who most recently clicked on a ‘compose’ link).
Specifically, I would like to see the online status of:
My contacts and 2nd degree contacts
People in each community (from the community page)
From a search results page, both proactively and otherwise (‘Show me all people within 5 miles of my zip who are interested in hiking and are online now’)
Anyone whose profile I’m looking at.
This would help make communities feel ‘active’ rather than simply Web pages to browse occasionally.
In addition to seeing who is online, I’d also like to be able to initiate communication with individuals. orkut could be a great test platform for GIM (Google Instant Messenger). In the meantime, orkut could facilitate one-to-one IM communications by hyperlinking one’s name throughout the service toYahooIM or AIM (click on the name, a Yahoo or AIM window pops up, assuming the user has the relevant client installed).
Of equal importance, I think that it’d be amazingly useful and fun to be able to have a live chat box on the front page of every community. This would augment, rather than by a substitute for posting and reading messages in each forum.
You could even kludge a chat implementation to begin with, since there are no worries about permanence (e.g., unlike with message forums in which message links should be permanent and accessible over time, chat is ‘ by its nature ‘ preferably transient). For instance, you could simply create andiframe a window into a logically named and described IRC room (‘orkut-[community_name]’ / ‘[description’). Of course, such communications would then not be limited to orkut members, though I suppose savvy moderators could simply password protect rooms to enhance privacy.
Highlighting interesting data appropriately
I was hugely dismayed at the original statistics and very pleased when they were taken down. They just encouraged an obnoxious feedback loop… making those who were orkut’ly popular more so, and pandering to why-do-we-need-orkut-for-this ‘hot chick’ instincts and behaviors.
When showing statistics, the following should be taken into consideration:
1) Are these statistics useful or interesting? (obviously!)
2) Do they incent desirable behaviors rather than encouraging harmful or annoying behaviors?
Providing greater control without sowing confusion
For instance, this UI would be nice for allowing users to either turn off all messages from communities or opt to select messages from specific communities or (future) groups of communities. In fact, this sort of expand/collapse UI would be wonderful for permissioning / searching / filtering on orkut in general!
Miscellaneous UI and other stuff
And now the moment you’ve been waiting for… where I actually talk about (mostly) small changes you could implement that would make the existing orkut service a lot more useful and pleasant. As noted in the intro, I’ll try not to harp on the obvious stuff that everyone has already (often justifiably) ragged on (e.g., optionally persistent logins, etc.)
Show more useful data in lists! For instance, on the my community list, there are little three-pronged icons to the left of every group. Why? This fancy but useless bullet point would be great to replace with an icon or text indicator of sorts… whether a group is moderated or not, whether I’ve accessed it in the last [x] days, the name of the last thread author, anything at all!
The current classify-a-friend widget is really horrible from a usability standpoint! Anything in this area would be an improvement… a dropdown menu, radio buttons, etc.
Allow users to indicate languages they speak. Correspondingly, have people note the language in any FoaF messages they send. And then… don’t send messages written in French to people who don’t speak French, and so on.
Use confirmations more consistently! When someone clicks on the delete link on a post, this request should be confirmed!
Include useful icons on more buttons… e.g., include an arrow for next page, a pen+paper for new topic, etc.
Don’t put critical links next to each other without padding… e.g., edit and delete! (icons here would also be useful)
Don’t allow identically-named communities. I guess it’s a bit late for this, but… ack! It’s just wrong for so many reasons.
Throughout the service, it’s important that you indicate change. The ‘news’ link is largely useless because there’s no reason to click on it. It should be bright red when there’s news a user hasn’t yet seen
The upcoming birthday thing should be reworked into ‘Upcoming events’ and should be minimizeable.
‘Next steps’ should be smarter (I’ve already filled out my profile, darnit).
Ditch the dumb fortune. This could be replaced with much more relevant text (‘Bee Ling has recently added new pictures’ or ‘Your Chicago barsgroup needs a moderator. Interested?’ or ‘Did you know that on orkut you can…’ and so on)
Allow users to specify pagination (max records per page) that they like per section.
Show network connections like Kartoo does! J Or at least in a graphical format of some sort.
For the love of God, please move the location of the ‘Send message’ button. For an action that is appropriate only on rare occasions, it should notbe in the (highly visible) upper-left location! And while you’re at it, kindly add the warning above the text entry box, so people will see it before writing a message that’s bound to annoy several thousand people.
I’m especially fond of this thread, and (honestly!) not just because of the head-swelling compliment at the end.
I definitely enjoy orkut’s new ‘related communities’ feature, and I also noticed that there were some personal recommendations in a recent orkut newsletter. I’d like to see more of this! Perhaps orkut could highlight a different person on one’s homepage at each logon, including their pic, info from a random field, and an explanation of the connection (‘Joanna is in many of the same communities you are.’ Or ‘Many of your friends are also friends with Joanna.’ etc.)
The bottom line
Here’s my harsh but heartfelt recommendation:
Scrap the existing orkut, or at least the entire UI.
Take what you’ve learned and apply it to a new system built from the ground up, structured and coded by a substantial team of UI folks, social scientists, experienced online community people, collaborative filtering geniuses, and so on. Make goals up front and communicate them internally to engineers and externally to members and potential members. Establish a team presence as a group of facilitators / moderators, not policemen. Actively solicit input and assistance from members constantly. Hire more customer service people; temps are cheap (I’d think).
Google would then easily have the ability to envision and implement a truly outstanding trust-based social & professional networking service with the UI simple-elegance of Gmail and the far-reaching change-the-world-power of Google search.