プログラミング独学で挫折しそうになったら試す6つのこと

IT


『プログラミングむず…バグった…動かない…意味ワカラン…』

プログラミングは、1文字でもタイプミスすれば動かなくなり、ネットに書かれた情報を試してみても直らず・・大変ですよね。
プログラミングをしている時間の中の半分以上は、思うように動かなくて調べたり、バグがとれなくて悩んでいる時間だと思います。散々時間をかけたのに、後で原因が判明した時には以外と単純なミスだったり・・。

そんなとき!
これから紹介する6つのことを試してみましょう。どの言語かは関係なく読める内容になっています。

目次

スポンサードリンク


その1:本当にバグなのか疑う

まずは本当にバグなのか疑いましょう。
ローカルでサーバを立てて開発していて、「アクセスできない!」と思ったら、『サーバ立ち上がってなかった!』とかないですか?

他にもインターネットに繋がらないと思ったらLANケーブルが刺さってなかったとか、ルータの電源が入ってなかったとかよくある話です。まず手取り早いところを疑ってみましょう。何か大切な事前の準備が欠けていたりするかもしれません。

ここで解決すれば儲けもんですね!

その2:バグを整理する

バグが出たとしてもまずは焦らず、現象(バグの内容)を整理しましょう。

  • 何の操作をすると、何というエラーが出るのか
  • 操作の順番は関係あるか
  • 今修正したところで落ちているか、それとも無関係なところか
  • 本番環境と開発環境で違いはあるか
  • 何が正で何が誤なのか(ゴールをハッキリさせておく)

といったところに気を付けて、現象を整理していきます。

もし処理が複雑なら、脳内だけでムリに整理せず、メモ帳に書き出した方がいいと思います。バグが起きると焦ってしまい、普段見えている部分でさえ見落としてしまいがちです。

まずは落ちついて、確実にバグを潰していきましょう。
操作のパターンを何個も試すときは、同じスタート地点(前提条件)から動作させることを忘れずに。

その3:パーツを分けて考える

処理が色んなファイルのロジックにあっちこっち飛ぶ場合があると思います。そういうときは、どこまでは正常に動いているのか、どこからおかしいのか、パーツを分けて考えましょう。分けれる部分は分けて考えて、原因と思われる箇所をなるべく小さくしていきます。

途中途中に処理番号を書いたログを吐くようにすれば、どこまで正常に動いているのかわかりますよね。
そうやってどんどん悪い部分を絞っていって、バグを潰していきましょう。

その4:シンプルにする(余計なものを取り除く)

これは環境構築系でよくあるやつです。最初は動いてたのに、「コードを足したりインストールしていったら動かなくなった!」という現象ですね。

どの状態のコードなら動くのか、バージョン管理ツール(Git、SVNなど)を使って前の状態に戻してみたりしましょう。

便利なライブラリをたくさん使っていると、開発時間を短縮できるものの、問題が起きたときに原因を探し辛かったりしますよね…。

その5:誰かに質問する(しようとする)

テディベア効果って聞いたことありますか?
バグに遭遇し、先輩に聞きにいって、バグの説明をしようと思ったら・・

「あれ、あそこが悪いんじゃん」と気づいて「先輩!なんでもないです!解決しました!」

ってやつです。
人にわかるように質問しようとすると、自分の脳内で現象を整理することで解決に繋がるのだと思います。テディベアでなくても構いませんが、人形に今の状況を説明してみましょう。説明しているうちに、どこが悪いか気付くかもしれません。

その6:寝る!!

寝て一晩置きましょう。
パソコンの再起動のように!一旦忘れて、寝ましょう。

そして朝起きたらもう一回見直してみましょう。
「え、ここが悪いだけじゃん…昨日の自分アホかよ!」ということが起こります。

追い詰められてたりバグにハマっている時は、思い込みで視野が狭くなりがちなので、寝逃げでリセットしましょう。

独学していて躓いていたポイントが、第三者視点だと一瞬で解決することがよくあります。寝ることで、代わりの第三者(翌日の自分)を連れてきましょう。

これ意外に効くのでやってみてください。一番オススメの方法です。仮眠でもオッケー。
簡単で、疲れがとれて、バグもとれて、一石三鳥ですね。

まとめ

  • 本当にバグなのか疑う
  • バグを整理する。何をすると何が起こるのか
  • パーツを分けて考える。問題の切り分け
  • シンプルにする(余計なものを取り除く)
  • 誰かに質問する(しようとする)→テディベア効果を狙う
  • 寝る!!一番オススメ

以上、『プログラミング独学で挫折しそうになったら試す6つのこと』を紹介しました。

私はその6に何度も助けてもらいました。でも6のやり過ぎには注意が必要ですよ!
少しでも、バグにハマって悩んでいる方の力になれれば幸いです。

スポンサードリンク

ITリテラシー・プログラミングのまとめ記事