SNS・YouTube

プログラミングのエラーが辛いけど、SEはエラーを解決するのが仕事

プログラミングを始めたのはいいけど、毎日エラーばかりで辛くありませんか?
僕もプログラミングが全然分からず、かつエラーばかりで途方に暮れていました。

最初はエラーが発生するたびイライラや焦りなどの感情が出ていましたが、現場で仕事するようになるとエラーをどう解決していくかを考えるようになります。

現場ではエラーを出さずに実装する能力より、エラーを解決する能力の方が必要だと感じております。
プログラミングの勉強でエラーがたくさん出ている方は逆にチャンスといってもいいかもしれません。

今回は実際に現場でエラーを解決した方法などを紹介します。

【頭の悪い人必見】バカな僕がプログラミング学習で失敗した勉強方法

初心者はエラーが辛いけど、仕事ではエラーを潰していく作業

先ほども紹介しましたが、システムエンジニアやプログラマーはエラーをどのように解決していくかを導く能力が必要です。

現場先にいたプログラムバリバリにかける人もエラーに直面し、何度もtry&errorを繰り返していました。

プログラミング学習と実際の業務との違い

プログラミング学習では基礎を覚えるために実装から始めます。
その為、目標が基礎を覚え実装する事が目標なのでエラーに直面すると、「うーわ」となってしまいます。

ですが業務では実装する事が目的ではなく、業務の効率化や便利な機能を提供する事なので日々改善をしていきます。
改善をしていくうえでエラーは何回も発生し、エラーを解決するために様々な対応をします。
システムにバグが生じることもあり、バグを解決するためにいろいろ対処する事も。

このように業務ではすでにあるシステムの改修やバグの修正などの仕事もあるので、エラーを解決する力がとても必要になります。

エラーを解決することで、プログラミングスキルが上がる

エラーが表示されると気分が落ち込んでしまいますが、エラーは自分が理解していない場所を提示してくれている場合もあります。

プログラミング学習を始めてよくわからないまま進めてしまう事もありますが、一回エラーになることで復習できるチャンスを得ています。

現場に出てからの方がエラー回数が多かったですが、エラー文を元に新しい事も学べました。

みんな同じエラーで苦しんでいるから検索しよう

大体のエラーは世界中のみんなが経験しています。

なのでエラー文をそのまま検索すると、たくさん検索結果が出てくるはずです。

優しいシステムエンジニアやプログラマーが答えを導いてくれているので、ぜひ参考にしてエラーを解消してみましょう。

現場しか使わない変数やデータベース名、テーブル名、カラム名などは削除してから検索しましょう!

プログラムのエラー対処

では実際に僕が現場でエラーに直面した際に対応した方法を紹介します。

エラー文やログが示している行を確認

いうまでもありませんが、エラー文やログをしっかり確認しましょう。

主観でエラーを解決しても浅い知識からしか推測できません。プログラミングが全然できなかった僕は全く同じことをしており、それを辞めた途端プログラムをスラスラ組めるようになりました。

エラー文やログは真実しか表示されないので、しっかり確認していきましょう。

デバッグ実行して変数などがしっかり格納されているか

エラーの箇所が分かったらデバック実行して変数の中身や型などが正しいかを確認してみましょう。

行数が分かっても行のどの部分がエラーなのかを明確にする必要があります。

そもそも実行方法が正しいか

何度もやってしまいましたが、そもそも実行方法が違う事もあります。

例えば「使用する引数が違う」「実行コマンドが違う」「実行する環境が違う」など。

流れ作業で実行確認をしていると、上記のようなことがあり得るので注意しましょう。

他のプログラムが邪魔している可能性も

開発しているパソコンで同時に何らかのシステムが動いていると、邪魔で正常に実行できない事もあります。

Windowsであればタスクマネージャーを開いて邪魔しているプログラムがないかを確認してみましょう。

他のプログラムが邪魔している際はいつもと少し違う行にエラー文として表示されていることもあります。

真の辛い事とは?

エラーなんかよりもっと辛い事を紹介しておきますw

エラー文が出てないのに正常に動作しない

プログラム的にはエラーは出てないけど、設計所の観点で見ると正しくないのが一番大変かもしれません。

プログラム的にはエラーは発生しないので、頼りになるエラー文はありません。

そういった場合は関係するプログラムをすべて人の目で確認する必要があります。

検索しても実装方法がネットに載っていない

これは僕も体験したことですが、マニアックなシステムを作る際、検索して探しても日本語で情報が出てこない可能性もあります。

そのような場合は英語で何とか検索する必要がありますが、英語が読めない僕はただひたすら英語で検索してtry&error。
情報量は英語の方が圧倒的に多いですが、英語でも出てこない時があります。

このような場合はたくさん似たような情報を集め、その情報から仮説を立てて実装します。
実装できた時は達成感が半端ないですが、エラーでなかなか進まない時はとても辛いです…。

環境を構築できない

プログラムを実行するには環境を作るのが必要ですが、環境構築が難しい言語もあります。

環境構築時にもエラー文は出てきますが、使用しているパソコンやバージョンによってメッセージ内容が異なっていたり、既存の環境とごっちゃになることもあるので結構難しい作業です。

現場が変わるときや、新しい体制になる時など、環境構築は頻繁にやるものではありませんがとても大変です。

プログラミングにエラーはつきもの

プログラミングをするにはエラーがつきもので、ベテランのエンジニアも日々プログラムのエラーを解決しています。

最初の方はエラーを解決するのに時間が掛かってしまいますが、慣れれば問題はありません。

どんどんエラーを出して、エラーを解決していきましょう。

【頭の悪い人必見】バカな僕がプログラミング学習で失敗した勉強方法