Note that votes are largely subjective, this is my cheatsheet.
I generally use "does the post help the site?" to judge upvotes and downvotes to some extent. This is based on the same thing, expanded into points. If you want. I can expand the points/add more if I think of them.
##Question
To downvote a question, downvote immediately. If there's scope for improvement, comment and downvote. You can always undownvote if its improved. Read more
###Upvote (pick one)
- It's clear and shows research effort
- The question is plain awesome (in case of fun questions, this can go either way)
- The question is useful to others
###Downvote
- It's unclear
- It's a plzsendtehcodez or similar question with no effort from the OP
- It's localized (will probably be useless to the world)
Note that I tend to upvote questions when their answers explain something pretty well. This is probably wrong, but that's just me.
Do NOT downvote just because:
- The question uses incorrect grammar (as long as it is comprehensible)
- The question has bad, (but clear) code; the question uses bad coding practices; the premise of the program is wrong. In this case, just comment "why haven't you done blah?". If you're answering, you can append that to your answer instead. (I've done that here). Remember, voting is to filter post quality, not code quality or OP quality.. Also, there are legitimate uses for everything, even
eval()
.
##Answer
With answers, again, downvote immediately, comment, undownvote if fixed. With newbies I tend to be more lax, I comment first and downvote if they decide not to listen. But again, that's just me.
###Upvote
Of course, in any event, the answer must answer the question. If not for the last line of this answer, it should have been downvoted. (Not that it would have been)
- The answer is clear
- The answer explains the underlying concept. On SO I've noticed many answers that give the solution, but not the "Why?". I do not downvote these, but neither do I upvote them
###Downvote
Try to comment wherever applicable when downvoting.
- Does not answer the question. Flag at your discretion.
- Makes no sense
- FGITW post with minimal answer: This depends upon the answer really.
- Code-only answer: A post must be useful to People From The Future™. Nobody's going to have the exact same code with the exact same issue (Well, maybe not). People From The Future™ should have an explanation of why the code is wrong/bad/whatever so that they learn something.
- Link-only answer
- Is wrong (in your opinion).
- Bad coding practices. Unlike questions, the answer should use good coding practices. For questions and answers, post quality is differently measured. For questions, it has to do with the actual question more than the code. For code-only answers, bad coding practices are..well.. bad. In the case of a good explanation with bad code, downvote, comment, undownvote. Or abstain from voting and comment. Either is fine, it's up to you.
Do NOT downvote just `cos
- It's a competitor. Voting is for post quality, and you end up harming the system. Also, upvoting competing answers gets you something shiny.
- Again, grammar that does not affect comprehensibility too much.
- Do not downvote solely to free the post from an undeserved negative vote
##Comments
Who cares? Keep this in mind that on a post wil a large number of comments, the ones shown will be the upvoted ones. So the comments which actually improve the post quality/help the OP should be upvoted. But, we know, nobody's going to follow that-- Not enough jQuery
is a sure way to get you a comment upvote. And on MSO, comment-upvote just about anything :) [Scroll down a bit to see what I mean]
EDIT: To safeguard myself from the ensuing comments of not enough jQuery
, I present to you:
In short, DO NOT $('.vote-down-off').click()
in case of competing answers. Try to $('.vote-up-off').click()
in most cases. Then downvote manually :)