Communities

Writing
Writing
Codidact Meta
Codidact Meta
The Great Outdoors
The Great Outdoors
Photography & Video
Photography & Video
Scientific Speculation
Scientific Speculation
Cooking
Cooking
Electrical Engineering
Electrical Engineering
Judaism
Judaism
Languages & Linguistics
Languages & Linguistics
Software Development
Software Development
Mathematics
Mathematics
Christianity
Christianity
Code Golf
Code Golf
Music
Music
Physics
Physics
Linux Systems
Linux Systems
Power Users
Power Users
Tabletop RPGs
Tabletop RPGs
Community Proposals
Community Proposals
tag:snake search within a tag
answers:0 unanswered questions
user:xxxx search by author id
score:0.5 posts with 0.5+ score
"snake oil" exact phrase
votes:4 posts with 4+ votes
created:<1w created < 1 week ago
post_type:xxxx type of post
Search help
Notifications
Mark all as read See all your notifications »
Q&A

Welcome to Codidact Meta!

Codidact Meta is the meta-discussion site for the Codidact community network and the Codidact software. Whether you have bug reports or feature requests, support questions or rule discussions that touch the whole network – this is the site for you.

Post History

81%
+7 −0
Q&A An alternative approach to the view order of answers

The Codidact functional specification calls for changes to answer ordering; we just haven't gotten that far in implementation yet. (Scroll down to the "Votes and Scores" section.) For each questi...

posted 4y ago by Monica Cellio‭  ·  edited 4y ago by Monica Cellio‭

Answer
#2: Post edited by user avatar Monica Cellio‭ · 2020-06-16T22:57:29Z (over 4 years ago)
formatting
  • The Codidact [functional specification](https://github.com/codidact/docs/wiki/Functional-Specification) calls for changes to answer ordering; we just haven't gotten that far in implementation yet. (Scroll down to the "Votes and Scores" section.)
  • > For each question and answer we display raw upvotes and downvotes. This makes controversy visible.
  • > For each answer we compute a score thus: (upvotes + bonus + N) / (upvotes + downvotes + bonus + 2N). Scores are not directly displayed. Default N is 1 but is configurable per-site.
  • > We order answers by score, with newer answers winning ties.
  • The scoring algorithm here ("Wilson scoring") gives more weight to controversy than mere "upvotes minus downvotes" does. In addition, as noted, the raw votes will be shown, so that "+15 / -7" doesn't *look* like an innocent "+8 / -0".
  • We are also considering another feature for later that addresses one of the points you raised:
  • > Not MVP: For questions older than (default) 6 months, new answers are labeled “new” and given a bonus in the scoring formula for the first (default) 7 days. This allows new answers to have more visibility when there are high-scoring answers present already. The amount of the bonus is TBD. All values are configurable per-site, including turning this feature off.
  • For stale answers where the world has changed since, I think the best approach is probably to edit the answer to add a note at the top like "This answer applies to Java version 7 or earlier". First, some people might still need answers for older contexts, and second, it clearly labels the answer so it can be evaluated in its proper context. It never felt right to me to downvote answers that *were* perfectly good when they were written, but now there's a newer, better way to do something. Instead, make the context prominent and let the reader decide whether it applies.
  • One problem we won't have to worry about on Codidact is a poorer answer being pinned to the top by acceptance. We will probably add some way for the asker to indicate "this worked for me", but it won't affect score or placement. Answers (and their scores) are for everyone, not just the asker of the question, so while it's good to know that we solved the asker's problem, we shouldn't give the asker control over sort order beyond voting.
  • The Codidact [functional specification](https://github.com/codidact/docs/wiki/Functional-Specification) calls for changes to answer ordering; we just haven't gotten that far in implementation yet. (Scroll down to the "Votes and Scores" section.)
  • > For each question and answer we display raw upvotes and downvotes. This makes controversy visible.
  • >
  • > For each answer we compute a score thus: (upvotes + bonus + N) / (upvotes + downvotes + bonus + 2N). Scores are not directly displayed. Default N is 1 but is configurable per-site.
  • >
  • > We order answers by score, with newer answers winning ties.
  • The scoring algorithm here ("Wilson scoring") gives more weight to controversy than mere "upvotes minus downvotes" does. In addition, as noted, the raw votes will be shown, so that "+15 / -7" doesn't *look* like an innocent "+8 / -0".
  • We are also considering another feature for later that addresses one of the points you raised:
  • > Not MVP: For questions older than (default) 6 months, new answers are labeled “new” and given a bonus in the scoring formula for the first (default) 7 days. This allows new answers to have more visibility when there are high-scoring answers present already. The amount of the bonus is TBD. All values are configurable per-site, including turning this feature off.
  • For stale answers where the world has changed since, I think the best approach is probably to edit the answer to add a note at the top like "This answer applies to Java version 7 or earlier". First, some people might still need answers for older contexts, and second, it clearly labels the answer so it can be evaluated in its proper context. It never felt right to me to downvote answers that *were* perfectly good when they were written, but now there's a newer, better way to do something. Instead, make the context prominent and let the reader decide whether it applies.
  • One problem we won't have to worry about on Codidact is a poorer answer being pinned to the top by acceptance. We will probably add some way for the asker to indicate "this worked for me", but it won't affect score or placement. Answers (and their scores) are for everyone, not just the asker of the question, so while it's good to know that we solved the asker's problem, we shouldn't give the asker control over sort order beyond voting.
#1: Initial revision by user avatar Monica Cellio‭ · 2020-06-16T21:56:38Z (over 4 years ago)
The Codidact [functional specification](https://github.com/codidact/docs/wiki/Functional-Specification) calls for changes to answer ordering; we just haven't gotten that far in implementation yet.  (Scroll down to the "Votes and Scores" section.)

> For each question and answer we display raw upvotes and downvotes. This makes controversy visible.

> For each answer we compute a score thus: (upvotes + bonus + N) / (upvotes + downvotes + bonus + 2N). Scores are not directly displayed. Default N is 1 but is configurable per-site.

> We order answers by score, with newer answers winning ties.

The scoring algorithm here ("Wilson scoring") gives more weight to controversy than mere "upvotes minus downvotes" does.  In addition, as noted, the raw votes will be shown, so that "+15 / -7" doesn't *look* like an innocent "+8 / -0".

We are also considering another feature for later that addresses one of the points you raised:

> Not MVP: For questions older than (default) 6 months, new answers are labeled “new” and given a bonus in the scoring formula for the first (default) 7 days. This allows new answers to have more visibility when there are high-scoring answers present already. The amount of the bonus is TBD. All values are configurable per-site, including turning this feature off.

For stale answers where the world has changed since, I think the best approach is probably to edit the answer to add a note at the top like "This answer applies to Java version 7 or earlier".  First, some people might still need answers for older contexts, and second, it clearly labels the answer so it can be evaluated in its proper context.  It never felt right to me to downvote answers that *were* perfectly good when they were written, but now there's a newer, better way to do something.  Instead, make the context prominent and let the reader decide whether it applies.

One problem we won't have to worry about on Codidact is a poorer answer being pinned to the top by acceptance.  We will probably add some way for the asker to indicate "this worked for me", but it won't affect score or placement.  Answers (and their scores) are for everyone, not just the asker of the question, so while it's good to know that we solved the asker's problem, we shouldn't give the asker control over sort order beyond voting.