How would I add a new ranking algorithm to Lemmy as a contributor? I’m a developer by trade, but unfamiliar with Rust and the codebase of Lemmy specifically. It doesn’t seem like Lemmy has a concept of ‘ranking plugins’, so whatever I do would have to involve an MR.
Specifically, I’d like to introduce a ranking system that approximates Proportional Approval Voting, specifically using Thiele’s elimination methods, like is used in LiquidFeedback.
I’m pretty sure that with a few tweaks to Thiele’s rules, I can compute a complete ranking of all comments in a thread in O(ClogC + E + VlogC)
, where C
is the number of comments, E
is the total number of likes, and V
is the number of users. This would also support partial approvals, upvotes could decay with age.
I believe this would mitigate the tendency towards echo chambers that Lemmy inherits from Reddit. Lemmy effectively uses Block Approval Voting with decays to rank comments and posts, leading to the same people dominating every conversation.
We don’t have nearly enough comments for this to be a real problem
What if the lack of comments were because comments weren’t proportionally representative?
Someone sees a discussion that interests them, so they see what the top comments are. But if the Hive Mind™ has spoken (even if just by awarding the top two or three comments to the same viewpoint), will they engage, or will they go somewhere else?
Remove the Hive Mind, and maybe you’ll get more engagement?