views:

157

answers:

5

Using StackOverflow itself as an example, if you had any such system where entries were voted and viewed in order of rank based on this, how do you compensate to sort newer entries fairly? That is, if ten bad answers are given and upvoted, how do you make sure people see the new entry that might be better, but hasn't had time to gather votes or even been seen all the way at the bottom?

A: 

Provide a "Sort by Newest" function.

Jason Punyon
If people have to do something to see it, they won't.
ironfroggy
A: 

Or an "Unanswered" section - using StackOverflow as an example.

As your "bad" answers have been upvoted and so, by the rules of your site, should appear higher when ordered by rank.

ChrisF
+2  A: 

You could add 10 "virtual upvotes" to a new post, that decay with time or view.

For example you could reduce the virtual upvotes by 1 for every hour the answer is there or for every 100 views of the answer (assuming that if 100 people saw the post and didn't bother voting on it, it is probably correctly valued with 0 real votes.

Since screens get bigger and wider allthe time, you also could list all answers twice, on the left sorted by rank, on the right sorted by age.

Jens Schauder
+1  A: 

You should decrease actual the rank of older posts proportional to their age relative to the newest post. The actual rank would be derived from the moderated rank, this time based rank, and any other custom modifiers. Update when each new post is made. You should leave it up to the user to turn this feature on, though.

John Ellinwood
I think in my cases I wouldn't leave it optional, or at least it would be default. I might still keep a way to see the raw vote or date sortings, but the default view should always be this.
ironfroggy
+1  A: 

You might find this article interesting: How to Build a Popularity Algorithm.

Alvis