mikeash.com: just this guy, you know?

Posted at 2006-07-18 00:00 | RSS feed (Full text feed) | Blog Index
Next article: Lesson of the Day
Previous article: Using Evil for Good
Tags: advice irc rant
Getting Answers
by Mike Ash  

This is probably not so useful to my audience directly, but maybe you can forward it on to people who would find it helpful. I've written my own version of How To Ask Questions, but without gravely insulting anybody who reads it. People who ask questions don't really care about fitting in or conforming or following the rules, they just want answers. This guide tells you how to get answers with a minimum of fuss. And so I present Getting Answers. Any comments you might have on it are most welcome.

Did you enjoy this article? I'm selling a whole book full of them. It's available for iBooks and Kindle, plus a direct download in PDF and ePub format. It's also available in paper for the old-fashioned. Click here for more information.

Comments:

foobaz at 2006-07-18 20:48:00:
The world needs this. ESR is well-intentioned, but needs some social help himself.

Eric Meyer at 2006-07-20 21:59:00:
An excellent article! Mind if I link to it from http://css-discuss.org/policies.html ?

mikeash at 2006-07-21 22:35:00:
Eric, and anybody else who wants, please do feel free to link. Unless my site dies completely the link should be good forever, and I’ve already had several dozen sites linking to it in various ways. The more people who know about it, the more chance it has to help.

Rob at 2006-07-23 15:56:00:
Hi, I’m a beginning Mac programmer (from the Unix world) – can you recommend a (non-IRC) forum for questions? Thanks!

Ivan Minic at 2006-07-26 11:27:00:
I’m considering translating this to Serbian for my forum. I will, of course leave link to original page and author, but if there is any problem or reason you might not want to allow that, please email me ;)

mikeash at 2006-07-28 02:59:00:
Ivan, that’s no problem at all! Proper attribution is all I ask. Translations are most welcome. Thanks for asking in any case.

Matthew at 2006-08-02 22:24:00:
I was wondering what mac programming channels you frequent. It seems #macdev on freenode is popular. Are there others you recommend for a beginning cocoa programmer?

mikeash at 2006-08-03 21:00:00:
#macdev is the only one I visit or even know much about. It can be a good place for a beginner IF you’re willing to follow the advice in the article closely. There’s a lot of smart people in there but not much tolerance for games or people who don’t do their research. Other than that, I really have no idea.

marj at 2006-10-16 10:42:00:
the article was great for newbies like me..
its leads to the idea of being good samaritan..
and of being polite..
:)

DG at 2007-10-04 23:29:00:
“1. Explain what doesn’t work

By stating exactly what is going wrong right away,”

Often times easier said than done…

” Question Guy got a useful answer from Answer Man instantly.”

Hmmm, interesting, I don’t find his answer very useful.

This may be optimal from the A-giver’s perspective, but in my experience isn’t necessarily so from the Q-giver’s perspective – often times, I find, the iterative give-and-take process is fundamental to figuring out just “what is wrong” from the Q-giver’s perspective.

“2. Provide everything up-front”

Upon being requested to do so by the person who referred me to this blog, I posted “everything” to the list on which I was asking the question; five minutes later I get an email back from the quarantine program stating my email awaits moderator approval because it’s too big – so much for “Getting Answers” speeding up the response time.

“3. Post your code ”

What if it’s proprietary?

“Asking for code takes time and effort”

You’re kidding, right?

Let’s see, I got over a hundred multiply defined symbol (linker) errors – am I supposed to include the code definitions for all of ‘em?

“9. Treat the list like people ”

I will if they will

Generally, despite all the praise here, I think this is rather one-sided and self-righteous. My attitude is, if you can’t provide help patiently, tolerantly, empathetically, amicably, and politely, please don’t bother.

mikeash at 2007-10-05 01:54:00:
“Often times easier said than done…” – Very true, but it’s something to try for.

“Hmmm, interesting, I don’t find his answer very useful.” – I would be very interested to know what answer you would find useful for that question. Just for the record, that simulated conversation was pulled from a real one, and once we got to the point where he actually stated his problem, that answer was provided and he did indeed find it very helpful.

“Upon being requested to do so by the person who referred me to this blog, I posted ‘everything’ to the list on which I was asking the question; five minutes later I get an email back from the quarantine program stating my email awaits moderator approval because it’s too big – so much for ‘Getting Answers’ speeding up the response time.” – If your code was of reasonable size then that’s the list operator being dumb, hardly my fault. If your code was huge (say, over ~500 lines) then it should probably have been posted to a web site somewhere for best results. Just like you don’t flood-paste 20 lines of code in IRC, it’s impolite to shove a gigantic amount of code into a mailing list post. That doesn’t mean it’s impossible to show your code.

“What if it’s proprietary?” – Then you should probably be paying someone instead of trying to get free help. The least you can do is state up front that the code is proprietary and you are not able to show it, this way people can avoid wasting their time trying to get useful information out of you.

“You’re kidding, right?” – No, why would you think that?

“Let’s see, I got over a hundred multiply defined symbol (linker) errors – am I supposed to include the code definitions for all of ‘em?” You should post the code when you have questions about your code. Linker errors are generally build questions. The equivalent here would be to actually post the exact text of your errors. Far too often people just summarize the errors, hiding critical information like the fact that they’re trying to use C++ linkage for C symbols.

“My attitude is, if you can’t provide help patiently, tolerantly, empathetically, amicably, and politely, please don’t bother.” – Don’t worry, I’m sure I wouldn’t bother providing help to someone with that attitude, so you should have nothing to fear. Seriously, we’re talking about free help. The helpee frequently gets valuable information from the exchange and sometimes saves many hours or days of effort, while the helper just gets warm fuzzies, problem-solving exercise, and community karma. If you can’t tolerate a bit of attitude from your free help then you might consider forking over cash instead.

viraj at 2008-01-02 13:07:28:
I have got lotus notes as domain in ibm and at same time i got offer for java domain in other company.So plz tell what to do in such situation should i go for ibm or to other company???

sadia at 2008-02-14 01:58:03:
hi,
i am getting the following error while running trac. could somebody please help me out



Traceback (most recent call last):
  File "/usr/lib/python2.4/site-packages/trac/web/main.py", line 406, in dispatch_request
    dispatcher.dispatch(req)
  File "/usr/lib/python2.4/site-packages/trac/web/main.py", line 191, in dispatch
    chosen_handler = self._pre_process_request(req, chosen_handler)
  File "/usr/lib/python2.4/site-packages/trac/web/main.py", line 263, in _pre_process_request
    chosen_handler = f.pre_process_request(req, chosen_handler)
  File "/usr/lib/python2.4/site-packages/trac/versioncontrol/api.py", line 73, in pre_process_request
    self.get_repository(req.authname).sync()
  File "/usr/lib/python2.4/site-packages/trac/versioncontrol/api.py", line 104, in get_repository
    repos = self._connector.get_repository(rtype, rdir, authname)
  File "/usr/lib/python2.4/site-packages/trac/versioncontrol/svn_fs.py", line 234, in get_repository
    repos = SubversionRepository(dir, None, self.log)
  File "/usr/lib/python2.4/site-packages/trac/versioncontrol/svn_fs.py", line 264, in __init__
    raise TracError("%s does not appear to be a Subversion repository." \
TracError: /etc/project1 does not appear to be a Subversion repository.

Mega G at 2009-10-21 04:01:42:
Generally, despite all the praise here, I think this is rather one-sided and self-righteous. My attitude is, if you can’t provide help patiently, tolerantly, empathetically, amicably, and politely, please don’t bother.


I think DG is spot on here. Mike, you're obviously a smart guy.. but I've dealt with you on the lists and you definitely are guilty of your fair share of doling out abuse in this condescending way that's truly amazing. Even when your rules that *you* are arbitrarily defining are being followed. I mean really.. note this comment that you said above:

Don’t worry, I’m sure I wouldn’t bother providing help to someone with that attitude, so you should have nothing to fear. Seriously, we’re talking about free help.


No one holds a gun to your head forcing you to interact or provide assistance to anyone who asks a question. Nor are you a god and are we required to grovel or make sacrifice or - more directly - kiss your backside. I've had a lot of people say you're actually a nice guy.. the thing is.. I haven't actually *seen* you be a nice guy. Polite? Sure.. self-righteous.. definitely.

I hope you're independently wealthy and just do this as a hobby because you can't actually *need* the work given your interaction style with the public at large.

mikeash at 2009-10-21 04:14:17:
Mega G: I wouldn't worry about my help style anymore. I have basically given up helping people on IRC and mailing lists, pretty much because of guys like you.

Oh, and I have a fantastic job doing full-time Mac/Cocoa development and get along great with all my co-workers.

Mega G at 2009-10-21 05:02:45:
I wouldn't worry about my help style anymore. I have basically given up helping people on IRC and mailing lists, pretty much because of guys like you.


Then you have an obviously thin skin. And it's not "guys like me". Because I learned to ignore "guys like you" a long time ago. You think you're doing the world a favor just by being here.. Whaaatever...

Oh, and I have a fantastic job doing full-time Mac/Cocoa development and get along great with all my co-workers.


Yes I'm sure they're all sterling examples of the Mac community just like you....

mikeash at 2009-10-21 05:23:08:
So you tell me to stop helping people, but when I say that I stopped, you say I have a thin skin? I'm supposed to be nice, but I'm not supposed to actually listen to people? Obviously I simply can't win with you. If you're not satisfied with what I do even when I do what you say you want me to do, then you're obviously just trolling and trying to feel better about yourself by taking someone else down. Take it elsewhere. Nobody reading these comments is going to be impressed by your BS.

Rob Silver at 2013-02-27 19:19:00:
What is going on with these question / response bans.

I tried to to be mindful and frankly I can not even go back to what I did wrong. So how can I rectify this. I would like my rights re-instated.

Its not like I spammed the site or anything. I asked a few questions. I had no idea I broke any rules. No second chances???

Even if you did - People make mistakes you know - They mistype they make mistakes especially when we work 20 hours a day!

If there is a way to to fix this I would appreciate the chance to do so.

Please advise! Forever is too long and takes too much diskspace frankly!

Because my posts are both thoughtful and researched and provide some useful facts to boot. No idea why I was banned.

mikeash at 2013-03-03 20:10:52:
Rob Silver: I have no idea what you're talking about. I don't know who you are, I don't know what "posts" you're talking about, or what you're supposedly "banned" from.

krishnan at 2013-10-08 06:03:17:
mikeash,

Thanks for these guidelines.

markliu at 2016-05-09 06:07:35:
Hello,
         I just want to install the pacemaker & corosync in my server , the system is Centos5.9. but it failed.
         I try adding the repo resource like this:
wget -O /etc/yum.repos.d/pacemaker.repo http://clusterlabs.org/rpm-next/epel-5/clusterlabs.repo

          But the webpage can not be found.how can i install the software in centos5.x ? please help me. thank you!​


Comments RSS feed for this page

Add your thoughts, post a comment:

Spam and off-topic posts will be deleted without notice. Culprits may be publicly humiliated at my sole discretion.

Name:
Web site:
Comment:
Formatting: <i> <b> <blockquote> <code>. URLs are automatically hyperlinked.
Hosted at DigitalOcean.