プログラミングに関する入門書や参考書籍が増え、最近では専門学に行かなくても自宅でプログラミングを学ぶこともできるようになり、
動画サイト、学習サイトも増えていく一方で、ますます初心者の方にも始めやすい環境ができています。
ただ、すべての方がプログラミングを学習すればプログラマーデビューできるわけではありません。挫折する方が多いのも事実です。
挫折してしまう理由は人により違いますが、今回はその挫折の原因と解決方法についてのお話をします。
目次
はじめに
プログラムの勉強をする前に行うことが多く感じ、環境設定の時点でつまづき進めなくなる。エラーが出たときに原因がわからなくて解決できない。
本や動画の通りに進めているはずなのに動いてくれない。本やWebの専門用語についていけず、文法を理解する前に専門用語の検索だけで時間を使ってしまいなかなか進めない。
また独学だと直接聞ける人がいなく作業が止まってしまう。挫折してしまう原因はたくさんあると思います。
現役のプログラマー・エンジニアの方々はどうやってその壁を乗り越えたのでしょうか。
プログラミングで挫折してしまう原因
とりあえず何から手をつければいいのかわからない
Webページを作るのに必要な知識はHTMLが必須です。ただそれだけでは構造的な文章しか作れないので、文章に色をつけるのにCSSの知識が必要になります。
そうするとHTMLとCSSで静的なページを作ることはできます。
ただ時代に合ったWebページを作るには動的なページを作る必要があるので、次にJavaScriptなどでプログラムを作ります。
JavaScriptを学ぶ際はif文や条件分岐といった論理的思考が必要な構文を学びます。ここまでくると、まず何から手をつければいいのかわからなくなり挫折してしまいます。
言語が多すぎて選べない
プログラミング言語は200以上あり、また新しい言語も日々誕生しております。
初心者の方はその多くの中から何の言語があるのかを調べ、言語の違いについても理解する必要があります。
情報収集に時間もかかり、調べながらコンパイル式やインタプリタ式といった専門用語が出てきます、またそこで言葉の意味の検索がはじまり、文章を読み進めるのに時間がががります。
理想としていた自分はプログラムを書いていてアプリケーションを作っているはずなのに、現実は進めているのかどうかもわからない状況になってしまい、挫折してしまいます。
つまずいたときに立ち直る方法がわからない
何を作りたいか決まり、学びたい言語もわかってきて、学習方法も決まり、いざ始めてみても思うように動いてくれなく壁にぶつかることがあります。
よく見てみるとコードが一文字足りない、全角空白が入っていた、単純なスペルミスだったりと原因は一つではありませんがそのたびに原因究明に時間がかかってしまいます。
現役のプログラマーでもエラーはあると思いますが、経験があると対策方法をいくつか知っています、問題解決をする時間もそこまでかからないでしょう。
初心者の方ですと、まず何が原因でエラーなのかの意味も分からず、文字を一つずつ確認していくと効率もわるく気力も体力もなくなり、疲れ果ててしまうでしょう。
一度離れてそのまま挫折してしまう可能性もあります。
順調に計画を立てていてもつまずいた時の対策も考えておかなければ挫折します。
モチベーションが続かない
本やオンラインで基本的なif文や条件分岐を学び構文が理解できても、これが何に使われるのかのイメージがいまいちできない。
また新しい技術は次々とうまれています。
もしプログラマーやエンジニアデビューできたとしても更に新しい事を学ばなければならない、そう思うと不安になる方も多いでしょう。
また始めのうちは毎日数時間の勉強をしていても、アプリケーションを作れるようになるには数ヶ月から半年間はかかります。モチベーションが続かず、挫折してしまいます。
挫折しないための対策法
上記で述べた原因に当てはまる人も多いと思いますが、では挫折しないようにどうすればいいのかの対策をお話します。
作りたいものを明確化する
プログラミングができるようになりたいからと思い立ち、取りあえずの学習ではすぐに挫折しますので、まず自分がどんなアプリケーションをつくりたいのかを明確化しましょう。
Webページが作りたいのならHTMLとを学ぶ。Webアプリケーションを作りたいならRubyを学ぶ。人工知能を作りたいのであればPythonを学ぶ。
そうすると自分のゴールが見えるので、今いる時点からゴール時点までに必要なものは何なのかを計画的に考えることができます。
また、はじめは小さいものから作っていき成功体験をつけるようにするといいでしょう。小さい成功が自分の大きな自信へと変わります。
習慣化して時間の管理をする
でも少しずつでもいいので、学習を習慣化しましょう。また学習する範囲も狭くし、一つのことを深く学ぶと自分の強みができ、自信もつくでしょう。
プログラミング言語にもよりますが、似たような文法の言語も多く存在しますので、一度深く学習した時の努力が活躍することでしょう。そして調子が良いときはどこまでも進んでみましょう。
モチベーションはゆるく保つ
学習時間は1日3時間必ずする。と自分に厳しくするのもいいのですが、大事なのは続けられる努力をすることです。
たとえ人より学習時間がかかったとしても、あきらめなければ自分の力になります。
今日はここまでできたから良いと、いつでも変更はできるとモチベーションをゆるく保ち、少しでも進めたら自分を褒めてください。
メンターがいると続く
同じ目標をもつ仲間がいるセミナーやコミュニティに積極的に参加しましょう。場所はオンラインでもいいですし、カフェなどで開催されるワークショップなどもおすすめです。
同じ目標を持っているということは、悩みも似ているかも知れません。一緒に問題を解決したり、新しい情報を共有しあえると向上心も上がります。
またプログラマーデビューした際に仕事を紹介してくれたりというメリットもあります。
大規模な開発になるとチームでの活動になり、コミュニケーション能力や信頼性が求められます。
先のこと考えても仲間は必要です。ぜひ気の合うメンターを探しましょう。
インプットとアウトプットを大事にする
インプットをしたら同じ時間かそれ以上にアウトプットに時間をかけましょう。
基本を学びインプットした後に、自分だったらそれをどう活用するかを考え、アウトプットするのが大事です。
その繰り返しを行うとアプリケーションの機能に必要なコードがスムーズに書けるでしょう。
それでも挫折しそうなら一度はなれて、また戻る
挫折しそうな時が成長のチャンスでもあります、それを乗り越える選択をするかどうかでその先の就職先も人生も変わります。
あきらめることがいけないわけではありません。難しいようであればいちど休息時間を作り、やる気が出るまで何もしなくてもいいですし、計画を練り直すのもいいでしょう。時間がかかってもまた戻ればいいのです。
さいごに
いかがでしたでしょうか。プログラミングで挫折する人は共通する点があります。
もし学習に時間がかかりすぎていると感じたら、それは自分の時間に投資していると思い、
もう一度頑張ってみてください。挫折しない環境作りは始めの方に対策を考えましょう。継続は必ず自分の力になります。