Refined-github: Count more reactions when considering the highest rated comment

Created on 28 Jun 2019  Β·  17Comments  Β·  Source: sindresorhus/refined-github

Because of #2108 we can see the most helpful comment (thanks @lubien!). At the moment that only counts πŸ‘ as a positive and πŸ‘Ž as a negative. But there are more reactions that can be used to indicate a post is helpful or not. How about we also count those?

| Positive | Negative |
| :------: | :------: |
| πŸ‘ | πŸ‘Ž |
| πŸ˜„ | πŸ˜• |
| πŸŽ‰ | |
| ❀️ | |

I've left the ambiguous πŸ‘€ and (the slightly less ambiguous) πŸš€ out.

enhancement help wanted

Most helpful comment

@TiagoDanin I feel that the problem with that is that we can't make a scoring system with different values clear to the user. With your proposed scoring system it's not immediately obvious why a post with 8 πŸ‘, 2 ❀️ is a top post over a post with 2 πŸ‘, 10 ❀️. The first has less positive reactions (10 < 12), but a higher score in your proposed system (28 > 26).

If each one is worth only 1 point it's easier to immediately see and understand why a post is a top post.

Also, if your proposed scoring system somehow does become clear to the users then we will be implicitly training users of (Refined) GitHub to react in certain ways to maximize a post. And if certain reactions are "worth more" that can eventually make the entire reactions system less truthful.

All 17 comments

I'd keep it simple. When it counts, thumbs up and downs are already the majority and I doubt that considering the rest of the emojis would make any difference.

I agree with @bfred-it although ❀️ seems like a good candidate but would probably require checking for people who voted both πŸ‘ and ❀️ to make it fair.

Before anyone thinks of implementing this, I need to see cases where this actually makes a difference, because I have doubts. Links please.

@lubien what you’re saying isn’t always possible, we don’t have the full list of users who reacted, just the first 10 for each reaction

From a quick search:

Here's one without a top post at the moment. But with the proposed changes this would have been a top post:
image

Here's one where if we count all reactions the top post would have been a different one:
image

That being said, I realize now that counting multiple reactions does introduce more complexity in how we count. For example, what if 1 user adds multiple positive reactions to a post? Do we count all reaction? Or does each user only get 1 vote?

Is the added complexity worth a "better" top post? And how to determine which method of adding/subtracting makes the result more valid?

Here's one without a top post at the moment. But with the proposed changes this would have been a top post:

True, but also you can see a lot of user overlap in those reactions. There are still 7 unique users.

Minimum 10 reactions is an arbitrary limit we have to avoid showing it everywhere, but yes it will also affect situations where it could appear but it doesn't, simply because not enough people are affected.

Here's one where if we count all reactions the top post would have been a different one:

:+1:

Is the added complexity worth a "better" top post? And how to determine which method of adding/subtracting makes the result more valid?

Ok, maybe it is. Just remove the users that appear duplicates in the list, keeping in mind that we can't deduplicate users that don't appear in the list (because it's limited to 10 usernames)

Or maybe convert reactions to points. Example:

Reaction | Points |
------------ | -------- |
:+1: | +3
:tada: | +1
:heart: | +2
:-1: | -3
:confused: | -2

@TiagoDanin I feel that the problem with that is that we can't make a scoring system with different values clear to the user. With your proposed scoring system it's not immediately obvious why a post with 8 πŸ‘, 2 ❀️ is a top post over a post with 2 πŸ‘, 10 ❀️. The first has less positive reactions (10 < 12), but a higher score in your proposed system (28 > 26).

If each one is worth only 1 point it's easier to immediately see and understand why a post is a top post.

Also, if your proposed scoring system somehow does become clear to the users then we will be implicitly training users of (Refined) GitHub to react in certain ways to maximize a post. And if certain reactions are "worth more" that can eventually make the entire reactions system less truthful.

we will be implicitly training users of (Refined) GitHub to react in certain ways to maximize a post

FYI: This already happens if we allow anything in this issue.

I can add 4 votes by reacting with πŸ‘ πŸ˜„ πŸŽ‰ ❀️ in busy posts with more than 10 reactions each (i.e. where you can't deduplicate my points)

Oh wow, I didn't know that Github only names 10 users max per reaction. In that case I recommend not implementing this feature until we can get all the names so that we can deduplicate.

until we can get all the names so that we can deduplicate.

We're not gonna make API calls for each comment in a thread only to get a slightly better "highest rated comment" though πŸ˜…

We can deduplicate the first 10 and just accept that 1 user = up to 4 votes, if we make this change.

Haha, fair point! It's an acceptable compromise :)

Before anyone thinks of implementing this, I need to see cases where this actually makes a difference, because I have doubts. Links please.

https://github.com/sindresorhus/refined-github/issues/2357

I don't care about this feature so much, but take this as a case:

image

My proposal: find the comment with most reactions (as for me, I would choose from these reactions πŸ‘ πŸŽ‰ ❀️ πŸš€) and mark it as the highest-rated comment.

In the example above, the first comment gets 31 πŸŽ‰, which exceeds the second comment's 14 πŸ‘, so the first comment should be marked as the highest-rated comment.

What about showing the 'comment with most reactions' instead of the 'highest rated'?

IMHO it is legit if a user wants to add more than a single point. Precisely, I use it to make a difference between 'this is good/interesting' and 'I'd love to have this implemented/merged'.

By the same token, I think that refined-github should not decide which reactions are 'good' or 'bad'. A 'thumbs up' is as legit/informative as a 'thumb down', and not more relevant than 'eyes'. This is a 'controversial' example, where there are 'mixed reactions': https://github.com/microsoft/vscode/issues/17996

Picking β€œthe best one” is as far as RGH can go. Ideally you’d want some UI to β€œsort by reactions,” like StackOverflow would show answers, but that doesn’t belong to this extension.

We should strive to β€œbe helpful in most cases” rather than trying to cover all cases.

This feature just needs to be changed to count πŸ‘ πŸŽ‰ ❀️ instead of just πŸ‘

This feature just needs to be changed to count :+1: :tada: :heart: instead of just :+1:

If that's the case, then could I try this issue?

It's all yours :)

Was this page helpful?
0 / 5 - 0 ratings