すのふら

すのふら

日々の備忘録

質問下手を直すために意識していること

プログラマは説明を枝葉からし始めるので、何言ってるのか分からないという話。

www.bunkei-programmer.net

記載内容に概ね同意。
IT業界の末端で仕事しているので、これを読んで思ったことをメモしておく。


■そもそもなぜこういうことがおきてしまうのか。

自分もよくやりがちなんだけど、ソースコードの話から急に話し始めてしまうのって、結局「自分がやっている作業」を話しているだけなんだよなと。
そして自分がやっている作業を相手が認識している可能性が低いのに話し始めてしまうのって以下の3パターンなんじゃないか。

  1. 自分がやっている作業に集中しすぎて周りが見えてない。
  2. 無意識で俺のやっていることは相手も当然認識しているはずと思ってしまう。
  3. そもそもその領域の知識に乏しく、説明したくても説明できない。

3については知らない領域に突然アサインされたりするので、自分で何とかして知識取り込んでいくしかないのかなって思うけど、
1、2については意識したら矯正できることだと思う。

つまりは何というか、勢いでこっちくんなということなんだと思う。


■なんとかしたい

俺もこういう現象に陥ってしまいがちで、つまりどういうこと? とかいわれがち。
だけど仕事していると自分の知らないことがあって、誰かに何かを訊ねなければならないときが絶対ある。

誰かに何かを聞くときの気持ちとして俺は、自分も知っていることは相手も知っている気持ちは完全に捨てて、周りは自分の発言の数パーセント程度しか汲み取らないと思うようにしている。
そう思えば、相手に判断を委ねることなく話すことができる(ような気がしている)。

何かを質問するにも、ある程度武器を持っていかなければいけない。
丸腰でいくと、「ちょっとよく分からない」「こうなんじゃね?(曖昧な回答)」であしらわれて、結局また調べて質問するという互いに時間を無駄にしてしまうわけで。


■俺はこうしてる

俺は何かを質問したいときに、必ず質問したい内容をメモしてる。
内容は主に以下の4つ。

  • 「今何をしていて」
  • 「どういうことが起きていて」
  • 「何を聞かなきゃいけなくて」
  • 「どこまで知っているのか」

さらに「何を聞かなきゃいけなくて」はクローズド・クエスチョンになるように心がけている。

なぜクローズド・クエスチョンなのかというと、「何を聞かなきゃいけなくて」はこの質問のゴールだから。
「どうしたらいいですか?」みたいなオープン・クエスチョンだと、当然相手は反応に窮するし、何が分からないのか確認するのに「どこがわからないの?」みたいなやり取りになってしまい互いの時間を無駄にしてしまう。
クローズド・クエスチョンであれば、例えNOの場合でも「多分こうじゃね」な正解に近いアドバイスが聞けるはず。
「どうしたらいいですか?」は白旗上げすぎで、マイナスの印象を与えてしまうと思う。俺ならマイナスの印象を持つ。何も考えてきてないから。

メモを一旦とることの利点は、落ち着けるというところ。
コーディングしてて「分からない、だから質問しよう」のマインドだと、勢いだけついてしまって人間でググる感覚になってしまう。
その勢いを一旦落として、どうしたら自分の言っていること分かってくれるだろうと考えてることで、周りが見えるようになるんだと思う。

このぐらいざっくりでも、俺が質問される立場なら十分かなと

かわせさん、教えて欲しいんですけど、今お時間いいですか?
今、障害の○○やっていて、
確認したら××.csの△△のメソッドの□□を判定するif文でシステムエラーになっています。
デバッグでifの条件の値を確認したんですけど、正しく値入っているように見えるんです。
一緒に見てもらってもいいですか?

これ聞いて俺は

  • どうやら何か詰まっていて解決の糸口がつかめないらしい。
  • どっかのクラスのどっかのメソッドのif文がおかしいみたい。
  • 障害の○○やってるのね。

そう思って、障害内容もう一回確認しようかとか、デバッグで動き見てみようかみたいに次のアクションが取れる。

次のアクションを取ってもらえるような質問を意識するということが大切なのかも。


■まとめ

質問する前は自分がどのような状況なのかを整理すべき。

質問内容を整理したときに今自分がした質問を誰かから受けたとき、自分はどう思うかなんじゃないかと。
イミフなら、なぜイミフだったのか考えて直していけばいい。

分からないのはしょうがないので、一旦落ち着いてから質問しに行けばいいと思う。