「質問していいですか」と聞かないで

私がよく見ているオンラインのチャットルームでは,ときどき誰かが入ってきてこのようなことを言います。

Hogehoge123:

Java 分かる人いますか?

これはいろいろな意味で良くない聞き方です。 この質問は,実際にはこんなことを言っているのです。

Hogehoge123:

Java 分かる人で,もしかしたら実際のところ Java と関係ないかもしれないし,Java を全然知らない人でも答えられるかもしれない私の問題を調べるのに専念するつもりがある人はいますか?

本当に知識のある人々は,このような質問には答えようとしません。 この質問は,あなたが自分で思っているよりはるかに多くのことを要求しているのです。

あなたは他の人に責任を取るように要求しています。 他の人の能力が信頼のおけるものかどうか疑問視しています。 また,他の人を不必要に排除していることにもなります。 私は一度も使ったことがない言語やライブラリに関する質問によく回答しますが,これはその答えが(プログラマ的には)常識的なものだからです。

あるいは,その質問はこのように見られてしまうかもしれません。

Hogehoge123:

私には Java に関する質問がありますが,答えられそうな人がいなそうなら面倒くさいのでちゃんと言葉にしたくないです

これはただ怠け者なだけです。 あなたが自分の問題を解決するために努力したくないのなら,なぜ私たちが努力しなくてはいけないのですか?

解決方法は,質問してもいいか聞く代わりに,ただ質問をすることです。 そのチャンネルを開いておいて時々ちらっと様子を見るだけの人は,あなたの「質問してもいいですか」の質問にはなかなか答えてくれませんが,あなたが実際の問題の説明をすれば興味を持って答えてくれるかもしれません。

つまり,まとめると, 「Java 分かる人いますか?」 と聞くのではなく, 「(問題)を Java で解決するにはどうすればいいですか? 関係しそうなことは(関連情報)です」 のように聞いてください。

似たような問題には,The XY ProblemNo Hello があります。 How do I ask a good question? も読んでみるといいでしょう。 時間があれば How To Ask Questions The Smart Way もどうぞ。