Currently studying CS and some other stuff. Best known for previously being top 50 (OCE) in LoL, expert RoN modder, and creator of RoN:EE's community patch (CBP). He/him.
(header photo by Brian Maffitt)
Currently studying CS and some other stuff. Best known for previously being top 50 (OCE) in LoL, expert RoN modder, and creator of RoN:EE's community patch (CBP). He/him.
(header photo by Brian Maffitt)
Permanently Deleted
Permanently Deleted
Permanently Deleted
Permanently Deleted
Bruce Lehrmann's lawyer says his only way to make money may be 'to go on OnlyFans'
Firefish is entering maintenance mode
Chinese company busted showing off humanoid robots that actually have humans inside
Donald Trump suggests Kamala Harris suddenly 'became a Black person'
The Supreme Court rules that state officials can engage in a little corruption, as a treat
You're making assumptions about how they work based on your intuition - luckily we don't need to do much guesswork about how the sorts are actually implemented because we can just look at the code to check:
CREATE FUNCTION r.scaled_rank (score numeric, published timestamp with time zone, interactions_month numeric) RETURNS double precision LANGUAGE sql IMMUTABLE PARALLEL SAFE -- Add 2 to avoid divide by zero errors -- Default for score = 1, active users = 1, and now, is (0.1728 / log(2 + 1)) = 0.3621 -- There may need to be a scale factor multiplied to interactions_month, to make -- the log curve less pronounced. This can be tuned in the future. RETURN ( r.hot_rank (score, published) / log(2 + interactions_month) );And since it relies on the hot_rank function:
CREATE FUNCTION r.hot_rank (score numeric, published timestamp with time zone) RETURNS double precision LANGUAGE sql IMMUTABLE PARALLEL SAFE RETURN -- after a week, it will default to 0. CASE WHEN ( now() - published) > '0 days' AND ( now() - published) < '7 days' THEN -- Use greatest(2,score), so that the hot_rank will be positive and not ignored. log ( greatest (2, score + 2)) / power (((EXTRACT(EPOCH FROM (now() - published)) / 3600) + 2), 1.8) ELSE -- if the post is from the future, set hot score to 0. otherwise you can game the post to -- always be on top even with only 1 vote by setting it to the future 0.0 END;So if there's no further changes made elsewhere in the code (which may not be true!), it appears that
hothas no negative weighting for votes <2 because it uses the max value out of2andscore + 2in its calculation. If correct, those posts you're pointing out are essentially being ranked as if their voting score was 2, which I hope helps to explain things.edit: while looking for the function someone else beat me to it and it looks like possibly the
hot_rankfunction I posted may or may not be the current version but hopefully you get the idea regardless!