DFeed icon indicating copy to clipboard operation
DFeed copied to clipboard

Add some Hackernews-like ranking and upvoting

Open MartinNowak opened this issue 8 years ago • 9 comments

Too keep more relevant threads longer around.

This would likely only work on the Forum, not on NNTP, but that's fine I guess.

They use a simple exponential decay How Hacker News ranking algorithm works multiplied by the number of votes, i.e. #votes * e^-t.

Ranking of individual response threads would be a second useful step.

MartinNowak avatar Jun 18 '17 20:06 MartinNowak

Link aggregators need scoring more than web forums because how interesting a particular link is may not map to the amount of comments on the link submission. For web forums, scoring is achieved naturally by having each post bump the thread. Granted, HN-like voting would have some value in the announce group, but the traffic there is not nearly high enough that ensuring visibility of interesting submissions ever becomes a problem.

Something a bit closer to our use case is how Reddit scores with comment threads. Reddit comments are hierarchical, like how NNTP is under the hood, and how forum.dlang.org presents messages in two of its four view modes. However, today many Reddit threads have so many comments that the website is not even displaying most of them, which means that it requires an algorithm to filter out the best comments (also not something we need to worry about for now). Sorting (mainly of top-level comments) is more interesting; the "best" mode uses a really fancy algorithm which attempts to calculate a confidence score of how good something is based on the votes, but it only works well when there is sufficient vote data, which we likely won't have.

Finally, there is the use case that brought us here: community moderation of bad posts. On Reddit, as well as some other non-hierarchical forum systems I've seen, if a post has a sufficient number of downvotes, then it becomes dimmed, or hidden by default, requiring an extra click to expand it. This prevents accusations of censorship while still allowing readers to skip over non-constructive posts.

One thing I noticed on discussion platforms with voting (especially on Stack Overflow) is that in some cases, the first vote heavily influences the direction of the following votes. I guess it's not too surprising if you think about it, but it's still an effect that would be better avoided. So, for forum.dlang.org, a possible solution could be a "Flag" link for each post; if enough registered users click it, the post could be automatically dimmed/collapsed, and possibly sent to a moderator for review.

CyberShadow avatar Jun 19 '17 14:06 CyberShadow

Thx for your detailed response :).

So, for forum.dlang.org, a possible solution could be a "Flag" link for each post; if enough registered users click it, the post could be automatically dimmed/collapsed

Sounds like an initial plan.

MartinNowak avatar Jun 19 '17 21:06 MartinNowak

Yes, please. The forums are currently under attack by a single individual with a trolling agenda, and then there are the "latent trolls" who come to the rescue: a group that manages to add oil into the fire since they enjoy it - but can otherwise sustain pleasant conversation depending on the forums current tone. I wish we had a way to just hide some users. This becomes worse over time as more newbies join the forums without knowledge of how useful the NG is supposed to be.

p0nce avatar Nov 13 '17 13:11 p0nce

OK, as the first step, I added the "Flag" link. It is only enabled for the first 2000 registered users, which should cover most people that have stuck around for a while, and all of those who use their forum account actively.

Currently flagged posts just go into a table in the database and nothing else. Let's see (in a week or so from now) if we get enough signal vs. noise from this feature to do something with.

CyberShadow avatar Dec 10 '17 04:12 CyberShadow

Two-months-later update:

So far, a total of 7 users have placed a total of 18 flags. All of these were spam, and almost all have now been deleted.

Good news: it is 100% signal. The flag function could be hooked up to send an email to moderators, who can then proceed to immediately delete the post after review.

Bad news: the problem with low-quality / unconstructive posts remains. Probably the terminology used ("Flag") comes off as too harsh to be used against low-quality posts. So, we will probably need to think about switching to a Reddit/HN-like voting system.

CyberShadow avatar Feb 13 '18 07:02 CyberShadow

The problem with point systems is that (at least from what I see in Reddit and HN) it quickly becomes a way to signal that you agree, and not that a user is contributing (ir)respectfully. It is very susceptible to popular falsehoods.

Fast forward several years and you have a powerful drive across the message board to say things that are commonly held to be true, but are not necessarily.

p0nce avatar May 21 '18 10:05 p0nce

As the flag button provided an excellent signal-to-noise ratio, as of today clicking it will notify forum moderators, who will be able to act on it. I.e. it's now actually hooked to something, instead of going into a database that I check every few weeks :)

There are some other related changes too, but nothing for up/downvoting posts yet.

CyberShadow avatar Jun 03 '18 02:06 CyberShadow

I never had a feeling that current thread order is unfair. A thread leaves the first page when the discussion is over, further keeping it at the top won't solve any existing problem.

anon17 avatar Aug 26 '19 12:08 anon17

Of course, a "like count" without any connection to promotion lets a person like myself confirm that I read and appreciate a response, without having to tack on a new note. Since it wouldn't be used to affect visibility, it will probably be less attractive to spammers. (Sigh, spammers are such a nuisance.)

vandys avatar Mar 12 '24 00:03 vandys