WTF Profile

From Dreamwidth Notes
Jump to: navigation, search

The WTF project involves some changes to the profile page, what kind of information we can present, and what we should allow the user to hide/show. This page attempts to break down these areas and provide a starting for developers working on this functionality.

Basic Security

Many parts of the profile page are currently keyed to what was called "Friends Only" security on LiveJournal. These components should now be controlled by your "Trust" (or "Access") relationships. It is very important that all of these functions use the trust logic for security. Nothing should be hinged on watch.

The hard part is that most of these things still store their security value as "F" (for Friends), and that is not going to change quite yet. (But of course, you're welcome to submit a patch to change them. It's just not been done yet.)

List Permutations

Given the breakdown of relationships into Watch and Trust, there are quite a few things we could potentially show on the profile page. We would like to keep the page down to a useful minimum for usability. Of course, we will still provide access to all information for account owners, and probably for random viewers as well.

Potential lists for an account:

  • Trust List
  • Trusted By List
  • Mutual Trust List
  • Watch List
  • Watched By List
  • Mutual Watch List
  • Posting Access List
  • Community Membership List

Some of these can be further broken down into something like:

  • Watched Communities List
  • Watched Feeds List
  • Watched People List

Et cetera. There is a huge, huge variety of data. We want the profile page to be useful, so we're going to trim this down to only things that are generally useful. (While still providing visibility into other things, from another page, should you wish to do some more investigation on an account.)

Dreamwidth Profile Lists

This is roughly how the profile page should be broken down. Note that it is based on the existing LJ model, modified by the WTF changes. This is the section that needs your feedback.

Proposal #1: Type then Function

This is the list with mutual turned off:

  • People
    • Trusted
    • Trusted By (Can be hidden)
    • Watched
    • Watched By (Can be hidden)
  • Communities
    • Member Of (Can be hidden)
    • Watched
    • Posting Access (Always hidden)
  • Feeds
    • Watched

This is the list with mutual lists turned on:

  • People
    • Mutually Trusted
    • Also Trusts
    • Also Trusted By (Can be hidden)
    • Mutually Watched
    • Also Watches
    • Also Watched By (Can be hidden)
  • Communities
    • Member Of (Can be hidden)
    • Watched
    • Posting Access (Always hidden)
  • Feeds
    • Watched

Note that I am proposing we use exclusive lists. A username shows up only in the section it is most applicable to, i.e., if you mutually trust Joe, he shows up in "Mutually Trusted" only, NOT in "Also Trusts". This is different than how LJ implements this function.

Proposal #2: Function then Type

This list is how LJ used to do it. This was changed during a recent rewrite of the profile page. This is the list with mutual turned off:

  • Trusted People
  • Trusted By People (Can be hidden)
  • Watched
    • People
    • Communities
    • Feeds
  • Watched By People (Can be hidden)
  • Community Member Of (Can be hidden)
  • Posting Access (Always hidden)

This is the list with mutual lists turned on:

  • Mutually Trusted People
  • Also Trusts People
  • Trusted By People (Can be hidden)
  • Mutually Watched People
  • Also Watches
    • People
    • Communities
    • Feeds
  • Watched By People (Can be hidden)
  • Community Member Of (Can be hidden)
  • Posting Access (Always hidden)

These lists are also exclusive, as in the first proposal.

Conclusion

After writing out the above, and pondering long and hard, it sounds like we'll go with Proposal #1. It reduces the top-heavy feel of the lists (they're indented roughly evenly) and looks to be more usable.

Additionally, the values for what can be hidden and what can be shown are fairly fixed at this point. We are maintaining the same options that LJ has currently, for now, and will review this later if we need to.