そこで具体的に問題解決できるプログラミングの質問の仕方や、情報交換ができるサイトがあれば教えて欲しいです。
この疑問にお応えします。
- 【初心者向け】プログラミングでつまづいた時の質問方法
- 良い質問を引き出す5つのテンプレートを紹介
- プログラミングの質問ができるサイトを紹介
- まとめ:プログラミングスキルを飛躍的に伸ばす質問スキルを身につけよう
こんにちはヒロキです。
この記事を書いている私は2005年にITビジネスで起業してから、インターネットで稼ぎ続けてきました。
プログラミングに関しては独学でスキルを身につけてきましたが、プログラミング初心者のスタッフに対しては何度かプログラミングを教えたり、質問に答えることもあります。
そこで「質問」によって、初心者でも短期間でスキルを伸ばせる効率的な質問方法について解説していこうと思います。
プログラミングで問題にぶつかった時に、こんな質問をしている人は要注意です。
こうした「丸投げ」状態の質問が初心者には多いのですが、なぜこうした質問になってしまうのか?というと「良い質問の仕方」を知らないからです。
本記事を最後まで読めば、初心者でも
良い質問は良い回答を引き出す
という本質を理解できた上で、プログラミングのスキルを効率的に伸ばすことができます。
さらに「プログラミングで良い質問をするためのテンプレート」も紹介しますので、ぜひご活用ください。
【初心者向け】プログラミングでつまづいた時の質問方法
プログラミングの本質は「問題解決」です。
- ユーザーの問題を解決するため
- 経営における問題を解決するため
- 集客の問題を解決するため
- マーケティングの問題を解決するため
あらゆる問題を解決して改善するために「プログラミング」という手段を利用します。
つまり、プログラマーにとっての重要なスキルとは「プログラミングの技術を身に付ける」ことと同時に、問題解決に繋がる質問スキルを磨くことです。
質問スキルが身につけば「問題を解決できる時間を大幅に短縮する」ことができます。
なぜ良い質問するをするスキルが必要なのか?
先述しましたが、良い質問は良い回答を引き出すことができます。
例えば、学校での勉強を想像してみてください。
多分、プログラミングに置き換えても、同じような雰囲気で丸投げの質問をしてくる人が多くいます。
しっかりとした質問ができれば、良い回答(=問題を解決できる回答)を得ることができます。
こうして具体的な「行動に繋げることができる回答」を得ることができます。
またすぐに質問する人は知識が付かず相手の時間を奪うので仕事も減りますで解説していますが、質問する際に相手の気持ちや負担を考えない人は損をしてしまいますので注意しましょう。
良い質問をするための5つのテンプレート
良い質問をすることで、良い回答を得ることができます。
そのための効率的なテンプレートを紹介します。
質問テンプレート
- 目標を伝える(何をしようとしているのか?)
- エラー内容を伝える
- 自分が何をやったのかを伝える
- 自分でググって試したことを伝える
- それらを実行したプログラミング環境を伝える
以上です。
これらを質問文章にしっかり含めることで、良い回答を引き出すことができます。
この5つの内容を伝えれば、ある程度の経験値があるエンジニアであれば解決できる回答を提供してくれます。
プログラミングを勉強したいけど何を勉強したら良いのかわからない...
独学で勉強しているけど、よくわからない...
そんな方も多いと思いますが、朗報です!
有名プログラミングスクールのテックアカデミーの講座を
無料で受講することができます!
パソコンさえあれば、自宅で学習をすることができます。
30秒で登録が終わります。
いつまで無料で体験できるかわからないので、
今すぐ無料体験に登録してみてください!
» TechAcademyの無料体験に申し込む
質問力を付けるメリットとは?
プログラミングにおいて、質問力を付けるメリットはさまざまあります。ここでは質問力を付ける4つのメリットをご説明します。
問題解決能力が身につく
質問力を付けると問題解決能力が身につきます。質問できるということは、検索できることを意味します。つまり、検索力が身につくわけです。
また、正しい質問ができるようになれば、多岐にわたるエラーパターンを自己解決できるようになります。
そして、似たようなエラーが起きても悩む時間が少なくなり、自分自身のレベルアップにつながります。このように質問力を付けることは、問題解決能力の向上にも繋がり、プログラミングを学習している時期だけではなく実務の場面でも有効なスキルです。
お互いの時間削減につながる
質問力を身につけていい質問ができるようになると、聞く側も聞かれる側も時間の削減につながります。特に質問される側は、ただじっとして待っているわけではありません。スクールに通っていたとしても、質問だけを受け付ける講師は少ないです。
インターネットの質問サイトなどに投稿しても、すぐに返答が来ない場合もあります。どのような場合にせよ、質問される側は本業があったり作業中だったりするわけです。
そのため、良い質問ができないと、聞かれる側が質問を質問で返すことが必要です。それに対してさらに質問するという悪循環になりかねません。
具体的には「●●というエラーが発生しました。」という質問は良質とはいえません。聞かれた側は「何を実装したら発生したの?」など質問を質問で返す手間が必要です。
ですから前項でも取り上げたように「△△をしたのですが、●●というエラーが発生しました。」「■■をしたいのですが、××でできるでしょうか?」など、より具体性のある質問をするようにしてください。
簡潔な質問がお互いにとって有益ですが、あまりにも漠然とした質問はかえって時間がかかってしまいます。できるだけわかりやすい質問を投げかけるようにしてみてください。
学習の挫折を防ぐ
良い質問ができるようになると、プログラミングの学習で挫折しにくくなります。一方で悪い質問を繰り返していると満足な回答を得ることができず、わからないことが増えてしまいます。
わからないことが増えてしまうとプログラミングの学習が楽しくなくなり、挫折しやすいです。ですから良い質問をして、良い回答を得ることが大事です。
また、プログラミングは数学のような学問とは異なり、答えが1つではありません。用途や目的によりさまざまなアプローチがあり、より知識のある人に質問することで学習効率があがります。
スムーズに良い質問をすることが、プログラミング学習のカギといえます。
プログラミングの質問力は一生使えるスキル
プログラミングの勉強を始めたばかりの頃や実務に就いたばかりの頃は、何かと甘えが生まれます。「初めて勉強するから何でも教えてくれるだろう」「未経験だから先輩が教えてくれるだろう」という気持ちでは、エンジニアとしての成長につながりません。
実務の現場でしっかりと評価されるエンジニアは、周囲とのコミュニケーションをしっかりと図れる人材です。そのなかで質問力は重要なコミュニケーション能力です。
繰り返しになりますが、問題を迅速に解決するには正確な情報を伝えて的確な質問をすることがポイントになります。質問力はすぐに身につく能力ではありませんが、プログラミングを学習している時期から意識して取り組んでほしいところです。
日ごろから意識して身につけた質問力は、現場でも大いに役立つスキルになりますよ。
質問の前に最低限やってみてほしいこと
誰かに質問する時は、思いついたことをそのまま伝えても良い質問になりません。良い質問をするには、聞く前の下準備が大事です。ここでは、質問の前に最低限やってみてほしいことをご説明します。
調べたり解決方法を試してみる
質問する前の前提として、自分で調べたり解決策を実践してみたりすることが大事です。まずはGoogle検索を使っていろいろと調べてみてください。いわゆる「ググる」というのは、プログラミングの学習や実務でも非常に大事です。
インターネット上には膨大な情報が公開されているため、その中から自分で解決策を探ってみてください。なお、Googleで検索する時は以下の点に気をつけましょう。
・正確な用語を使う(JavaScriptをJavaやジャバスクリプトなどと検索しない)
・日本語だけでなく英語でも検索をする(英語の情報のほうが数が多い)
・記事の公開日を確認する(古い記事を参考にしても解決できないことが多い)
・エラー内容をコピペする(コピペするとダイレクトに解決記事にアクセスできることが多い)
以上に注意しながら、まずは問題点に関して調べてみてください。そして、自分なりに解決方法を見つけたら実際に実装します。理由は情報だけでは実際に解決できるかわからないからです。
場合によりすぐに解決することもあれば、解決しないこともあります。解決しなければ、新たな方法でトライしてみるなど、試行錯誤していくことが大事です。
幾通りも試してから質問すれば、「●●と△△を試したのですが、ほかにも方法はありますか?」と具体性のある質問ができますよ。
15分間進展がなければ聞きに行こう
問題に対して自分なりに試行錯誤することは大事ですが、どうしてもわからない時もあります。また、自分で解決できるかわからないのに、何時間も同じ課題に取り組むことは非効率です。
そこで、15分間、調べたり考えたりしても進展しなければ聞きに行くルールを設定してみてください。プログラミングの勉強では完璧主義にならないことも大切であり、わからないことは勇気をもって質問する習慣も重要です。15分間という時間を決めると、聞きに行くことにためらいが少なくなります。
質問しないことが成長に一番の悪影響ですので、自分よりも知識のある人がどのようにアプローチしているのかいろいろと聞いてみてください。
プログラミングの質問ができるサイトを紹介
良い質問をしなければいけない理由と良い質問方法がわかれば、続いてはエンジニアやメンターに対して質問ができるコミュニティーサイトを紹介しておきます。
以下をどうぞ。
補足として、一番効率的に相談できるのは最後のプログラミングスクールのメンターに相談することです。
例えば【初心者が体験】TechAcademyのフロントエンドコースで身に付くスキルまとめでも紹介していますが、スクールを受講するとメンターに質問をすることができます。
テックアカデミーは特に質問へのレス速度が速いので初心者でも安心して利用することができます。
以下の記事でメンターの活用方法についても解説しているのでご覧ください。
プログラミングスキルを飛躍的に伸ばす質問スキルを身につけよう
プログラミングにおいて「良い回答を引き出す質問をするスキル」があれば、飛躍的にプログラミングスキルを伸ばすことができます。
記事をまとめると
- 良い質問は良い回答を引き出します
- 質問は5つの要素(目標、エラー内容、自分の行動、ググった内容、環境」を伝える
- 丸投げの質問は相手に負担を与えるだけです
- 質問サイトやスクールのメンターを使いましょう
以上です。
基本的に、プログラミング初心者が挫折する最大の理由は「問題にぶつかった時に相談できる相手がいない」ということです。
初心者の段階は「簡単に解決できるエラーに対して1週間くらい時間が取られる」ことも多々あります。
それくらい頻繁にエラーでつまづくので、現役のエンジニアに気軽に相談できる環境があることはむちゃくちゃ大きな強みになります。
でも、良い質問ができないと「時間単価の高い現役エンジニア」は全く相手にしてくれません。
結構、これくらい辛辣な言葉で返されることもあるので質問の質は本当に大切です。
だからこそ重要になることが「初心者でも良い質問をするスキル」であり、本記事で紹介した5つのテンプレートを活用すれば、良い回答を引き出すことができます。
ということで、プログラミングの問題に対して質問をしようと思った時、本記事で紹介した内容を思い出していただければ幸いです。
メンターを活用するスクールについてはプログラミング初心者の大学生にテックアカデミーをオススメする理由もご参考ください。
人気記事【初心者向け】プログラミング言語の選び方を目的に分けて詳しく解説
人気記事プログラミングスクール?独学?エンジニアで就職したい人向けに解説