Page 1 of 1

Poll: Proposed Tweaking of the Voting System (CLI)

Posted: Thu Nov 19, 2020 10:01 am
by vevy
The way it currently stands, the voting system poses a problem:
Andrew Lee wrote:
Sat Nov 14, 2020 3:12 am
BTW, use your vote wisely. Eventually, we will start hiding the private entries. If enough people think eg. Powershell is a sucky idea, it will not go public. Plain and simple. We dealt with Java and .NET stuff in the mainline database this way as well.
  • Some members may upvote below-average but well-known entries for visibility not because "these apps rock!" For example, the ancient UnxUtils.
  • Other members may refrain from upvoting a competent tool, because it may be taken as an endorsement of a tool they don't use enough to endorse. For example,
    • I am not sure I want to upvote Sarch, because I don't currently use it. But I definitely don't want it to be hidden when I need such a tool a year from now.
    • ffplay is good for what it does, but if I give it a +5, it may give the impression that I think it's a great CLI player like mpv or mplayer!
    • Likewise, fselect is such an amazing tool that I am surprised it doesn't have 15 votes already! No problem, I can understand that SQL syntax (even a simplified one) is not going to be for everyone. But, I still want it to be visible, even at then end of search results so that it can make the day of someone a couple of months from now.

The current system (disregarding that private entries are shown at the moment) goes like this:
Type Example Status
Well-known, competent youtube-dl Many votes, no problem.
Well-known/"popular" but with problems UnxUtils Some like it, others upvote it for visibility giving it an impression of endorsement.
Less-known, competent tools Take your pick. For example, fselect or Sarch Risk being hidden due to lack of testers/upvotes.
Less-known, incompetent tools Take your pick. Treated the same as the good tools above.
How to solve this? Possibilities:
The idea behind all the following options is to separate type 3 from type 4, and removing the incentive to upvote type 2.
Option 1 (thanks for the table idea, Andrew :wink:):
Does the basic job, simple to implement (Andrew?).
  • Net >=5 upvotes: public. Examples:
    • +5/0 (upvoted by a level 5 without downvotes).
    • +15/-5
  • Net 0-4 upvotes: public but demoted (at the end). Examples:
    • +5/-1 (someone downvoted).
    • +1/0
  • Net <0 upvotes: hidden/private. Examples:
    • +1/-5 (downvoted by level 5).
    • 0/-1
Option 2:
Better coverage. More fair.
  • Net >=5 upvotes: public and gets ranking points for every vote >5. Examples:
    • +5/0 : public with ranking points of 0.
    • +15/-5 : public with ranking points of 10.
  • Net 0-4 upvotes with at least 4 upvotes: public and no ranking points. Examples:
    • +5/-1
    • +7/-3
  • Net 0-4 upvotes with < 4 upvotes: public but demoted (at the end). Examples:
    • +4/-1 (someone downvoted).
    • +3/-3
  • Net -1 to -4 upvotes: hidden/private by default. Examples:
    • +1/-5 (downvoted by level 5).
    • 0/-1
  • Net <=-5 upvotes: hidden/private (needs log-in to view, spam or bad entries). Examples:
    • 0/-5 (downvoted by level 5).
    • +1/-7
    • There can be a slight adjustment so that no single downvote (e.g. bad personal experience) can send a tool to log-in-to-view which is to add a report button (so -5 & report). Or you can give out a potion of your voting power (e.g. level 5 user can give a tool a -3, or another user can counter the -5 by giving the tool a +1 instead of full +5 endorsement)
Option 3:
  1. Ask Andrew to upvote the individual tools!
  2. Create an "upvoter" account that doesn't carry the endorsement of a particular user (including Andrew).
  3. Make all tools with net upvotes visible and create a "superdownvoter" account (-10) to blitz bad entries.
My vote goes to option 2:
  • It is actually a quite simple ranking algorithm (and behind the scene anyway).
  • Its effect is a fair ranking of tools by popularity, without hiding of good tools! :wink:

Re: Proposed Tweaking of the Voting System (CLI)

Posted: Thu Nov 19, 2020 10:16 am
by vevy
Why not just keep the current system like the regular database?

Because, other than the problem mentioned above, the regular database is for a subset of tools (portable tools as a subset of all software) while the CLI database has no good alternative on the web where we discover the "other CLI" tools we leave out! (I have been looking for CLI tools for many months, they are scattered over so many places it is a real effort! :shock: )

Thus, I believe we should give at least basic visibility (i.e. no hiding/private) to any competent tool (without downvotes for example) even if it is not as popular as the others.