120

...not literally, of course. But what happened to the previous menu of close-vote options?

I find the current set unsatisfactory. Take this question that boils down to a typical java.lang.NullPointerException for example. Obviously, the question is worthless, because it's an exception that even a n00b programmer should be able to debug on his own. There is nothing special about this bug, and it will help no one in the future.

What could I possibly select as a close reason?

  • duplicate of... - Maybe. There's the classic What is a NullReferenceException, and how do I fix it? which has been linked to 527 times. While the debugging techniques are the same, that's for .NET. Besides, there are any number of other common exceptions / simple development bugs that wouldn't apply.

  • off-topic because...

    • ...

    • This question was caused by a problem that can't be reproduced or a simple typographical error. While similar questions may be on-topic here, this one was resolved in a manner unlikely to help future readers. This can often be avoided by identifying and closely inspecting the shortest program necessary to reproduce the problem before posting.

      Notes below....

  • unclear what you're asking - No, it's clear that the programmer just needs to debug his code.

  • too broad - No, it's quite specific.

  • primarily opinion-based - Nope.

When it was introduced, I was happy to see a "typo" reason, to rid out all the stupid indentation or bracket questions. But... we no longer have a "lacks minimal understanding" reason, which I think is incredibly important. After all, Stack Overflow is here to solve problems that "professional and enthusiast programmers" encounter... not teach users how to code or debug.

So.... what do I pick? Can we have another revision on the close vote reasons?

I did a cursory search, but couldn't find a Meta post to the intent behind this latest set of reasons. Edit: I believe this is it: Improving "demonstrate a minimal understanding" close reason


Edit 1/20 Ah, how could I forget about the classic copy & paste homework assignment?

Right or wrong, my close vote was cast with

off-topic because it shows zero desire to actually understand the problem.


Here we see a moderator closing a question about an incorrect number of function parameters as lacks sufficient information to diagnose the problem. Of course, there probably is sufficient information, and the wording should really be changed to You're too lazy to RTFM.

26
  • 1
    The first option if you don't know which reason to pick, but still want to close the question is to choose "other". Otherwise, this actually has been discussed a lot and I think the general conclusion was to downvote rather than close (read the downvote reasons on hover).
    – sashkello
    Commented Jan 17, 2014 at 5:12
  • 9
    @sashkello But now I have to write the same thing over and over, when we used to have a pretty good canned response Commented Jan 17, 2014 at 5:13
  • 3
    related: What is a better name for Unclear What You're Asking?
    – chue x
    Commented Jan 17, 2014 at 5:16
  • 1
    Also this: meta.stackexchange.com/questions/215596/… and this: meta.stackexchange.com/a/215546 Commented Jan 17, 2014 at 5:17
  • 4
    @jadarnel27 However, heated discussions in related topics and upvotes to this question are clearly showing the attitude of the community.
    – sashkello
    Commented Jan 17, 2014 at 5:35
  • 1
    close reasons miss "Unclear how we can help..."
    – gnat
    Commented Jan 17, 2014 at 5:35
  • 1
    There was another related question, with no resolution to it: meta.stackexchange.com/questions/207950/…
    – sashkello
    Commented Jan 17, 2014 at 5:36
  • 1
    @sashkello Good find. Ironically, the highest-voted answer is "minimal understanding"... which has subsequently been removed as well. Commented Jan 17, 2014 at 5:39
  • 2
    @sashkello I don't think a "You're asking us to debug your code" reason all by itself would be too specific. I know I would use it at least twice a day. Commented Jan 17, 2014 at 5:41
  • 2
    @JonathonReinhart Yes, I totally agree, the problem is that mods decided that question should be closed if and only if it is unanswerable (in reasonable way). All other situations are a reason to downvote. I really don't want to go through meta and read through all the discussions, but I'm quite sure it contradicts quite a few guidelines which were suggested before. That's why the confusion and endless altercations... The problem is if the reason is not there, people are just likely to misuse another one, that's all. You can't enforce it like this...
    – sashkello
    Commented Jan 17, 2014 at 5:44
  • 4
    @sashkello Well then I guess I'm going with off-topic because... (custom) "it is asking about a problem that could be solved with a reasonable amount of debugging, which does not appear to have been done." Commented Jan 17, 2014 at 5:52
  • 5
    As an FYI, you might want to check out the new close reason that was just added: "This question appears to be off-topic because it lacks sufficient information to diagnose the problem. Describe your problem in more detail or include a minimal example in the question itself." That may address some of your concerns. Commented Jan 17, 2014 at 17:58
  • 13
    I found this thread because I noticed the "minimal understanding" reason is gone (I noticed a bit ago, but finally got fed up enough to look into it). I understand the reasons, but I'd like to chime in and say that a lot of questions are just plain lazy, and imho we shouldn't coddle the asker by saying that they're too broad, etc. It dilutes the quality of questions, and I'm sure I'm not the only person who's slowly (but steadily) being turned off of SO because of these questions. If someone's trying to get us to do their homework/googling for them, they deserve a slap on the wrist.
    – yshavit
    Commented Jan 19, 2014 at 23:22
  • 5
    What happened to the “You're Just Lazy” close vote reason? -- It never existed.
    – user102937
    Commented Jan 21, 2014 at 17:13
  • 5
    @RobertHarvey, it should :) Commented May 25, 2014 at 20:26

8 Answers 8

46

A better question would have mentioned something about working backwards through the trace and trying to find the cause, but not seeing anything in the code that explains what they're seeing. Debugging is a programming skill that is learned, not just immediately acquired.

However, it's a perfectly answerable question, and is very likely to help other people given the answer that it received. Had we called the OP a lazy bastard and just shut the question down, that wouldn't have been possible.

If you don't feel that the author has put sufficient time and effort into the underlying problem despite presenting it in the form of a question that can be easily answered, then you have the option to simply not answer the question.

I am getting extremely tired of this mentality that helping beginner programmers with very simple problems is somehow enabling them to sail through the rest of their career without ever having to use a debugger for themselves.

Close questions that can't be answered. Ignore those you don't feel deserve to be answered. We're not going to close a question that can be answered from what has been provided within the question itself simply because folks feel that the person asking it is not deserving of our help.

If it's not a duplicate, answer it, or ignore it.

17
  • 40
    The biggest problem I see is the back-and forth of the opinion of "the community". The "minimal understanding" (basic effort) reason was introduced less than a year ago, as the question rate (and thus poor question rate) really climbed. The thought was that Stack Overflow isn't a "we'll help any old silly problem" site, but rather a definitive source for otherwise un- or poorly documented problems. Now what you're saying is quite the opposite - that it's okay to let these effortless problems exist. Commented Jan 17, 2014 at 7:42
  • 6
    I'm just another user so it doesn't really matter what I think, but the consistency certainly appears to be lacking on this front. Commented Jan 17, 2014 at 7:43
  • 1
    Do you think this question question should be kept open? If not, what to close it as? Commented Jan 17, 2014 at 7:47
  • 7
    The problem is that you guys are stating it as if it is so obvious and everyone else was doing something wrong all along. If such a big change comes, there needs to be a good guide (jumping up at the reviewer and blinking) which explains what happens and how to handle such questions now. Just recently it was different (all these imply that such questions should be closed): meta.stackexchange.com/questions/215406/… meta.stackexchange.com/questions/185102/…
    – sashkello
    Commented Jan 17, 2014 at 9:07
  • 17
    Also "Close questions that can't be answered." is not really the essence of it. We close questions which can be answered, but off-topic. Typo questions are off-topic, although are unswerable. Library finding questions are off-topic, although answerable AND helpful (I'd rather see those being left open). Mixed messages lead to confusion.
    – sashkello
    Commented Jan 17, 2014 at 9:14
  • 6
    Here moderator is actually answering that such questions should be closed: meta.stackexchange.com/questions/200248/…
    – sashkello
    Commented Jan 17, 2014 at 9:21
  • 4
    @JonathonReinhart It's not so much a lack of consistency as it is growing pains. Lazy is just too broad, if it's going to put the beginner that simply doesn't know how to debug a problem in the same bucket with the guy trying to do his homework an hour before it's due and can't be bothered to do a Google search. The really awful questions in this criteria more often than not fall under several other more objective close reasons, quite often unclear or too broad. In order to have 'lazy', we have to quantify it consistently, which is ... just not possible as we've observed.
    – user50049
    Commented Jan 17, 2014 at 11:13
  • 10
    @JonathonReinhart And, I'm not saying that all beginner questions are without reproach, I actively down vote when I see someone that couldn't be bothered to think, much less do any research, much less write a decent question. But when they come to us with everything we ask for (problem, expected output, actual output, error, relevant code), they've met the bar (in most cases) where their question not only can be answered, but probably deserves an answer. Every case is different, but 'minimal understanding' was just being used way too often inappropriately.
    – user50049
    Commented Jan 17, 2014 at 11:17
  • 1
    @TimPost Just one more question. Even with the new close reason, for what reason should I close the original question? :-) Commented Jan 17, 2014 at 19:30
  • 3
    Don't close the original question, @Jonathon.
    – Shog9
    Commented Jan 17, 2014 at 19:52
  • 27
    Without some kind of "f$#k off, noob!" close-vote reason, SO is quickly going to become even more of a cesspool than it already is. Something along those lines just needs to return. I couldn't care less if a lazy question could be answered by a good samaritan. I want it out of my sight already. Commented Jan 18, 2014 at 12:40
  • 3
    @Denis as I understand it, we should let it happen and then do the clean up once the rule makers beg for forgiveness. Commented Jan 18, 2014 at 20:14
  • 9
    @JanDvorak: Seems so. I'm just hoping the A-level users who actually have something interesting to write in answers won't be put off by this to the point where they leave in droves. In my own tag ghetto, there are only a handful of such users. My interest in following SO is limited to their staying around -- there's zero point in hanging out on this site you've little or nothing to learn on it. And I see the rational (for the company behind it) for trying to lower that bar. But the risk is to lose the As, and then the Bs, and ultimately turn this site into a worse cesspool than it already is. Commented Jan 19, 2014 at 1:11
  • I almost liked your answer, but realized it doesn't distinguish between "lazy" questions and "on topic on kittens.stackexchange.com." Perfectly answerable, just I don't have to answer it.
    – djechlin
    Commented Jan 20, 2014 at 16:23
  • 1
    @djechlin Not sure where you're going with the kittens (but shucks, they're awful cute) - I'm talking about questions where there is effort, shown by giving us everything we need to answer the question. So many questions don't even go that far. I'm talking about the difference between not even knowing where to begin searching vs couldn't be bothered to even try a search engine. Thinking back to my first mysterious segfault, I sure as heck would have asked on SO had it been available, and learned how to debug code better and faster than I ended up doing.
    – user50049
    Commented Jan 21, 2014 at 4:31
35

I agree with Jonathon Reinhart (and obviously already upvoted his post). Since we are in a mode I would like to offer my observations and thoughts.

We no longer have two very useful reasons to close: "demonstrate effort" and "provide code sample/SSCCE". The remaining reasons do not match such situations well. I read the answers to this post as well as similar discussions here and it seems that we supposed either answer these "I was given a task but have no idea what's it about" or just ignore them.

There are a lot of posted questions that could be answered just by plugging its title into Google search. There are a ton of the same questions coming almost daily that would not be needed if OP just tried to search before posting or even look at the right side of the screen after posting. Yes, the latter could and should be closed as duplicates. I'm however amazed at the complete lack of effort on part of people asking them.

Programming is constant learning, constant research. These people are not "beginner programmers" as they are portrayed in these discussions. They are "I do not want to become a programmer and do not care how to solve the problem as long as I can pass somebody else's code as my own and be done with it".

It, however, seems that SO community finds some benefit in becoming "do my homework for me" kind of place. What such benefit might actually be is beyond my comprehension.

9
  • 2
    "these people" are not an undifferentiated mass. Some of them are destroying SO; others are its future. If you find a harmful question and can't find a close reason that fits, bring it up for discussion here on meta - tag it discussion specific-question close-reasons.
    – Shog9
    Commented Jan 18, 2014 at 17:07
  • 14
    @Shog9 - My point was to differentiate between people who want to solve a problem but lack necessary knowledge and/or skills and those who just want the answer to satisfy some requirement and do not care about "how" and "why".
    – PM 77-1
    Commented Jan 18, 2014 at 17:16
  • 4
    Assuming you can even do this reliably (which is a pretty good trick on its own, at least up until you've seen a few different questions from someone), what would you do with that information? A given question - and its answers - may be read and used by many, many more people who are doing the research, finding the question via Google - assuming the question (and answers) are useful to them, would you still remove it just to punish the asker? All else being equal, would you remove a question from UserA while permitting a question from UserB simply because of A's attitude toward learning?
    – Shog9
    Commented Jan 18, 2014 at 17:44
  • 10
    @Shog9 - In my view UserA and UserB wouldn't post their questions the sane way. One will post the question, results of some research, and, possibly, even an attempt to solve the problem. Another will (at best) just re-state his/her "TO DO"s with some pathetic explanations that, the answer is required immediately and, since they already spent more than a second of their precious time trying to work on it, would someone supply the solution.
    – PM 77-1
    Commented Jan 19, 2014 at 23:42
  • 1
    Exactly. By their posts ye shall know them... So can we maybe just cut to the chase and focus on judging posts instead of people?
    – Shog9
    Commented Jan 20, 2014 at 0:36
  • 4
    @PM77-1 "It, however, seems that SO community finds some benefit in becoming do my homework for me kind of place. What such benefit might actually be is beyond my comprehension." Well, for one thing, it's that delicious rep...
    – itsjeyd
    Commented Jan 20, 2014 at 23:28
  • 3
    Like this guy here who has posted two same posts of the same homework assignment, neither showing any evidence of effort and both essentially asking for others to pass along some code. Ugh. Commented Jan 21, 2014 at 1:36
  • 5
    @Shog9 - I have read your special post about the reasons behind these changes and I'm not convinced. At this time let's just agree to disagree.
    – PM 77-1
    Commented Jan 21, 2014 at 1:43
  • "I want you to code something with these requirements: A, B, C" That is too broad, because a good answer would explain what each thing command did, so the answer would be as long as a copy-paste of the entire manual and related resources. A question asked many times before: There are times when searching doesn't work, when you don't know the correct wording for example. And the alternate wording can be a very useful duplicate sign-post.
    – bjb568
    Commented Feb 21, 2014 at 6:20
24

On Role Playing Games - a site focused on tabletop RPGs like Dungeons & Dragons, as well as LARPs - we get super-newbie questions all the time with super-obvious (to us) answers.

We answer them without fuss, then move on. We don't push people to prove themselves, nor criticise them for not knowing this stuff.

We do it this way because we understand that these people are on a very different level to us. The rules of some RPGs can be very confusing at times, and almost incomprehensible to beginners. Some games, like D&D 3.5e, are especially guilty of this.

Those of us who've played RPGs long enough are very proficient with the rule books and they make obvious sense to us. When we're that experienced, it's easy to forget how impenetrable and incomprehensible the rule books were for us at the beginning, and wonder how on earth some people actually get confused with the very basics of the rules. They seem so simple to us now! Some of us do forget this at times, but generally the community understands that us experienced players are just on a totally different level to the relatively new players.

And that's just RPG books. Our profession of programming is far more confusing than any of that. (Except, possibly, the D&D 3.5e rule books.)

So when you say...

Obviously, the question is worthless, because it's an exception that even a n00b programmer should be able to debug on his own.

I say you've probably forgotten how it was at the beginning.

How many newbies know how to debug? Do you really think all of them can? Many of them won't even know debugging is a thing that exists yet.

A pretty experienced programmer should be able to debug it. Debugging is a skill people have to learn, and being able to debug well is even further down the track, but before any of that they have to actually learn the existence of debugging, and break points, and so on. Nobody is hit with a magical wand that teaches them these things.

There is nothing special about this bug, and it will help no one in the future.

If there's nothing special about it, that'll make it pretty easy to answer, probably very briefly. Then some of the newbie programmers who don't yet know how to deal with this situation will learn about all this stuff they can do, and weren't aware of or didn't know how to take advantage of, and they'll be better equipped to deal with this situation themselves.

At all times, remember how it was at the beginning.

16
  • 25
    There's a difference between "can't debug" and "don't want to debug". I don't think the latter belong to the site. Commented Jan 17, 2014 at 7:17
  • 2
    @JanDvorak The question linked is not the "don't want to" group. Also, there's the "can't debug well enough to diagnose this problem" group. And unless someone says "I know I could debug this but I'd rather you did it for me", they're probably not in the "don't want to" group. Commented Jan 17, 2014 at 7:19
  • 5
    "Then all the newbie programmers who don't yet know how to deal with this situation" -- I don't think they'll find the question, and if they do, they'll just look at it, think "that's not the issue I'm facing" and close the question page. Commented Jan 17, 2014 at 7:19
  • 2
    @JanDvorak That's wild speculation. Please keep this grounded. Commented Jan 17, 2014 at 7:20
  • 10
    "How many newbies know how to debug?" I don't expect them to know how to debug. I expect them to know how to research and learn. A quick Google search for NullPointerException yields 1.7 million results, the first of which being a highly-rated SO post. The people asking questions like these are not putting forth the required effort IMHO. Commented Jan 17, 2014 at 8:06
  • 5
    "Then all the newbie programmers who don't yet know how to deal with this situation..." Disagree. It's a giant blob of code and logcat, with the word "wifi" in the title. I highly doubt that question would have gotten more than 40 views, if it weren't for this question. Commented Jan 17, 2014 at 8:10
  • 3
    @JonathonReinhart If there's a canon question that could be considered an answer, vote to close it as a duplicate of that one. Otherwise: answer the question. "Didn't Google well enough" could have been added as a close reason anytime in the last few years. It hasn't been. Commented Jan 17, 2014 at 8:17
  • Taking that speculation: 40 views is quite a few people taking a look at that question, and has plenty of room to consist of relatively new programmers learning something. Commented Jan 17, 2014 at 8:17
  • 18
    I see your point, but answering the question gets really old when it's the 5,000th time you do it for the same identical question. The "answer the question or dupe-vote or ignore it" faction doesn't know what it feels like to do that in high-traffic, low-quality tags.
    – Pekka
    Commented Jan 17, 2014 at 13:04
  • 11
    I don't disagree with the RPG site analogy completely, but there's a huge difference in scale. RPG has 6k questions total, while SO has 6k questions just for an "[android] force close" search, and literally a thousand times more questions overall. That does change things a bit. When SO was small, I believe they were a lot more permissive with questions as well.
    – Geobits
    Commented Jan 17, 2014 at 13:37
  • 5
    A super newbie asking on RPG is demonstrating a lot of effort, if only by being curious enough to ask. A copy/paste with no googling effort on SO is not the slightest bit comparable. Commented Jan 18, 2014 at 12:49
  • 6
    "we get super-newbie questions all the time with super-obvious (to us) answers" -- newbie questions might still be fine, if they are useful for future visitors. If not (like the example from the question) then they should not be answered, but should be closed: they have no place in libraries of high-quality questions and answers, focused on each community's area of expertise and they make searching for more generic questions much harder.
    – Arjan
    Commented Jan 18, 2014 at 13:12
  • 2
    I think your analogy is flawed. I would like to think that if someone posts the entire sequence of events from the start of his or her game on Role-playing Games (let's say more than a page worth), just to ask a simple question about what would happen at a specific moment in time (which is about as close an analogy I could come up with), that that question would be greatly inappropriate for that site and would end up closed fairly quickly. Sure, you might have a hard time correctly eliminating all the inapplicable variables to get a good question, but that doesn't change that that question is just bad Commented Jan 18, 2014 at 21:08
  • 1
    Oh, and (1) I don't think anyone's ever been 'forced' to do RPG homework, (2) nor can you have your RPG crash / throw an exception / not work - in the worst-case scenario, if you don't know something, you can just guess or make a judgement call and carry on (which is most certainly what a lazy person would do, assuming such a person would play an RPG), (3) nor is Role-playing Games as well-known as Stack Overflow (well, perhaps it is in RPG circles, I don't know) to be the first thing that pops into someone's head when they've got a bad question (which I presume is what happens on Stack Overflow). Commented Jan 18, 2014 at 21:16
  • @Dukeling If someone posts a huge question, either: (a) it really does need to be that long and we leave it, (b) it doesn't and we either ask them to edit it down or do it ourselves, or (c) we can't even tell what's going on and close it as unclear. Absolutely enormous questions rarely happen and fall under (c). You are right we don't get RPG homework, but RPG systems do break down and leave people wondering WTF to do, and that category is a lot of our questions. (Making the judgement call is not the lazy route though, and sometimes it's hard to know what judgement call to make) Commented Jan 19, 2014 at 1:28
24

Without some kind of "f$#k off, noob!" close-vote reason, SO is quickly going to become even more of a cesspool than it already is.

I think the focus here is being misplaced... Some of the best questions we have on Stack Overflow are effectively noob questions that a lot of people ask and need an answer to when they are first starting out with a new language:

What is the "-->" operator in C++?
How do I check if an element is hidden in jQuery?
How do JavaScript closures work?
How to disable text selection highlighting using CSS?
How to horizontally center a <div> in another <div>?

And so on...

The real problem, in my opinion, boils down to The Help Vampire Problem and the battle over the close reasons seems to have to do with these two parts specifically:

  • Is he obviously just waiting for some poor, well-intentioned person to do all his thinking for him?
  • Can you tell he really isn’t interested in having his question answered, so much as getting someone else to do his work?

The previous "minimal understanding" and "must include valid code to reproduce" close reasons were a way for users to hold back the invasion of help vampires by refusing to feed them and preventing others from feeding them as well.

Now we don't have these tools because many of us were overusing and misusing them. We're left with not answering and downvoting, which isn't quite as effective because while individually we can refuse to feed the vamps we can no longer prevent others from feeding them.

Personally I'm not too worried though... The system here seems to ebb and flow to try to balance the needs of the community. I wouldn't be at all surprised to see the return of these close reasons, or similar ones, in the next few months to a year, in response to what I'm guessing will be a rather large surge of poor questions.

8
  • Well written. I completely agree with the bulleted list you highlight being the core issue.
    – Travis J
    Commented Jan 18, 2014 at 19:00
  • 2
    so, your suggestion is to let the rep-whores feed the help vampires, then let the close vote reason makers to react to the flood of bad questions? Essentially, except the roles of people (community) and God (diamonds) have been reversed? Community lets rule makers diverge from the wishes of the community, then comes to save the day when the rule makers plead for forgiveness? I'm cool with that. I've always been on the side of God. Commented Jan 18, 2014 at 19:42
  • Oops, I accidentally a whole sentence. I meant, "essentially how Israelites treated their God in the biblical times, except...". Commented Jan 18, 2014 at 20:07
  • 3
    @JanDvorak Umm... you may be over thinking it a bit...
    – apaul
    Commented Jan 18, 2014 at 23:08
  • 4
    Except, closing is an especially poor tool for combating vampires: in order to get one question closed, it requires effort on the part of five community members - and the question can still be answered until closed! Maybe if you could close a question with 1 vote... But, that ship sailed a long time ago. Closing is not a super downvote - but a down-vote is a down-vote. I'd rather invest more of my time beefing up the q-ban system (which already blocks hundreds of questions every day) than waste more of your time trying to close a few.
    – Shog9
    Commented Jan 18, 2014 at 23:39
  • 3
    @Shog9 There are two things people can't deal with: Change and the way things are.
    – apaul
    Commented Jan 19, 2014 at 1:27
  • @Shog9 When you say beefing up the qban are you saying that the qban will be a little less forgiving in the future?
    – apaul
    Commented Jan 19, 2014 at 1:35
  • 2
    No, that would actually be counter-productive, @apaul34208. Also, it's already completely unforgiving, so there's very little room for improvement there unless that whole "stabbing people over the 'Net" thing gets implemented. This isn't really the time or place to discuss anything in detail, but... Think more fences, less ambulances.
    – Shog9
    Commented Jan 19, 2014 at 1:41
20

IMHO, Stack Overflow is not a debugging service.

If debugging questions are now fine on SO, many people would just post such a question here, because they "have other things to do" than to debug their stupid thing. (In fact, I hate it debugging my own code for several hours and find just one missing line at the end - why shouldn't I post it as question on SO?)

Such questions would attract help vampires and drain useful resources from other programmers.

Some people may argue that you can "just ignore the question", but that is not true.
We have limits on the topic for a reason. We are not yahoo answers.

Limits on the topic are necessary, and the community has already decided that they don't want "debug my code" questions. (and similar: "convert my code from perl to C#", "give me the code please" etc. We had a reason for that, "lack of minimal of understanding", but that is gone now)

So I propose a new off-topic reason that includes "RTFM, debug your code yourself, and learn to read stack traces" etc. The actual reason should read nicer.

2
  • 1
    Questions without a clearly-defined problem always have and always will be discouraged on Stack Overflow. If you're staring at a question that consists of nothing more than someone's code dump + plea for help and can't find an applicable close reason, you're over-thinking it.
    – Shog9
    Commented Jan 23, 2014 at 22:43
  • 3
    @Shog9 Well, a code dump + "please convert it to [insert language here]" is a clearly defined problem with a single answer: The new code behaves like the old one. And so are question about Null(Pointer|Reference)Exception. Get rid of them while preserving the functionality. Commented Jan 24, 2014 at 2:17
7

Let's say I am approaching the work I do on SO with a desire to make the site better for everyone. When I encounter one of these lazy, no-effort-expanded questions, my first instinct is to convey to the asker that they should try to improve their question by adding more context and information to it: For obvious reasons, this will benefit people who might try and answer the question, but it will also benefit the asker who is likely to be fairly new to the site and might not be intimately familiar with its standards. With the corresponding close reason being removed, however, conveying this message became harder for a number of reasons:

  • I can't simply add a short "What have you tried?" comment, because those aren't allowed anymore.
  • If I vote the question down, the asker either (1) won't care because they haven't earned any reputation to lose because of it, or (2) might feel offended and/or unwelcome (a situation I would like to avoid because, again, I want everybody to have a great experience using SO, and I want to encourage new users to learn the ropes and become productive members of the community). In any case, the asker won't automatically know what is wrong with their question just because they got a downvote.
  • I can't ignore the question because this runs contrary to my original goal of providing constructive feedback.
  • If I choose to flag it using one of the remaining close reasons (like "Too broad" or "Unclear what you're asking") that don't really capture the actual problem I'll most likely end up confusing the asker instead of providing them with useful pointers on what to improve. For instance, if they're unfamiliar with the site's standard for questions, they won't know about any discussions leading up to the new "unclear what you know == unclear what you're asking" interpretation.

As far as I can tell, the only option I am left with is to post a long-winded comment explaining in more detail what I think is wrong with the question, every single time.

3
  • The real trouble, though, is that technically questions where the asker didn't do much research (went straight to SO, did not pass Google, did not find thorough extant answers and solutions) aren't... wrong, they're just bad. Downvoting is exactly what you should do ("This question does not show any research effort). Commented Jan 21, 2014 at 0:59
  • The old (removed) close vote reason got abused, in part because you had to show what you'd tried - which is ultimately irrelevant to the question itself. SO users just want to see people who actually ask engaging, expert questions, and understandably so! Commented Jan 21, 2014 at 1:00
  • 2
    Doesn't have to be long-winded: "Where are you stuck? What didn't you understand when you searched?" is pretty short and to-the-point. Heck, asking what someone's tried is fine too if that actually matters - the problem was that folks were tossing this onto questions where "what was tried" was irrelevant to the answer or had already been asked! And don't be stingy with down-votes: if the question merits one, give it one.
    – Shog9
    Commented Jan 21, 2014 at 1:08
6

What could I possibly select as a close reason?

Nothing, because this type of question is no longer supposed to be closed. If you prefer not to answer "do my work for me" questions that show lack of effort or skill, then you do not need to answer them. Others will, and both the person asking and the people answering will benefit.

The only downside to this policy is that you may see a few more of these types of questions on your feed. Hopefully this doesn't bother you so much that you stop visiting Stack Overflow, but it appears the new policy will benefit new programmers more than the experts mentoring them. If it does turn out to be a problem, collect data on it and present your case as a feature request in a new question here.

5
  • 12
    I predict that it will bother some enough to stop visiting SO. Commented Jan 18, 2014 at 12:46
  • We have over 5,000 users with more than 10k reputation. Of course it will annoy a few of them enough to stop visiting. Will it push away more than a few percent, though?
    – Pollyanna
    Commented Jan 18, 2014 at 17:25
  • @Denis Opening the flood gates isn't a bother for me. What neccessarily follows after they're open is. Commented Jan 18, 2014 at 20:10
  • 4
    @AdamDavis: I dunno. I mean, sure, SO gets more traffic and it benefits (in the short term anyway) the parent company if it's idiot-friendly. But if this comes at the cost of driving the A-level users who are knowledgeable enough to answer the more interesting questions while being put off by the sewers of trash that SO subjects them to, it's simply not worth it. And by sewers, I'm being very polite. It's more like a cesspool. Commented Jan 19, 2014 at 0:50
  • I don't see any benefit from being more idiot-friendly, @Denis. To anyone. But if anyone seriously thinks this is about being nicer to idiots, I sincerely hope they're feeling the love.
    – Shog9
    Commented Jan 19, 2014 at 1:00
4

Generally, if these questions should be closed at all, they should be closed as duplicates of the appropriate reference question.

For example, your example question (at least before it started morphing into something unrelated) could've been closed as a duplicate of What is a NullPointerException, and how do I fix it?. You can often find these reference question by searching either SO or Google; for example, the reference question above is one of the top results for nullpointerexception on Google.

When you vote to close a question as duplicate, the SE software automatically posts a comment linking to the target question. In cases like this, where the OP might not understand why their problem is equivalent to the more general one, it may be helpful to edit the comment and add a brief explanation, replacing the generic:

"possible duplicate of What is a NullPointerException, and how do I fix it?"

with e.g.:

"You're getting a NullPointerException because you're trying to call a method on a variable you haven't initialized. See What is a NullPointerException, and how do I fix it? for more information."


Actually, the specific question you linked to could also almost qualify as a "simple typographical error" — accidentally deleting an entire line from the code snippet you're copying might not be the first thing you'd think of when you hear "typographical error", but IMO it qualifies (and, alas, is more common than you might think). Or you could always use a more specific custom close reason:

"This question is off topic because it was caused by a simple copy-paste error. While similar questions may be on-topic here, this one was resolved in a manner unlikely to help future readers."

(Of course, as with "simple typo", you should only use a close reason like this after pointing out the mistake to the OP.)

3
  • 1
    This is the correct solution IMO (well, either of them, but I prefer the one-question-to-rule-them-all approach). "possible duplicate of What is a Null Pointer Exception?" because I don't feel like saying any more. Feel free to post your comment and flag mine as obsolete (which would likely get declined if you don't make it a custom flag, which may get declined because you're using a custom flag instead of a standard one ... umm ... yeah, I don't know - I'll delete mine if you post a comment). Commented Jan 18, 2014 at 20:29
  • 7
    I agree, and do close as duplicate, if one exists. The problem is that too often, users post a giant logcat, and a snippet of unrelated code and say "HALP ME PLZ DUE TAMARROW". And if it's not a NullPointerException, but still a n00b exception, there is no duplicate. That's the scenario I'm most concerned with ATM. Commented Jan 20, 2014 at 22:57
  • @JonathonReinhart Any scenario where the user doesn't explain the code can be closed as unclear. General note - we could always try to create a "How do I debug Java code?" master question. Or, unless someone can convince me that these questions have sufficient lasting value that won't be better obtained with a generic post on the matter, I think we really should bring something like "too localized" back (which we could perhaps only allow on posts older than 60 days or something). Commented Jan 21, 2014 at 11:09

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