プログラミングを勉強する方が増えていて、まずは独学で始められる方が多いのではないでしょうか。
2019年3月に発表された経済産業省の調査によると、2030年にはエンジニアが79万人不足すると言われています。
経済産業省によると、IT人材(IT企業と、ユーザー企業の情報システム部門に所属する人材の合計)は現在91.9万人なのに対し、17.1万人が不足していると推計。人口減少に伴い、退職者が就職者を上回ることで19年から先は減少に転じる一方、IT需要の拡大が見込まれるため、人材ギャップは悪化。IT市場が高率で成長した場合、30年にはIT人材数が85.7万人なのに対し、不足数は78.9万人に上ると予測している。
IT人材不足が深刻化、2030年には78.9万人不足に 経済産業省調べ ITmedia ビジネスオンライン
エンジニア人口を増やすためにも、プログラミングの独学にチャレンジすることはすごくいいことですが、挫折してあきらめてしまう方が多いのも現実です。
- プログラミングが難しすぎて自分には理解できない…
- 教材は買ったものの、勉強する気が起きない…
- 勉強してみたけど、身についているのか不安…
あなたもこのような経験をして、独学を挫折したことはないでしょうか?
この記事では、プログラミングの独学を続けるためのコツを解説します。
その後、挫折してしまう理由、挫折してしまう人の特徴についてもまとめてみました。
「自分だけの力ではどうしても挫折から立ち直れそうにない」「絶対に挫折してしまう」という方に向けた対処法についても紹介しています。
挫折してしまった方、挫折してしまいそうな方は、独学を続けるためのヒントが得られると思いますので、ぜひご覧ください。
目次
プログラミング独学を無理なく続けるコツ
オンラインのプログラミングスクールを展開している侍エンジニアの調査によると、プログラミングの独学は、挫折率が9割といわれています。
プログラミングにものすごく興味があって勉強を始めたのであれば、独学を続けることは簡単だと思います。
ですが、そこまで強い興味を持っている人は限られていますし、必要にせまられて勉強を始めた、という方が多いのではないでしょうか?
勉強することに何か楽しみが見つけられないと、独学を続けることは難しいと思います。
勉強しようとせず遊びのつもりで取り組む
あなたは、テストで良い点を取るために独学を続けているわけではないと思いますし、内申点を上げるために独学しているわけでもないと思います。
義務教育のように、何らかの結果を残すために勉強しているわけではないと思いますので、”勉強”と硬く考えずに、”遊び”のつもりで取り組んで欲しいです。
独学を進めていくと知識が少しずつ増えてきて、1つ1つできることも増えていきます。
できることが増えていくことで、新しいものが作れるようになったり、目標としていたものが作れるようになって、モノづくりへのワクワク感を感じられませんか?
何でもかんでも暗記しよう、本を隅から隅まで読んで勉強しよう、と考えるのではなく、モノづくりを楽しめる気持ちを持ち続けることで、独学を無理なく続けられます。
独学する目標を決める
モノづくりを楽しむためにも、目標は明確にしておくべきです。
独学の場合、ゴールまでの道のりを自分で決める必要があります。
ゴールが決まっていない場合、そこまでの道のりも決められないので、目標を決めることが重要です。
道のりが決められないということは、道を調べずに山に登ることと同じで、途中で迷子になってしまう可能性が高くなってしまいます。
「どのプログラミング言語を勉強すればいいかわからない…」「プログラミング言語の勉強はやったけど次に何をやればいいかわからない…」という経験はありませんか?
迷子になった結果、何から手をつければよいかわからなくなってしまい、挫折してしまう方が多いんです。
勉強したことを振り返ってみる
目標を決めたら、そこに向かって進んでいくことが一番重要ですが、たまには進んできた道を振り返ってみてください。
1週間に1度ぐらいのペースで構いません。
スタート地点から現在地に辿り着くまでのことを振り返り、どんなことを学んだのか?どんなことができるようになったのか?思い返してみてください。
独学の場合、学校のテストのように成果が目に見える形になりにくいので、成長できた実感が持てません。
勉強していても成長できたかどうかが分からないことも、挫折してしまう原因の1つのようです。
勉強し始めた時と比較して、どのくらい成長したのか、あなた自身が把握することで成長した実感が得られます。
自分で自分を評価してみましょう。
インプットよりもアウトプットすることが重要
独学は何か楽しめる要素がないと、絶対に続けられません。
実際に動くアプリを作るなど、アウトプットすることがプログラミングの学習で楽しめる要素となります。
未経験者にとって、インプットすることは苦痛でしかないです。
インプットしたことを活用してアウトプットできるようになって、初めてプログラミングを楽しめるようになると思います。
独学するとなると、どうしてもインプットがメインになりがちです。
苦痛なことばかり繰り返していては、挫折して当たり前ですので、アウトプットすることに重点をおきましょう。
また、プログラミングを独学されている方は、就職や転職などを考えている方がほとんどです。
勉強してきたことを評価するとなると、どうしてもアウトプットが必要になってきます。
必ず、勉強してきたことを他人に評価してもらう機会が出てくると思います。
インプットしただけでは、趣味でプログラミングを勉強したことと変わらなくなってしまうので、他人から見える形で成果を残す必要があるんです。
評価はアウトプットしたものに行われる、という意識を持って、独学に取り組む必要があります。
アウトプットを出そうとすると、必然的にインプットが必要になり、勉強しなければならないことも増えていきます。
独学の道のりを決めやすくするためにも、アウトプットすることを意識してみてください。
挫折したからといって諦める必要はない
プログラミングの独学は、入学試験と異なり1発で結果が決まってしまうものではありません。
1度の勉強で完璧にする必要はありませんし、挫折したとしても何度でもやり直しできます。
やり直す回数に上限もありません。
挫折してしまったからそこで終わりではなく、また立ち上がれば良いんです。
やり直しできるものと考えていれば、挫折することに抵抗がなくなるのではないでしょうか。
プログラミング独学で挫折してしまう理由
未経験の方にとって、プログラミングは未知の世界です。
今まで触れたことのない新しいことを勉強するわけですから、挫折はつきものです。
ですが、挫折の理由はそれだけではなくて、近年プログラミング言語が複雑になってきていることも原因の1つと考えられます。
独学で挫折するのはごく自然なこと
プログラミング以外でも、ダイエット、禁煙、英会話も挫折している方が多いといわれていて、挫折はプログラミングに限ったことではありません。
今まで習慣化できていなかったことを始めるわけですから、挫折するのは当然のことだと思います。
挫折するのは当たり前だと思っていただいて問題ありません。
現役のエンジニアでも、挫折を乗り越え続けているだけであって、挫折したことがない人はほとんどいないと思います。
プログラミングについて、全てを把握しているわけではありませんし、記憶力がいいわけでもありません。
プログラミング関連の技術は日々進化していますので、開発の現場は常に変化しています。
正直なところ、ついていくのがやっとで、日々挫折を味わっています。
プログラミングの独学は基礎の段階が一番つまらない
プログラミングは、始めたばかりのころが一番つまらないです。
分からないことばかりで、本の内容を理解することに時間がかかります。
仕事や学業が終わってから独学することになるので、疲れていて集中できないことも。
車の免許を取りに行った時のことを思い出してみてください。
免許センターでの授業はつまらないですし、運転講習は緊張して気疲れしますし、試験なんて受けたくなかった、という方が多いのではないでしょうか。
免許を取るまではすごくつまらなかったと思うのですが、免許をとって自分で車を運転できるようになってからは、生活が便利になって幸せになりませんでしたか?
車が運転できない生活には戻れないと思います。
プログラミングも同じで、始めたばかりの基礎的な学習が一番つまらなくて、プログラミングを習得してモノづくりができるようになると面白くなってきます。
仕方なく独学するのではなく、作りたいものがあるから独学したくなる、という状態にたどり着くまでがつらいのです。
プログラミングの習得には時間がかかる
初心者がプログラミングを習得するためには、200〜250時間必要だといわれています。
毎日2時間勉強したとしても、4ヶ月近くかかる計算です。
独学するプログラミング言語や、学生時代にプログラミングに触れてきたかどうかで違いが出ると思いますが、早くても2〜3ヶ月はかかるのではないでしょうか。
筆者は未経験からエンジニアへ転職しています。
前提知識が全くありませんでしたので、プログラミング言語の勉強と、コンピューターの基礎的な知識の勉強に半年ほどかかりました。
プログラミングの基礎的な学習が一番つまらないにもかかわらず、すぐに習得できるものではないので、つまらない期間を抜け出すために時間がかかることも1つの原因と考えられます。
「1000時間の法則」という言葉をご存知でしょうか?
周囲から認められるまでに、何かを習得したり、1つのことを極めるためは1000時間勉強する必要がある、という原理を説明している言葉です。
プログラミングにも、この言葉がピッタリ当てはまります。
あせりは禁物で、プログラミングの独学は長い目でみる必要があり、コツコツと技術を身につけていく姿勢が大切です。
独学のハードルは上がっている
プログラミング言語は常に進化していて、できることも増えてきています。
できることが増えて便利になった反面、最近の言語はC言語や機械語みたいに文法が単純ではありませんので、ソースコードをみただけでは何をしているのか分かりづらくなってきています。
よく分からない英単語をドットで区切って書いたり、ある英単語の末尾にはカッコをつけて、カッコの中にさらにカッコを書いたり、ダブルクォーテーション(“)で文字を囲ったりなど、一見なにかの呪文にしか見えません。
1つ1つ分解すれば理解できると思うのですが、最初から覚えることが多すぎるんです。
「こんなに覚えられるわけがない…」と感じてしまい、自分は頭が悪いからプログラミングは習得できないと決めつけてしまったり、独学を続けてもいまいち習得できた実感が得られなかったりして、プログラミングの独学を挫折する方が多いのだと思います。
挫折しなかったとしても、独学に対するモチベーションが下がってしまいますよね。
基礎の習得が一番つまらなくて、習得に時間がかかるのは当たり前で、なおかつプログラミング言語がどんどん複雑になっているのですから、独学のハードルは徐々に上がってきているんです。
プログラミング独学で挫折する人の特徴
プログラミングを独学する難易度が上がっているので、効率のよい進め方や、経験者の体験談などを参考にすると思います。
独学に挫折してしまう方の多くは、勉強のやり方ばかり調べていて、一番重要なプログラミングの勉強自体ができていない方が多いのではないでしょうか。
もしあなたが、以下のどれかに当てはまる場合、勉強法が間違っていてもいいですし、効率が悪くてもいいので、とにかくプログラミングを勉強して前に進んで欲しいです。
前に進みながら、勉強法や効率を見直せばいいんです。
プログラミング以前の問題でつまずいている
パソコン関連の用語を知らなかったり、パソコンの使い方に詳しくなかったりしませんか?
パソコンの使い方に関しては、最低限の知識はつけておくべきです。
プログラミングの教材は、パソコンの使い方などの知識は身についている前提で作成されていますので、最低限の知識はないと、独学がスムーズに進められません。
CPU、ストレージ(HDDやSSD)、メモリの役割や、どうやって連携して動いているのか?この程度のコンピュータの仕組みは理解しておきましょう。
すごく詳しくなる必要はありませんが、プログラミングしたものがコンピュータの中でどうやって動いているのかイメージできるようになって、プログラミングの理解を助けてくれます。
アプリのインストールやアンインストール手順や、アプリやパソコンの設定を変更してあなた好みに使いやすくするなど、パソコンの操作全般にも慣れておきましょう。
学習教材をいっぱい持っている
教材を買ったはいいものの、積読(つんどく)の状態になってしまっていないでしょうか?
プログラミングの本は分厚いものが多く、タイトルが難しい名前のものが多いので、所持しただけで勉強した気になってしまいます。
教材によって良いもの悪いものがあるのは事実ですが、悪いものだとしても、教材を使って勉強していないことはもっと悪いことです。
悪い教材に当たってしまったとしても、得られる情報が何もないわけではありません。
全て覚える必要はありませんので、一通りやりきましょう。
勉強法に詳しい
効率のよい勉強法を調べてみたが、調べて終わりになっていませんか?
独学ですので、義務教育と異なり、勉強のやり方も自分で決められます。
効率のよい勉強方法だったり、自分にあった勉強法を調べて、その通り実行できていればすごく良いことです。
ですが、勉強法ばかり調べていて、肝心のプログラミングの勉強ができていないのであれば意味がありません。
勉強法についても、前項に書いた教材と同じで、良い方法と悪い方法があるのは事実です。
良い方法を探すのも大切ですが、悪い方法だったとしても、勉強して前に進むことを優先してください。
勉強法探しに時間をかけすぎるのやめて、勉強そのものに時間を使いましょう。
基礎学習を繰り返してしまう
全て理解してからでないと前に進めないタイプの人に多いのですが、基礎的な内容を何度も繰り返していませんか?
プログラミングの勉強法を紹介しているサイトでも、基礎的な内容を2〜3周繰り返すことをオススメしていることが多いと思います。
悪いことではないのですが、学習する内容は徐々にレベルアップしていって欲しいです。
基礎学習ばかり繰り返していても、モノが作れるようにはなりませんので、ある程度の段階で見切りをつけて、モノ作りを優先するべきです。
基礎学習で学んだ内容全てを、モノ作りで使うわけではありませんし、モノを作りながら基礎学習を進めることも可能です。
作りたいものを完成させた時に、勉強してきたことを思い返してみてください。
基礎学習ばかりしていたことがいかに無駄な時間だったか、実感できると思います。
どうしても挫折から立ち直れない方に向けて
インターネットが発達し、情報を集めやすい時代になりました。
プログラミングに限らず、誰でも勉強できる環境を作りやすくなったため、個人のスキルが重要視される傾向にあります。
今後もこの傾向は変わらないと思いますし、インターネットは日々進化していますので、より傾向は増していくと考えられるでしょう。
時間が経過するほど、ハードルが高くなってしまうんです。
挫折して立ち止まってしまうのは、非常にもったいないと思います。
オンラインのプログラミングスクールでは、無料相談や無料体験を開催しているところがあります。
挫折してしまいそうな方や、すでに挫折中の方には、立ち直るきっかけとなるかもしれませんので、ぜひ活用してみてください。
まとめ 挫折して立ち止まっているのはもったいない!
プログラミングの独学を無理なく続けるコツ、挫折の理由について解説しました。
<独学を無理なく続けるコツ まとめ>
- 独学の中に楽しみを見つけて、勉強しようとせず遊びのつもりで取り組む
- 独学の道のりを決めるためにも、目標を決める
- 成長具合をみるために、勉強したことを振り返ってみる
- 苦痛なインプットばかりするのではなく、アウトプットを楽しむ
<挫折してしまう理由 まとめ>
- 新しいことにチャレンジしているので、挫折してしまうのは当たり前
- プログラミングの勉強は基礎が一番つまらないから、始めたばかりが一番つらい
- プログラミングの習得には時間がかかるため、独学を継続しなければならない
- プログラミング言語が複雑になってきていて、独学のハードルが上がっている
個人のスキルが重要視される時代になったことで、チャレンジ精神が必要不可欠な局面に立たされています。
個人として戦えるスキルを身に付けていないと、時代に取り残されてしまうかもしれません。
自分だけの力で乗り切ることも重要ですが、便利なプログラミングスクールの力を借りることでも、挫折から抜け出すことが可能です。
立ち止まってしまうのはもったいないですから、挫折を回避してプログラミングの独学を続けていって欲しいです。