Every now and then, on channels I hang on IRC, someone pops in and says something in the lines of,
Foobar123: Any XNA experts around?
This is bad form, for several reasons. What the person is actually asking here is,
Foobar123: Any XNA experts around who are willing to commit into looking into my problem, whatever that may turn out to be, even if it's not actually related to XNA or if someone who doesn't know antyhing about XNA could actually answer my question?
There are plenty of reasons why people who DO have the knowledge would not admit to it. By asking, you're asking for more than what you think you're asking.
You're asking people to take responsibility. You're questioning people's confidence in their abilities. You're also unnecessarily walling other people out. I often answer questions related to languages or libraries I have never used, because the answers are (in a programmer kind of way) common sense.
Alternatively, it can be seen as..
Foobar123: I have a question about XNA but I'm too lazy to actually formalize it in words unless there's someone on the channel who might be able to answer it.
..which is just lazy. If you're not willing to do the work to solve your problem, why should we?
The solution is not to ask to ask, but just to ask. Someone who is idling on the channel and only every now and then glances what's going on is unlikely to answer to your "asking to ask" question, but your actual problem description may pique their interest and get them to answer.
So, to repeat:
Apologies for anyone using "Foobar123" as a nick. And I have no experience in XNA, just used as an example.
Comments are appreciated.