
プログラミングを学習した人の9割は挫折を経験していると言ますが、挫折しないための方法を知っていれば大丈夫です。
一度挫折すると立ち直るのはそう簡単なことではありません。

今回の記事では、自分を信じ、挫折することなくプログラミングを学習する方法について分析しました。
これからプログラミングを学習したい人の不安や心配を取り除く内容になっています。
こんな方におすすめ
- プログラミング学習を楽しいと感じていない人
- プログラミング学習を始めても挫折しないか不安な人
- プログラミング学習への不安を取り除きたい人
習慣化のコンサルタントの古川武士氏は、何かを始めようと意気込んでスタートさせても、最初の一週間で約40%挫折すると言います。

いわゆる三日坊主というやつです。
プログラミングは技術の進化によって、新しい技術が生み出されていて、それらを覚えるため学習はずっと続ける必要があります。
そのため、挫折しない学習のコツは早いうちに身につけておくことはとても大切です。
今回の記事は以下のような構成で進めています。
本記事の内容
- プログラミング学習で挫折する3つの理由とは?
- 挫折せず学習を続ける3つのコツ
当ブログ管理人のプロフィール

現在プログラミング歴6ヶ月ほどです。
複業としてプログラミングを開始して、2ヶ月後にWordpress案件を受注しました。その後、クラウドワークスで継続的にお仕事をしています。
プログラミングを開始してから、平均月収は約10万円程度です。
いわゆるアラサーという年代の人たちにとって、エンジニアに挑戦するかどうかは人生を左右する大きな選択です。
覚悟を決めて頑張ろうとする人たちにとって、学習を始めるかどうかはとても大切な選択ですし、せっかくプログラミング学習を始めたとしても挫折したら全く意味がありません。
それでは、はじめに挫折する理由について詳しく見てきましょう。
Contents
プログラミング学習で挫折する3つの理由とは?

①独学で学習ロードマップがない

基礎を覚えてスタートラインに立つことができても、そこからの学習の道筋がわからないため、疲弊してやめてしまうのです。
多くの人が経験しているように、progate・ドットインストールで基礎知識は全て網羅できると思います。
しかし、プログラミングはそこでスタートラインに立ったばかりで、そこからが長い道のりなのです。
プログラミング初学者の方でこのように発信されている方がいました。
独学でググりつつの学習には限界があるんでしょうかね。
くぅ。たぶん挫折1回目が今きてます。
プログラミング学習のコミュニティに入って、案件とかの時も質問できるようにしないときつそう🥲#駆け出しエンジニアと繋がりたい— ペソ|web制作学習中 (@pesomin1021) March 20, 2021
学習するための情報がネット上に溢れているとはいえ、その情報が初学者の学習の役に立つがどうかは違います。
初学者の時は、たくさんの情報があったとしても基礎がわからないため、全く役に立ちません。
また、何が問題なのかもわからないという、お手上げ状態なのです。
そのため、一つずつレベルアップできるような適切なロードマップがあることは、早く上達できる近道になり得るのです。
独学はうまくいかないことの方が多いですよね。詳しくはこの記事で紹介しています。『プログラミングの独学が難しい理由と継続するための解決策3つ』
②エラーが解決できない
自分で勉強の教材を探して、自分のレベルアップのために学習するというのは、非常に大切なのことです。
これを自走力ともいい、エンジニアで活躍していくためには必須のスキルの一つと言われています。
プログラミング学習についてのお役立ち情報が投稿されているプラットフォーム:Qiitaには、毎日、プログラミングについての学習講座などが投稿されています。
参考の投稿:深夜だから個人的なプログラミング学習方法を書くよ!
その投稿を元に、自分でコードを書いて真似をして学ぶのはいいのですが、頻繁にエラーという壁にぶち当たるのです。
そんな時、エラーを解決するのがエンジニアとしての腕の見せ所なのですが、初学者には正直無理ゲーと言っても過言ではありません。

同じ学習仲間の一人が、Qiitaの投稿に沿って、学んでいたのですが、あるエラーに遭遇してしまい、そこで1週間以上悩んでしまいました。
全く解決ができず、聞く人もいないため、もう無理だ。とプログラミングから遠ざかってしまったそうです。
このようにエラーというのは初学者にとって大きな壁であり、人によっては脱落してしまう原因になりえます。
③言語が難しい。環境構築ができない。

最初に使いこなせるようになるべきは、html・cssなのです。
しかし、それを飛び越えて、流行りの言語であるRubyやPythonに挑戦しようとする初学者がいます。
また、開発環境を構築するツールであるDockerを有名だからと張り切ってやるのですが、Dockerの構築は初学者には少し難解です。
いきなり挑戦するのは、エラーが解決できず、つまらないと感じる原因になりかねません。
こうした応用技術に挑戦するためには、基礎の基礎がわかっていないとダメです。
壁にぶつかってしまっては面白味を感じることなく、脱落してしまう危険性があります。
プログラミングがつまらないと感じる原因と対処について紹介しています。『【検証済】プログラミングがつまらないと感じる3つの原因と効果的な対策』
以上のように、代表的な挫折する理由を列挙してみました。
挫折する理由は、人によって様々です。
せっかく始めたのであれば、持続するのが良いですが、果たして挫折を未然に防ぐにはどのようにしたらいいのか。
これから、挫折せず学習を続けるコツを3つご説明していきます。
挫折せず学習を続ける3つのコツ

①エラーに悩んだら、質問できる環境を作る
学習を続けるためには環境づくりは非常に大切です。
特に、エラーに迷ったらすぐ質問できる環境に身をおくことで、スムーズに学習を進めることができます。

もし、できるのであれば、誰かに教えることをおすすめします。
誰かに役立つことをすると、自分自身の学習へのモチベーションを高めるきっかけになりえ、ドーパミンが溢れ出ます。
その結果、プログラミングに対してのやる気を持続することができます。(1)
このドーパミンは通称「やる気ホルモン」と呼ばれていて、これが溢れ出ている時、前向きにどんどん学習を進めることができます。
その結果、難しいエラーにも立ち向かうことができるのです。
このドーパミンを効率よく分泌させるために、必要なことは自分の行為が役に立ったと目に見えてわかることといいます。
プログラミングで言えば、スクールや勉強会のような場所に積極的に足を運び、率先して教えることが良い方法ですね。
自分のアウトプットにもなりますし、少し学んだらそれを誰かに教えたりできる環境に身を置くことが、やる気を持続させる方法の一つと言えます。
②学習しながら、次のステップへの行動を始める
プログラミング学習を始めた目的は、なんでしょうか?
転職でしょうか?副業でしょうか?
いずれにしても、学習しながら、次のステップである転職活動を始めたり、副業を始めることは、モチベーションを維持するために重要です。
なぜなら、プログラミングのような基礎学習を毎日続けることは、いわばアスリートと同じといえるからで、アスリートの人たちがモチベーションを高めるためにやっていることは、常に前に進んでいるという達成感を味うことなのです。
例えば、「今週は筋力UPのために筋トレを行う」と決めたら必ずやり遂げるのです。
その目標をしっかりと達成させ、「前に進み成長している」と達成感を感じることで、日々のトレーニングに向き合う姿勢を崩すことなく、続けていられると言います。
また、それを裏付けるかのように、ハーバード大学で行われたモチベーションに関しての研究では、優秀なビジネスマンを約300人の仕事の生産性やモチベーションに対して、12,000時間以上記録をし続けた結果、人間のモチベーションが高まるのは、少しでも自分のやっていることが前に進んでいるという感覚を味わうことでした。(2)
つまり、プログラミングで転職を目標としているのであれば、
- 経歴書を書く
- エンジニアの先輩に自分をアピールする
と言った行為が前に進んでいるという実感を得ることができます。
それによって、モチベーション高く、学習に取り組み続けることが出来るのです。
③学習の目標を高くし過ぎない
学習のモチベーションが高い時は、ついつい他の言語に目移りしがちです。

水泳選手のメンタル面をサポートしている脳外科医の林成之先生によると、競技中にゴールを意識すると、スピードが遅くなってしまうと言います。(3)
それと同じく、簡単な基礎を学んでいる最中に、次はなんの勉強をしようかな。
であったり、基礎もしっかりできていないのに、レベルの高いAWSを学んだり、Dockerで環境構築を学ぶと言ったことに寄り道すると、学習効率が落ちてしまいます。

それを防ぐために必要なことは、
- 自分のレベルを知る。
- 正しいロードマップに従い学習。
これによって、着実に実力が上がっていくのではないでしょうか。
「挫折した」「プログラミングをやめよう」と言ったネガティブな情報が多い反面、プログラミングで人生を好転させた人のエピソードが数多くあります。
人はポジティブなエピソードを読んだことによって、自分自身の未来の姿を想像できるようになりますし、これによって、モチベーションが高まり、前向きになれるのは間違いありません。
まずは目の前の一歩に集中することが大切です。
まとめ:学習が目的ではない。目標をもって頑張ろう。

挫折は悪いことと思われがちですが、挫折もプロセスの一つだと考えれば、自分自身の人生の糧となりえます。
確かに挫折により、プログラミングスキルに関してだけはライバルから遅れはとっているかもしれません。
しかし、挫折という苦しみを経験し、再度立ち上がるのではあれば、人生経験において先を進んでいるのです。
また挫折経験をポジティブなものとして捉えることで、自分自身への自己肯定感や、他者への配慮ができようになるので、中途入社で必要なヒューマンスキルを獲得したと言えます。
むしろ、挫折率や世間の目は気にせず、一念発起してプログラミングの学習を始めると決めるのであれば、ぜひやるべきです。
未経験からエンジニアになった人のTwitterでの発信や、インタビューを読むとずっとポジティブな考え方を持っていますよね。
ポジティブな考え方が与える自分自身への影響について、カナダ人心理学者であるアルバート・バンデューラ氏は、「自分が目標を必ず達成できると信じる力が強い人ほど、死ぬ気で努力する」と言っています。
つまり、自己効力感と呼ばれている自分の可能性を信じる力が強いほど、積極的に目標を達成するために行動するということです。
挑戦を決意した時、前に進めるかで自分自身の人生を謳歌できるかが決まってくるのではないでしょうか。
他の学習者の体験談もありますので、ぜひ、読んでみてくださいね。
参考書籍
(1)鈴木祐 「科学的な適職」(クロスメディア・パブリッシング, 2019) kindle 956
(2)鈴木祐 「科学的な適職」(クロスメディア・パブリッシング, 2019) kindle 956
(3)森田敏宏 やるべきことがみるみる片づく東大ドクター流やる気と集中力の引き出す技術 (クロスメディア・パブリッシング, 2016) kindle917
