Skip to content

Stream should have slashdot-like filtering / prioritization #2517

mmehnert opened this Issue Dec 12, 2011 · 7 comments

5 participants


In order to avoid reading diaspora content one might consider non-insightful, not funny, non-informative, etc. an up/down-voting mechanism for individual posts, probably weighted by inter-user trust levels with the option to set a threshold for display would be absolutely awesome IMHO. Just an idea, though... :-)

Pistos commented Dec 14, 2011

One day, perhaps. Probably not soon, though. :)


Here is my personal idea of how it should work:

1) Vote as many times as you like. (No limit at +1! +2, +3...)
2) Dislike as well as like. (-2, -3...)
3) Sort feed by popularity among the people you like. Use the reddit formula, (upvotes - downvotes)/age, but with votes weighted by your taste (ei, how much you like each voter).

Item 1 and 2 have to do with freedom of expression-- "freedom to like as much as you want" and "freedom to dislike". 1 is inspired by what people do on facebook & g+ already; they express extra "likes" in comments. 2 and 3 are inspired by Reddit. However, for 1 to be useful rather than harmful, we need to alter the Reddit formula. Rather than counting all votes equally, we need to count them differentially based on a person's preferences. This means votes have a dual purpose: they allow us to share content with other people (because when we upvote something, people who value our opinion will see it higher in their feed) and they also provide feedback which helps rank our feed (because upvoting something indicates that we value the opinions of those who shared that item).


Somehow this sounds much better than what I wrote :-)


I am passionate. :)

(I mean that. I'd be willing to pay $500 to get this developed if that were enough; perhaps if several people matched my contribution? Is that kind of thing possible?)

It's a karma system, but a local karma system: respect is measured between people rather than on a global scale.

Anyway, I think it's absolutely critical (for sorting through large amounts of content) and it's something which (perhaps strangely) facebook and g+ currently lack, so it's a huge opportunity for Diaspora to outshine them.

Facebook and g+ feeds become junk if you don't carefully manage your circles. It should be taken care of automatically based on this kind of ranking system, especially since we're not preaching a new idea here! Social networks are how most people get internet news these days, so borrowing from /. and Reddit seems obvious.


I guess the most challenging aspect here (ie. set and inherit contact trustness) is the UI design. (Users can learn about those features step by step when they have leisure to explore, ...)


One question is how to compliment the "heart" symbol used to illustrate "like"s on d*. A broken heart is an obvious choice, and somewhat cute, but perhaps too emotional. A spade would be another possibility, which I imagine readers of MSPA will appreciate. Alternatively, a heart with a negative number rather than a positive number would be fine (and perhaps more clear).

So, this is my tentative proposal: a heart with a number inside indicates the (rounded!) weighted sum of votes on an item. Up and down arrows around the heart allow for voting:


[Pretend there is a heart around the 4.] When you click the up arrow, it becomes:

/\ +1

On the other hand, if you had clicked the down arrow:


This way, you always know how you've personally voted on an item (so you don't unintentionally vote twice... only intentionally!).

When you click on the heart right now, you get a list of people who have voted. This could be extended to give a break-down into positive/negative. (There is an argument that negative votes should be anonymous, because they could get personal, I suppose... that's something to think about.)

So-- when you click on an up/down arrow, two important things happen. First, you've voted on the item itself. Second, you've given preference information to the system, which it will use to adjust the weights on votes. Effectively, you've cast your vote on the people as well. A more advanced feature which users will be able to find by looking: these weights are listed in contacts, and can be directly modified by liking or disliking people. (Again, there is an argument that likes should become notifications, but dislikes should not! You are never told what total score you have with your friends, but you can be told when they "like" you.) This feature is useful for re-adjusting the overall content of the feed without going and doing a bunch of voting. ("I'm really interested in this person, but they don't post very often! I'll upvote them so that next time they post it'll be in the top of my feed right away.")

Another more advanced feature that users could be given to play with would be various modifications of the ranking formula; Reddit supplies the option of viewing "controversial" rather than "popular", for example.

diaspora* social network member
sarahmei commented Jan 9, 2012

Interesting idea! Probably a bit too nebulous to be worked on at the moment, so I am closing it. You can continue to discuss here or on one of the mailing lists.

@sarahmei sarahmei closed this Jan 9, 2012
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.