I answer questions on Stack Overflow a lot, and also in the #python IRC channel. There's a common dynamic in both environments, I'll describe it by giving aliases to three participants:

  1. BaffledNewb asks a simple question, but the question itself strongly hints at a misunderstanding of his problem, or of the best possible solution.
  2. HelpfulNewb answers the question literally, giving BaffledNewb what amounts to bad advice, and missing an opportunity to help him understand the big picture.
  3. GrizzledExpert chides HelpfulNewb for answering the question "wrong," and tries hard to get to the bottom of BaffledNewb's real problem, or makes an assumption about what he really wants, and gives that answer instead.

At this point, the conversation can go a few different ways, sometimes all at once. Popular next steps are:

  1. HelpfulNewb insists he was merely answering the question, and wonders out loud why GrizzledExpert has to be so obnoxious.
  2. BaffledNewb is outraged that his motives would be questioned, gripes about not being able to get a simple answer, and wonders out loud why GrizzledExpert has to be so obnoxious.
  3. HelpfulNewb points out that of course his answer is usually a bad idea, but perhaps BaffledNewb has unusual, valid, but undisclosed circumstances that makes it a reasonable answer.
  4. HelpfulNewb claims that he never said his answer was a good idea, just a technically correct answer.

All this came to mind again a few days ago when three questions and answers fitting this description appeared on Stack Overflow in quick succession:

There's really no excuse for giving simplisitic, bad, but technically correct answers to mis-guided questions. I understand the desire to give an answer, to be the helpful knowledgable one. And Stack Overflow in particular inadvertently rewards speed.

But answers like these only cause damage. At the very least, wrap them well with a thick layer of bubble-wrap in the form of cautions, caveats, pointers to likely better ways to solve the problem, and so on.

If the questioner really had one of the unusual circumstances that meant they needed a literal answer to their oddball question, they tend to mention it up front. In my experience, doubting questions like these pays off much more often than it turns out to have falsely accused a curious expert of being a newb, though of course that sometimes happens.

The #python IRC channel on freenode has a bit of a reputation for being full of grizzled experts who can't answer any question no matter how straightforward without grilling the questioner about their motives and needs. I myself have argued for less of this, and being more trusting of the questioner. (Actually, as I'm editing this, I just answered a question in #python in a way that other grizzleds didn't like!)

But if you do this kind of answering long enough, you will learn to recognize the misguided question, and push back on it. I don't feel at all bad about downvoting the answers and calling people on it.

A common failing among GrizzledExperts, though, is being too blunt. When a beginner asks a question, it's almost never useful for them to get this in response:

Why?

That's too short, too blunt, and is interpreted (perhaps correctly!) as, "you are wrong," setting up a conflict right from the start. More words always help:

That's an interesting question, it sounds like having more context would help us answer it well. Can you tell us more about what you are building?

Helping intelligent but lost beginners is not easy, it requires a healthy mix of technical know-how and interpersonal skills. The GrizzledExpert definitely has the first, but often not enough of the second.

My advice:

  • Use more words to fully express what you mean to say.
  • Resist the urge to give the simple but dangerous answer.
  • If the forum allows it, ask questions to get a deeper understanding of the questioner's need.
  • Don't be shy about calling a bad answer bad.
tagged: , , » 16 reactions

Comments

[gravatar]
Graham Dumpleton 1:12 PM on 20 Jul 2012

My growing discontentment with Stack Overflow is around the fact that it seems that those in the HelpfulNewb category seem to be quicky gaining enough reputation to start voting and closing/deleting questions. A number of times I have seen questions, which although they could have been worded better (poster may not have had English as first language), made sense to me, but because it was outside the scope of what HelpfulNewb knew, they down voted them and in some cases moderators then subseuqently closed them. Plain stupid that that you end up with a question that got closed as confusing where a knowledgable person was able to provide the exact answer to what OP was asking and OP even acknowledged it answered the question. Almost need a down vote system on the activities of a person down voting a question to highlight that down voter was the one who was ignorant and not the OP.

[gravatar]
Katie 2:48 PM on 20 Jul 2012

I love this post so much! I wish that the grizzled ones would realize that maybe, just maybe, they're not the best teachers, and not beat up on the new kids when they show up.

[gravatar]
guest 6:00 PM on 20 Jul 2012

What I've had a problem with is an asked question with an answer that fixes problem using wrong method or with negative consequences that is marked as correct while the 'right' answer is glossed over, or, sometimes even downvoted.

The other issue I ran into were the 'quickest gun in the west' answerers. They would answer first with a vague answer, then, slowly paraphrase other answers through edits on their answer, later earning the correct answer bounty and then the other answers appear to be duplicates of a portion of the 'correct' answer. This gets worse when someone notices an answer gaining upvotes and converts it to a community wiki to prevent someone from gaining karma.

I uncovered two voting rings - one involving some of the moderators and asked that they take action or delete my account. When my account was deleted, I stopped participating.

The neverending quest for karma and social validation leads people to do whatever it takes, even if it isn't in the overall best interest of the site.

[gravatar]
Chris2048 6:15 PM on 20 Jul 2012

I've often asked questions that is the result of a long line of reasoning, and the irc pythonista insists on knowing every detail before even attempting to answer. Sometimes I just want the straight honest answer, and leave the problem solving to me. Sometime I'm suspicious that this behaviour is a) the result of the helper not knowing the answer (or not caring too) and just justifying why they don't as because it's not needed, or b) ensuring that no one is allowed any help in doing things the *wrong* way.

[gravatar]
Russell Borogove 6:25 PM on 20 Jul 2012

Yesterday I was in one of these. The bad answers weren't "use a flamethrower"-bad, but when I -1'd them with explanation, one of the "HelpfulNewbs" (with over 10K rep, I might add) went ballistic and gave me downvotes on 8 of my answers on unrelated questions, not to mention more than a few unkind words as regard to my character. Good times.

[gravatar]
Moab 6:41 PM on 20 Jul 2012

I post on SuperUser, we can edit other's answers to improve them, we can even edit questions to clarify them if we have enough reps. If this is possible on SO, why not do that instead of growling at bad answers or questions. Most people misunderstand what these sites are really about, most think they are forums which they are not, more like a wiki that can be edited and improved, I agree they need to stop rewarding fast answers, some even accept a poor answer within hours before anyone else has input. The sites need some changes. As far as rude comments they can be reported and are usually removed, retaliatory down votes are just jerks being weenies, not much you can do.

[gravatar]
Tobias 6:52 PM on 20 Jul 2012

I don't like "tell us more" as a positive example. It suggests that the questioner just keep talking because he wouldn't know what was important anyway. Well, if the experts know, maybe they should use specific prompts! The bullet points however are good.

[gravatar]
Ned Batchelder 7:39 PM on 20 Jul 2012

@guest, @Russell: it sounds like you have indeed seen some very bad behavior. I haven't had that kind of retribution, but in retrospect I wonder why not! I guess I've just been lucky.

@Chris2048: you sound like one of the experts who gets lumped in with the newbs. I'm sorry about that. Perhaps understanding the answerers' mindsets will help you endure that line of questioning better in the future. It isn't personal. IRC is a very difficult medium. As I mentioned in the post, I think the tradeoff is a good one, I'm sorry you have to wait for a quick answer because of it. But when it comes to helping people do things "the wrong way," yes, the experts have opinions about the right way to do things, and they have the right to express those opinions.

@Moab: questions and answers can be edited on Stack Overflow, but there's only so much you can do to correct a bad answer before you are simply rewriting the entire thing. I won't edit a post so that it is no longer the original author's words, for example.

@Tobias: "tell us more" is not a stalling tactic. If you think it is, it sounds like you don't trust the "experts" in the channel in the first place. The people I've seen answering questions in #python genuinely want to help people write better software. Please understand if they don't want to be treated like a google-replacement.

[gravatar]
Calvin Spealman 7:52 PM on 20 Jul 2012

I am one of the grizzled "why?" askers, but I have to agree with Ned (never a surprise). It takes a lot of energy to stick with the constancy of the repeat questions and difficulties of helping newcomers, and we tend to release some steam or make it easier on ourselves via said grizzleness. However, for the cause we care about, it is worth the effort to be a little nicer about it.

[gravatar]
Chris Allen-Poole 7:53 PM on 20 Jul 2012

I have to say, the overall quality really has started diminishing. I think this largely has to do with the fact that most of the truly newby questions have been addressed meaning that the number of duplicate questions is getting bigger.

@Graham There is nothing preventing the grizzled from voting to re-open the question or, if the question is irredeemable, creating a new question based on the original and answering the new question. They can then link back to the original question and probably get up-votes both for the new question and its answer.

@guest Quickest gun gets even better if you have high rep. You have the ability to answer, delete the answer, edit it, and then re-submit it. Since the "created date" does not change, you can have the "earliest answer" and still do the borgification process. (There are legit use cases: I did this once when an answer was getting a lot of down-votes pretty quickly. After an hour of work benchmarking my answer against the others, I undeleted and appended the benchmarks).

[gravatar]
Russell Borogove 8:07 PM on 20 Jul 2012

@guest, sometimes I have a detailed answer in mind, but it's frustrating to get partway through writing it, see the "3 new answers" popup, and see a bunch of other people's half-assed answers getting upvotes, so I will frequently write a "minimum viable answer", submit it, then immediately re-edit it to go into more detail. I may incorporate good points from other answers in the re-edit, but more often the added detail is coming from within. My primary goal on SO is to get a good solid answer in front of people; I don't care all that much if it's mine or someone else's.

[gravatar]
Shawn Wheatley 8:17 AM on 21 Jul 2012

Ned, this is probably a point to raise on meta.SO in order for the community moderators to be made aware of and (hopefully) actively do something about.

[gravatar]
voo 10:14 AM on 21 Jul 2012

@Shawn Wheatley: I think most "grizzled experts" are quite aware of this problem anyhow - at least I can remember lots of posts about this over the last ten years and as ned demonstrates SO is a great place to survey the whole thing in action.
Also there's a post on meta, where the problem is titled "XY problem" or something; pretty much exactly about this.

On another note: I can't agree with people that say they get thrown into the "newby who doesn't know better" basket when asking for non-obvious answers. Generally I'll explain the problem I have and why the simple, obvious solutions won't work in this case (who knows I could be wrong, has happened ;) ).

[gravatar]
Leonardo Herrera 10:53 PM on 21 Jul 2012

I actually love answering this kind of questions. But I've got scalded over a clarification request by the original poster, and even got a downvote (I don't know if the OP was the one who downvote, thought.) Not fun when it happens (thought I got my answer accepted after a while.)

[gravatar]
Eliot 6:05 PM on 3 Aug 2012

By definition HelpfulNewb cannot know that their naive answer is 'bad advice'(?)
Perhaps the way to treat it is as if they said "Isn't [bad advice] the obvious answer?"

GrizzledExpert: "While it may seem that [bad advice] is a good idea, it is bad because [...], here is [good advice]"

[gravatar]
Chris Wilson 5:39 PM on 6 May 2013

I have seen quite a few SO answers telling the OP that they're wrong to even ask the question. For example, changing fonts in LaTeX.

However brilliant the designers of LaTeX are, there are perfectly good reasons why one might want to change the fonts that it uses, such as to fit in with a corporate style guide. So this is not exactly a case like Ned's, where a direct answer would be "wrong". There are some cases where it would be, and some where it's entirely reasonable.

This GrizzledExpert's answer is highly unhelpful, negative, and offputting to BaffledNewb. Its only saving grace is that he explains the reasons why not to change the fonts, thus allowing the OP to decide for themselves whether to take or ignore the advice.

I agree that a helpful answer that included these caveats would be better than one that didn't. So perhaps it would make sense for SO to allow more than one "correct" answer to a question, splitting the karma.

Add a comment:

name
email
Ignore this:
not displayed and no spam.
Leave this empty:
www
not searched.
 
Name and either email or www are required.
Don't put anything here:
Leave this empty:
URLs auto-link and some tags are allowed: <a><b><i><p><br><pre>.