by coderhs on 11/24/12, 6:19 AM with 4 comments
by zio99 on 11/24/12, 6:35 AM
Score decreases over time, so interesting news bubble up, and older/no-longer-relevant news gradually decline.
(= gravity* 1.8 timebase* 120 front-threshold* 1
nourl-factor* .4 lightweight-factor* .17 gag-factor* .1)
(def frontpage-rank (s (o scorefn realscore) (o gravity gravity*))
(* (/ (let base (- (scorefn s) 1)
(if (> base 0) (expt base .8) base))
(expt (/ (+ (item-age s) timebase*) 60) gravity))
(if (no (in s!type 'story 'poll)) .8
(blank s!url) nourl-factor*
(mem 'bury s!keys) .001
(* (contro-factor s)
(if (mem 'gag s!keys)
gag-factor*
(lightweight s)
lightweight-factor*
1)))))
by pizza on 11/24/12, 6:41 AM
According to the link in dmgrow's comment, it's
Score = (P-1) / (T+2)^G
where P is the number of votes, T is the time in hours since submission, and G is a power that controls the steepness/rate of decline in ranking, so popularity is decreases exponentially over time. I'm sure that YC-affiliated posts have a different ranking algorithm, considering you can't vote on them.Some other cool algorithms are:
del.icio.us / delicious.com 's: ranked by upvotes in the last hour. I like the elegance of this solution a lot :)
reddit's "best" feature: compares the rates at which comments are upvoted to generate the probability that a comment is a good one, which is how posts with fewer votes can be ranked better than posts with more votes. It works well, in my opinion.
by bravoyankee on 11/24/12, 9:13 AM
Who knows what the reasons why they'd keep a story off the front page. The moderation is emo at times, even resorting to hellbanning, slowbanning etc.
Slashdot moderation is way better. It's a better overall system over there.