一般記事

新人プログラマよ,困ったときはこう聞け!~エンジニア特化型Q&Aサイト「teratail」のトップランカーたちが語る,確実な力を付けるための“質問力”

この記事を読むのに必要な時間:およそ 6 分

現場に出ても役に立つ,質問をするときの心得とは?

編集部:ここからはteratail開発チームのお2人も交えつつ,⁠質問する」ということについて話をしていきたいと思います。

勉強方法として,⁠とにかく聞く」というのが出てきましたが,うまい聞き方や,質問の仕方のコツなどもあるかと思います。例えばteratailで回答する場合だと,答えやすい,あるいは答えたくなるような質問はどのようなものなのでしょうか? また,質問方法についてアドバイスがあればお願いします。

argius:重要なのは質問のタイトルとタグですね。その2つで,質問の内容がだいたい見当がつきそうなものは答えやすい。とくにタイトルで要約を語ってくれる質問が一番いいですね。

ryunix:あと,質問する前に,自分がどこまでわかっていて,どこからがわからないのかを整理して質問するのは重要かなって思います。そこを自分でもはっきりわかっていない状態で質問してしまうと,回答する側としても,どこから手を付けていいのかわからないので,結局,逆に回答が得られないことになってしまうと思うんです。まぁ多分そこが難しいところだとは思っているんですけど。

argius:確かに(笑⁠⁠。整理とか説明する能力ってなかなか難しいですよね。でもやっぱり,技術的な能力はさておき,最低限の質問能力は鍛えてほしい。それは仕事にもつながることだと思うし,質問する人に頑張ってほしいところです。

ShoheiTai:知識を深めるって意味では,質問する前に自分でできるだけ調べることをお勧めします。結局これも整理するということにつながるのですが,いろいろ調べてみて自分なりにまとめる。単純に用語がわからないのか,ソースコードのバグなのか,しっかり自分の言葉でまとめるっていうのは勉強にもなるし,ちゃんと整理できれば回答も集まりやすいと思います。あとは開発環境をできるだけ詳しく書いてほしいです。

写真6 Software Design 池本公平編集長

写真6 Software Design 池本公平編集長

編集部:できる限り自分で調べて,問題を整理して,自分の言葉でまとめて要点を質問するといった感じですね。では逆に,回答するときに工夫していることはありますか?

ryunix:コード系の質問だったら,1回手元で動作確認したものを載せます。用語系や考え方を問うものなら,参考になるページやこっちが検索した結果を貼って,こんなふうに見てくださいとか。

argius:内容によりますが,私もコードであれば実際に動かしてみます。動作確認はできるだけしていますし,そのための最低限の環境は作ってあります。コードの場合は誤字の可能性も多いですから,校正ツールとして動かしてみるわけです。用語の場合は検索して,URLを貼り付けたりします。あとは客観的な情報として引用したりしますが,なるべく対話になるように気を付けています。

編集部:なるほど。皆さん動作確認までしっかりされているんですね。優しい(笑⁠⁠。

ShoheiTai:私が答えるのはPHPフロントエンド系が多いのですが,やはりお二人と同じように自分のところで動かしてみます。JavaScriptならば実装してみます。それらをベースに自分の言葉でポイントやできることを答えています。引用する場合も,なるべく自分の言葉でかみ砕いて書くようにしています。

質問は,する側にもされる側にもメリットが

編集部:最後の質問です。⁠質問する」というのは,質問者だけでなく回答者にもさまざまなメリットがあるのではないかと思っているのですが,皆さんは質問者や回答者のメリットについてどのようにお考えですか?

ryunix:まず質問者にとっては,課題解決にかかる時間の短縮ですよね。後輩が悩んでいるわからないことって,多分先輩にとってはすでに通ってきた道なので,聞けば一瞬で解決することが多いと思うんです。なので,1人で悩むんじゃなくて,やっぱり質問する,聞いてみるっていうのが一番速いですよね。

そして逆に先輩側としては,ただ答えを伝えるだけじゃなくて,どうしてそういうことになっているのかまで伝えることで,その問題について再確認できるのはいい点なのかなと思います。

argius:先輩としても質問してくれないことには,その後輩がどう思っているかわからないんですよね。後輩のスキル感とか,どれくらいの指導をするのがいいのかとか。そういうのって質問をされることで方針が定まってくると思うんです。

編集部:確かに。Q&Aってコミュニケーションを生みますもんね。そうやって質問を重ねていくことで,こういう質問をしてきたから,今度はここで躓くんじゃないかとか,そういう関係性ができていくとベストなのかなと。

argius:そうですね。二者間でそのリレーが続くようになるとおもしろくなってきます。

編集部:けっこうリアルな場でのQ&Aの話をしてきましたが,Web上でのQ&Aだと何か違うんでしょうか?

teratail:そうですね,teratailで回答してくださるユーザの方々にいろいろとインタビューすることも多いんですが,⁠回答することがいい復習になると」いった意見や,⁠使ったことがない技術についての質問を調査しながら回答していくのをきっかけに新しい技術を使い始めるようになった」といった事例はよく聞くので,Web上でも回答者側に生まれるメリットはそんなに大きく変わらないかもしれないです。

ただ,オンライン上でのQ&Aの特徴としては,質問1つに対して,いろんなバックグラウンドを持った回答者たちが回答を投稿する「1対多」の関係になることが少なくない。だから,説明の仕方や解決策の視点が違ういろんな回答が出てくるんです。すると,回答者どうしで,⁠あ,こんな回答もあったんだ」とか「こういう視点で考えたことなかった」みたいな,新たな気づきが生まれているようです。

ShoheiTai:そういうQ&Aって,第3者的に見てもおもしろかったりするんですよね。週1くらいでteratailのメルマガで「最近話題になった質問集」みたいなのが送られてきたりするんですけど,素朴だけどこれまで考えてみなかったことに対する質問とか,見えていたようで見えていなかったなっていうところを突いた問いかけやその回答とかって,けっこう見ちゃったりします。いろんな人のいろんな考え方を知ることができて勉強になりますし。

編集部:回答する側も,いい意味でまわりの目を気にして回答しないといけないので,自分なりのベストを出して来ますからね。良い質問には良い回答が集まって,よりQ&Aの価値が高まると。そういったものは,Q&Aだからこそ生まれるコンテンツなんでしょうね。

それでは皆さん,本日はありがとうございました。

一同:ありがとうございました。


いかがだったでしょうか? 会社に入ったばかりのこの時期だと,まだまだわからないことだらけで,⁠質問する」ということに抵抗がある方も多いかもしれません。しかし,質問しようとすることで自身の問題点が整理され,解決への時間も早まるのです。そのぶん次のことを学ぶ時間に充てられると考えれば,結局は「質問すること」がスキルアップへの一番の近道なのではないでしょうか。

また,⁠質問すること」は聞かれた側にもさまざまなメリットを与えます。あなたの頭に浮かんだその「?」は,もしかすると日本中のプログラマに新たな気づきを生む小さな種かもしれません。

現場の先輩や上司だけでなく,今回登場してくれた3名のように,あなたの課題解決と成長を加速させてくれる⁠先輩プログラマ⁠は日本中にいます。そんな先輩方にぜひ思い切って質問をぶつけてみて,確実な力を身につけていってください。

今回のトップユーザたちにも直接会える!『集まっtail』

「集まっtail」は3ヵ月に一度渋谷ヒカリエにて実施されているteratailユーザ会です。多種多様なバックグラウンドで開発を行っているエンジニアが一同に集結するので,ぜひ一度,参加してみてはいかがでしょうか?

http://teratail.connpass.com

画像

teratail(テラテイル)
http://teratail.com/
取材協力:レバレジーズ株式会社
http://leverages.jp/

バックナンバー

プログラミング

  • 新人プログラマよ,困ったときはこう聞け!~エンジニア特化型Q&Aサイト「teratail」のトップランカーたちが語る,確実な力を付けるための“質問力”