12
\$\begingroup\$

In this question, I posted a complete script. I got four upvotes, but no reviews, even partial ones. I wouldn't assume that my code is perfect (especially since I pointed out some things I don't like about it myself), so I think that the root cause is a bit different. What could lack of answers mean here? Is the code too big to actually be reviewed? Or perhaps it's likely that people feel discouraged from reviewing it because it's not their area of expertise?

\$\endgroup\$
  • \$\begingroup\$ It definitely looks interesting. With the weekend coming up, I hope to give it a shot. I'm not used to Pyhon3 though, so I'm no expert. \$\endgroup\$ – Mast May 1 '15 at 11:18
  • \$\begingroup\$ It's not py3, I just use parenthesis around print so that in some trivial cases my py2 code runs in py3 with no problem. \$\endgroup\$ – d33tah May 1 '15 at 11:19
  • \$\begingroup\$ That both clears up confusion and will make it easier :) \$\endgroup\$ – Mast May 1 '15 at 11:24
  • 9
    \$\begingroup\$ I think the answers here cover it pretty well, but I'd take time to remind you of two things. 1) Code Reviews take time. More time than answers on other programming related SEs. Particularly for Qs that contain a lot of code. You only posted the main site question yesterday. Please be patient. 2) We generally have more askers than answerers here, and we particularly lack Python reviewers. This adds to the "time to answer" factor. That said, I really encourage you to browse other questions and see if you yourself don't have an answer to contribute. \$\endgroup\$ – RubberDuck May 1 '15 at 11:34
  • \$\begingroup\$ @RubberDuck: you're right - maybe I rush too much. \$\endgroup\$ – d33tah May 1 '15 at 11:43
17
\$\begingroup\$

The way I interpret the up-votes is:

"I find this worth reviewing. I don't have time myself to post an answer but I hope someone else does."

The reason why you are not getting answers can be any of the following:

  • Code is too long (long code does take more time to review, but it is known that long questions can also get answers)
  • It is not entirely clear what the code does
  • It is not entirely clear how the code does it, or how the code is structured
  • The question is not interesting enough for someone to have answered it yet
  • The question is not well-structured enough for someone to have answered it yet
  • People just don't have time... (this is probably the most common reason)

When asking a question, do whatever you can to make the question interesting and try to make it easily reviewable.

Additionally, while you are waiting for an answer, look around at other related questions posted in the same language, or maybe even try to find other questions that does the same thing (or something similar) but in another language. See if there is anything you can learn from the other questions. And perhaps most importantly: See if there is anything you can review on the other questions.

Here's an example of what I think is a well-structured, interesting question: SudokuSharp Solver with advanced features

\$\endgroup\$
  • 3
    \$\begingroup\$ "I find this worth reviewing. I don't have time myself to post an answer but I hope someone else does." Exactly this. Upvotes indicate a good question. A review indicates somebody took the time to help you out. Those are related, but definitely not identical. \$\endgroup\$ – Mast May 1 '15 at 11:23
  • \$\begingroup\$ I agree with all of this, except that I don't upvote questions where it is unclear what the purpose of the code is. \$\endgroup\$ – 200_success May 1 '15 at 15:47
  • \$\begingroup\$ @200_success Does my answer say that that should be done? I also don't upvote questions where it is unclear what the purpose of the code is. In fact, I tend to downvote them. \$\endgroup\$ – Simon Forsberg May 1 '15 at 18:16
  • \$\begingroup\$ What do you mean by "It is not entirely clear what the code does"? \$\endgroup\$ – 200_success May 1 '15 at 18:40
  • \$\begingroup\$ @200_success In this answer I mean that if it is unclear what the code does, that can be a common reason for why a question has not yet been answered. \$\endgroup\$ – Simon Forsberg May 1 '15 at 18:47
9
\$\begingroup\$

An upvote on a question means something like, "this question is suitable for this site": that is, it includes (allegedly) working code written by the poster, and it's (reasonably) clear what the purpose of the code is. It doesn't mean "someone's going to review it right away".

I had a look at your question and decided not to review it because:

  1. It relies on iwconfig so I'd have to boot a Linux virtual machine to run it.

  2. It requires WireShark, which I'd have to install.

  3. It runs sudo iwconfig which seems kind of dangerous to me — I don't fancy letting random code posted on Code Review do that on my system without a lot of checking.

  4. Doing a decent review would require expertise about the details of WiFi networking that I don't have.

\$\endgroup\$
  • \$\begingroup\$ Good points! I didn't really make my code easy to test without actually running it. \$\endgroup\$ – d33tah May 1 '15 at 12:58
  • 2
    \$\begingroup\$ You don't have to run the code to review it. It can be extra helpful, sure, but it is not required. \$\endgroup\$ – Simon Forsberg May 1 '15 at 18:17
  • 2
    \$\begingroup\$ I don't have to run the code to review it, but I nearly always do, as it makes for better reviews. Hence, if code looks as if it will be a pain to get running, I'm not going to review it. \$\endgroup\$ – Gareth Rees May 1 '15 at 19:07
6
\$\begingroup\$

All of the reasons you point out could be legitimate.

I am personally not familiar with Python, therefore I tend not to pay too much attention to that tag. I'm not certain how much attention that tag gets (though I am certain we have Python reviewers).

Also, long review requests can sometimes be challenging. We've discussed these on the meta before and concluded that even partial answers should be encouraged. In fact, no one should consider any answer a complete answer, so post your answer no matter how partial it is.

Perhaps those who could review Python have forgotten about this discussion or were unaware. Or perhaps none of the reviewers we have are capable of seeing problems.

Also, you can always post self-answers which may at least inspire some other comments and maybe even other answers. Take a look at my Objective-C and Swift questions. Usually I must self-answer.

\$\endgroup\$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .