This site is very unique in that 2 people can't come and say I had the same problem, since all questions have working code. Having said that, I see a lot of answerers not upvoting the questions they answer to, and it makes me wonder. What makes a good question here?
5\$\begingroup\$ Great Question. What caught my attention was a 'featured question' had only 3 upvotes. So I looked around and it appears to me that most of straightforward 'here is my code, please give feedback' have only a few votes. Are we voting on whether the code is 'good code' or voting on whether the person asked a good question (which may be inversely proportional to whether it's good code) or are we voting on whether we care about that particular problem they are solving. It surprises me how few upvotes there are on this site vs others with less users and lower hit rates. \$\endgroup\$– DuncanJan 10, 2013 at 12:56
I'd say a question is worthy of an upvote if the asker made a good job of making it easy for users to review his code. He can do so by explaining the structure of and ideas and considerations behind his code to an amount roughly proportional to the amount of code, by pointing out issues he's already aware of (but doesn't know how to solve yet).
I compiled a guideline of what a good question looks like here.
\$\begingroup\$ So, bad code which can be reviewed easily should get more votes than good code that is not as easy to review? \$\endgroup\$ Nov 21, 2018 at 16:00
\$\begingroup\$ @einpoklum: One thing is what shoud ond often different thing is what does (get upvoted). I upvote interresting questions that are well described (or code well commented), giving me something to learn. \$\endgroup\$– user52292Nov 25, 2018 at 23:51
\$\begingroup\$ @einpoklum: It seems to me that questions from beginners, with code that has lots of issues to point out, get more upvotes than advanced code that is harder to read and harder to find issues with. I have not done any proper statistics, maybe my impressions are wrong, but this is what it looks like to me. \$\endgroup\$ Dec 14, 2018 at 0:11
I believe we are all here to learn something, therefore my criteria are:
- Good description (either text or in the code). I do not upvote questions that I have to decipher. I may even downvote very poor, mostly code-only (no comments) questions.
- Interesting problem. I may upvote a simple question if it still has low number of upvotes (especially if OP is new here) and is at least reasonably well described. I do upvote more difficult/complex questions (if well described/researched) and personally wish more people would do the same, but the reality appears to be that simple problems get more upvotes, probably becase more people understand it, therefore like it.
- I see no problem/flaw and there is no answer. If I cannot see a problem, maybe somebody else can - upvoting makes it more visible.
- I have learned something (either from the question or from some answer - upvote the answer, if that was it, and maybe the question as well, if it was good = at least well described).
Unfortunately, it seems to me like most users on the site - perhaps myself included - are likely to upvote clever-looking code rather than use any other consideration. That is, I don't trust the vote count to represent the principle @sepp2k expressed. I'm always at a loss when faced with the decision of whether to upvote or downvote, or nothing at all, and don't have a clear rule other than some sort of gut feeling.
2\$\begingroup\$ You're both correct. Clear questions and clever-looking code are more likely to get upvoted. The third category is simple questions that many viewers understand, ones that do not require expert knowledge. They get quickly popular so even more visitors come by and vote. \$\endgroup\$– t3chb0tNov 22, 2018 at 19:49