- 書いたコードが動かない
- どうやってもエラーが解決できない
- 調べても解決策が出てこない
プログラミングを学習しているけど、難しくて挫折しそうという人は多いですよね。
どれだけ必死に頭を悩ませても正解が見えてきませんし、一生懸命コードを書いても動作しないということはザラにありあります。
どうしたらいいんだ!と頭を抱える人も多いのではないでしょうか。
今回は、「プログラミングが難しくて心が折れそう」と感じている人に向けて、自分が実際の業務で得た3つの教訓を送りたいと思います。
教訓①:エラーメッセージを読む
まず始めに、プログラミングが難しいと感じていたころは、とにかくエラーの内容を把握していなかったと感じます。
どうしても真っ黒の画面に英語で長ったらしいエラーが出ていると、読む気が起こらないですよね。
僕もプログラミングに慣れていない頃はエラーを解読して修正するのではなく、プログラムを適当に触って問題を解決しようとしていたものでした。
しかし、エラーが読めるようになると、エラーが出ても改善するスピードが上がるためプログラムを組む速度が上がります。したがって、正しいエラー解決の流れを知っておく必要があるのです。
経験者と初心者のエラー解決の流れの違い
一般的に経験者と初心者のエラー解決までのフローは下記のような違いがあります。
プログラミング初心者:
エラー発生 → すぐに画面を見る → 直前に変更したコードを適当に修正 → エラー発生 → …
プログラミング経験者:
エラー発生 → エラーメッセージ確認 → エラーが起きている箇所の確認 → エラーの原因を調べる → 修正
このように両者には大きく違いがあることがわかります。
プログラミング経験者は、
を重視しているのに対して、プログラミング初心者は
しようとしていることがわかります。
しかし、適当に修正したプログラムが自分の意図通りに動くことはありません。
エラーは場合によっては、数時間とか丸1日かかっても解決できないことがあります。
根気が必要な作業にはなりますが、まずはしっかりとエラーを読むことで発生しているエラーを見極められるようになっていきたいですね。
教訓②:完璧な理解よりもまずは動くこと
膨大なコードや長文の書籍を見ると正直うっ…と詰まってしまいませんか。
プログラミングを長くしている人ほど慣れてはいるものですが、とにかく巨大なコードを見るのは嫌気が刺してきますよね。
しかし、始めからそれらを全て理解する必要はありません。まずは、あなたが実現したい動作を「とりあえず動く」状態にすることを最初の目的にしましょう。
コードは最低限動く→理解を深めるの手順で進める
下記の記事でも解説していますが、学習のピラミッド理論という記事をご存知でしょうか。
» プログラミング学習初心者に本がいらない理由
米国大学・研究図書館協会に掲載された記事によると、本等で知った情報は2週間後には10%しか覚えておらず、実際に自分が体験したことは75%覚えているという内容が記載されています。
つまり、例え最初から理論を一生懸命覚えて勉強しても、その情報は体験した学習に遥かに定着率が劣るのです。
したがって、まずあなたが学習において目指すべきなのは、「自分でコードを書いて動いた」という体験をすることなのです。
確かに他人のコードを読むことは大切です。他人が機能をどのように実装しているかを見るのは勉強になりますし、あなたがコードを書く上でも確実に学びになります。
しかし、プログラムは読んでいるだけでは書けるようになりません。
コードを読んで理解できるのと、自分でコードを書いて実現するには天と地ほどの差があるのです。
ですから、始めは小さな機能で構いません。とにかく簡単なところから手を動かしてみてはいかがでしょうか。
教訓③:経験者をどんどん利用しよう
最後にプログラミングスキルを伸ばしたいと考える人は、とにかく経験者をどんどん活用していくことを考えましょう。
プログラミング熟練者は、今あなたが詰まっている内容を過去に同じように詰まった経験があります。
ですから、場合によってはあなたが数時間かかっても解決できないエラーを5分で解決してくれる可能性すらあるのです。
もし自分の身近な場所に経験者がいるのであれば、積極的に利用していきましょう。
経験者が近くにいない場合は?
とはいえ、プログラミングの経験者が身近にいない方も多いでしょう。
そういった方は、プログラミングの勉強会に参加してプログラミング経験者を探すのも1つの手段として有効です。
プログラミング勉強会に参加するほどスキルがない!と思われている方も多いかもしれませんが、実は初心者向けの勉強会も数多く開催されています。
まずは近くで開催されている勉強会がないかどうか、確認してみましょう。
プログラミングスクールに通う選択肢もあり
もし真剣にエンジニアに就職/転職を考えているのであれば、プログラミングスクールに通う手段もあります。
プログラミングスクールでは、経験豊富なエンジニアが数多く在籍しているため、エラーが発生してもすぐに質問することができます。
無料で運営されているプログラミングスクールもあるため、もし転職を考えるのであれば一度考える価値はあるかと思います。
プログラミングを始めたばかりの人は、自分が何に詰まっていてどのように解決すればいいのかがわかりません。
そういった課題に直面したときに数時間頭を抱えて過ごすよりも、経験者の人にさっと質問して解決できることは少なくありません。
教えてくれる人がいないのであれば探しに行けばいいですし、メンターがいるかどうかはプログラミングを続けるための大きなモチベーションになります。
自分のスキルを伸ばすためには経験者の存在は欠かせません。少し図々しいくらいかなくらいの気持ちを持って頼れる人に頼っていきましょう。
まとめ
今回は、プログラミングで悩む人に向けて3つの教訓をお伝えしました。
プログラミングの熟練者であっても悩むことばかりではありますが、初心者の頃と比較するとプログラミングは難しい面もあるけど楽しいと自信を持って言えます。
自分が作りたいものを実現するためにも一歩一歩地道にスキルを向上させていきたいですね。