円滑に開発を行うために必要なことの1つにプログラミングの学習をスムーズに行うことがすごく大切なことだと思いました。どんなに時間があっても、どんなに学習環境が整っていてもエラーでつまづいたり、自分の思うような結果を導き出せないときに必要なことをわたしの独自の見解をまとめてみました。
① 何がわからないのかを明確にする
② どうしてそれがわからないのか理由(原因)をはっきりさせる
③ 着実でかつ必要な小さいハードルを探す
何がわからないのかを明確にする
エラーの場合はどうしてそのエラーになるかをはっきりする必要があります。エラー文を読んでそのエラー内容が何を示しているのか検索をかけて同じようなエラーで悩んでいる人はどうやってそれを解消したのかなどを調べてその時点でわかればその問題はそれで解決です^_^
ただ、もしわからなくて結果的に解決するために長引いてしまう場合は一度その負のスパイラルから抜けてどうしてそれがわからないのか理由をはっきりさせることが必要です。
どうしてそれがわからないのか理由(原因)をはっきりさせる
どうしてそれがわからないのか、例えば初心者のときにGemfile
に記述する内容をコマンドだと勘違いをして一生懸命ターミナルに打ち込んでいたことがありました。つまりその問題のわからない理由は知識不足によるものです。
もう一つ例にあげるとエラー文を何度も検索にかけていました。複数件膨大な関連記事が表示されてどれが正しい情報なのかわからないときがあります。さらに詳細に検索をかける必要があったのですが何がエラーの原因なのかわからない...
どうしてわからないのか幾度と経験をすることでわかったことはエラー文に詳細なエラー情報が書いてあることでした。これはプログラミングを始めたばかりのことですが、「エラー = 迷路突入」と勝手に解釈していたため丁寧な説明があるのにも関わらずその説明を見ていなかったことが原因でした。
着実でかつ必要な小さいハードルを探す
では次にどうしたらいいのかなぁ...と考えたときに自分の学習計画を再度立て直すことでした。例えばDjangoで個人アプリを作りたいときに思うように実装したい機能がエラーになってしまう。と思い例に倣い、わたしがどうしてわからないのか考えたところ、**「これまで学習した内容よりもっと詳細な情報が掲載されている書籍などで基礎学習した方がいい!」**という結論に達しました。
わたし自身、個人的にプログラミング学習の中でもったいないと思うことは継続をやめてしまうことと、モチベーション低下により、本来プログラミングに割ける時間を怠惰に過ごしてしまうことだと思いました。わたしの経験談でエラーを解消するためだけに色々と調べていた時間で一冊の書籍を通して学習できるほどの時間と同等の時間を浪費していたことに気づきました。
実際にそのときのエラーは基礎学習の不十分によるものだったのですぐに自分は何がわからないのかがわかっていた場合にストレスなく超えられたハードルなのかなぁ...とあとあと感じました。
そしてそれはもちもん闇雲ではなく、時間がかかっても方向性を見失わない内容で必要な努力になることが自分の頭で理解できてることが大切なことだと思いました(^_−)☆