エラー解決の手順
エラーでハマったら以下の手順で解決しましょう
大前提
そもそも自分が何を実行しているのか、その意味は理解できていますか?
ネット上の記事を参考に、なんとなくコマンドを実行してみたけど、なんか動かない・・
というのはNGです。
以前私は、よく理解できていないコマンドを実行して2億円のシステムのデータを全部消してしまったことがあります・・
エンジニアである以上、自分の作業には責任を持つ必要があります。
ネットの記事であっても、自分が実行しようとしてるコマンドやソースコードがどういう意味なのか、まずは全てをちゃんと理解するところからはじめましょう
エラーには2種類あります。
- 実行内容を全て説明できるレベルで理解しているけども発生しているエラー
- 理解が足りてなくて発生しているエラー
2の場合は、この後説明するエラーシューティングに進む前に、実行内容の理解から始めましょう
1. エラーメッセージを特定する
ログ、またはコンソールに表示されるエラーメッセージをよく読みましょう
たくさんのメッセージが表示されている中で、どのエラーメッセージが直接的な原因となっているのかを特定しましょう
エラーレベルを意識する
例えばPHPの場合だと、
Notice // エラーではない。プログラムは停止しない
Warning // 警告。プログラムは停止しない
Fatal // プログラム停止するレベルのエラー!
のように、エラーレベルが分かれています。
たくさんエラーが表示する中で、真っ先に気にすべきはFatalエラーです。
このように、言語ごとのエラーレベルも気にしながら、
たくさんのメッセージが表示されている中で、どのエラーメッセージが直接的な原因となっているのかを特定しましょう
2. エラーメッセージをよく読む
原因となっているエラーメッセージを特定したら、
そのエラーメッセージをよく読みましょう!
コツは英語から逃げないこと!
英語を翻訳して、必ずエラーメッセージと向き合ってください
そこにエラーの答えが書いてあるのですから
英語でコードを書いて、英語のエラーメッセージを読むのが、プログラマーのお仕事です
3. Google検索する
エラーメッセージをコピペしてググってみましょう
日本語よりも英語の方が情報量が多いので、
もしかしたら英語の記事しかヒットしないかもしれませんが、翻訳しながら英語の情報まで理解するように心がけましょう
プログラマーは英語と向き合う姿勢が必須です
4. AIに聞いてみる
ClaudeやChatGPTなどのAIに質問してみましょう
コツ
・ClaudeもしくはChatGPT、どちらにしても有料版を使いましょう。その方がAIの頭がいいです
・具体的なエラーメッセージや、ソースコードを貼り付けるなどして、具体的に質問しましょう
注意点
AIは不正確な情報を適当に返答してくる場合があるので、AIを過信しすぎないように注意!
5. stackoverflowで質問してみる
stackoverflowという質問サイトで、英語で質問してみましょう
質問サイトはteratailなど、他にも色々ありますが、
日本語だと日本人しか回答してくれないので、圧倒的に情報量やレスポンス速度が劣ります。
stackoverflowという、世界中の人が集まっている英語サイトで、英語で質問してみましょう。
翻訳ソフトを使って英語で質問する、という一手間を加えるだけで、
世界中の人からのサポートを受けることができます。
注意点
質問は、世界中に公開されるので、絶対にパスワードやソースコードが流出しないように、重要な情報はマスキングしてください。
質問に使うソースコードは、そのままコピペではなく、その案件が特定されないように、マスキングしてください。
良い質問を心がけましょう
・エラー内容を明確にすること
・エラーの再現環境を明確にすること
・エラーの再現手順を明確にすること
・1つの質問につき、1つの課題に絞ること
6. 上司やチームメンバーに相談する
緊急の場合は、上司やチームメンバーに相談しましょう!
ここでも、「良い質問」を心がけましょう