プログラミングの独学は無理なの?入門者の挫折率が高い3つの理由

こんにちは!侍ブログ編集部(@samuraijuku)です。

プログラミングを独学で勉強することは可能なのでしょうか?

多くの方にこのような質問を投げかけられます。当たり前ですが、独学で習得する人も挫折してしまう人も、どちらも数多くいます。

ただ、圧倒的に挫折してしまう人の方が多いのではないでしょうか?弊社で無料体験に来る方の約半数以上が独学を経験していて、挫折している方が多いのが現状です。

一昔前であれば数十万円の価値がついていたような学習コンテンツが、今や無料でネット上から拾えます。学習の効率は上がり、多種多様な創意工夫されているコンテンツが存在している現在で、未だに挫折者が絶えないのはなぜでしょうか。

今回はプログラミング初学者が挫折してしまう原因を3つの壁という形でまとめてみました。最後では、その壁を乗り越える方法としてプログラミングコミュニティをご紹介させていただいているのでぜひ参考にしてみてください。

全労働者の47%が失業?!AI時代でも高い年収を獲得するためのキャリア戦略
更新日 : 2019年8月22日

独学の課題1:教材の壁

0321-400_700修

教材の壁とは

書店に並ぶ関連書籍を手に取り、開いた瞬間呪文のような文字の羅列が目に飛び込んできて絶望した…。そして、開いた入門書を、そのまま閉じてそのままプログラミングを諦めてしまった。

プログラミングを独学しようと考えたことの有る方であれば、このような経験を一度はしたことがあるのではないでしょうか?プログラミングの入門時点では難解な単語が陳列されているように見えます。

そして、先に進むためには、その単語1つ1つをしっかりと理解していかなければなりません。

プログラミング学習において書籍を利用するのは最も普及している方法ではありますが、このような初心者にはとっつきづらいというデメリットがあるため、本を利用する際もどういう意図で使うのかを明確に工夫する必要があるんです。

まずは動画学習で雰囲気を掴む

そんな教材の壁ですが、今日ではプログラミングに関する質の高い無料教材がどんどんリリースされています。ひと昔前であったら、数十万するような情報が、今では無料で手に入るようにもなりました。

そんな情報のなかでも特に初心者にとって有効な教材が動画です。実際に動画学習はとても有効的な学習方法であるということも研究で認知されています。

例えば、デジタルナレッジ社の調査によれば過去に動画学習を行ったことのある100人の男女にアンケートをした結果「満足・おおむね満足」と回答した人は全体の86%というデータが出ています。

引用元:デジタル・ナレッジ https://www.digital-knowledge.co.jp/archives/1672/

回答者が感じたメリットとしては、「音声や映像つきでわかりやすい」と回答した人が81%、「場所・時間にとらわれず専門的な学習ができる」と回答した人が53%とのことです。

引用元:デジタル・ナレッジ https://www.digital-knowledge.co.jp/archives/1672/

動画でプログラミングを学べば、情報量が限られてる分、要点を抑えて学べます。また、わからない言葉が出てきても動画は視覚的にも分かりやすいため、真似をすることによってスムーズに学習を進めることが出来ます。

専門用語の多いプログラミングにおいて、分かりやすい動画はとても効率のよい学習方法になります。動画学習のコツは2回以上繰り返し勉強することです。そうすることによって、頭だけではなく、体に染み込ませることによって、プログラミング基礎を叩き込むことが出来ます。

次の記事でも動画学習サービスの効率的な利用方法を解説していますので合わせてご覧ください。

ドットインストールを活用して未経験からエンジニアに就職した体験記

実践型学習サイトが自主学習を加速させる

動画学習ではインプットが主になってしまうかと思います。もちろん動画を見ながら手を動かすことでアウトプットを同時に行う方もいるかと思いますが、動画を巻き戻したり、やり方が最適化されていないので大変ですよね。

そのため、動画学習は雰囲気を掴むために使い、実践型学習サイトで基礎固めを本格的に行うことをオススメします。実践型学習サイトを使うと、項目ごとに分けられており学習しやすい状態で提供されているものがほとんどです。

手を動かしながら学習できるものが多いので、非常に学習効率もよく、どこから学習したらいいか分からないといったような超入門者の方でも安心して学習に取り組むことができる点も強みですね。

無料プログラミング学習サイトおすすめTOP5

独学でさらにスキルの幅を持たせるなら書籍を探せ

学習サイトでは効率よく、よく使う文法や知識をインプットできたと思います。基礎的なことや少しの応用レベルはマスターできているかもしれません。

しかし、いざ開発現場に入ると、動画学習で効率的に学んだとはいえ、予想もしない指示を受けることもあります。

ネットでググってもなかなか出てこない…
そもそもなんて調べていいか分からない…

こんなことを考えることが何回あることか。おそらく誰でもあるでしょう。そんなことにならないようにある程度書籍でさらっておく必要があるんです。そして、その使った書籍は何も完璧にマスターする必要はありません。

その使った書籍は学習後も辞書的に使ったっていいんです。どうです?1冊くらい持ってみたくなったでしょう?

プログラミング初心者必読!おすすめ書籍9選

独学の課題1要約まとめ(読むのが面倒な方向け)

まずはお伝えしたのは、動画学習がおすすめということでした。動画学習の勉強法としては2回繰り返す勉強法でしたね。繰り返すことで反復して頭だけでなく体で覚え込んでいきます。

動画学習サイトとして有名なのがドットインストールでした。さらに積極的に基礎固めする際には実践型の学習サイトをさらにおすすめしています。

手を動かしながらスムーズに学習ができるように設計されており、頭と体で学習するには必須の学習環境となりつつありますね。こちらも合わせてチェックすると吉!

さらに動画学習サイトや実践型の学習サイトでは網羅しきれない箇所をどうするのかというと書籍での学習ということになります。

これにはコツがあって、1から書籍の隅々まで全てを見て学習するわけではなく、あくまで必要なことができたら辞書的に使うというフランクな使い方をおすすめしています。

まとめると教材の壁を克服するには・・・

  • 動画学習で2回繰り返す学習方法をする
  • 実践型学習サイトで手を動かしながら基礎固めの学習をする
  • さらに応用的な学習には必要になった時に書籍を辞書的に使う

独学の課題2:時間の壁

Basic RGB

時間の壁とは

読者の大半は普段仕事を社会人に当たるのではないでしょうか。

もちろん、大学生だから、高校生だから時間があるとは言いませんが、生計を保ちながら、何か新しいスキルを身につけるというのはどんなことでも時間という壁で阻まれるものです。

独学のみでプログラミングスキルを身につけようとした場合、約1000時間の学習時間を確保しなければならないと言われています。いかに、その時間を生み出していくかが命題になります。

現状の時間の使い方を把握する

時間の壁の話を聞いて時間を無駄にできないことは分かったいただけましたか?そう、時間を無駄にできないのです。時間を無駄にしないためには、時間をどのように使っているか知る必要がありますね。

自分の現在の時間の使い方を把握していますか?意外と把握できていないことが多いですよね。実は無駄に時間を過ごしていることが多いんです。

まずは1日のタイムスケジュールを把握してみましょう。そのときに使ってほしいツールがあります。それがtoggl(トグル)です。

Toggl_-_Time_Tracker___Employee_Timesheet_Software

引用元:toggl https://toggl.com/

このツールは、時間管理できるツールです。行動別に時間を測定して、それをグラフ化して視覚化できるツールなんです。

1日だけでもいいですが、できれば1週間続けて、何に時間を費やして、どのくらい行動できているのかを調べる機会を作ることをオススメします。

隙間時間を確保する

CITIZENの調査によるとサラリーマンの平均可処分時間、つまり隙間時間は「平均2.6時間 / 日」と言われています。週5日働くサラリーマンであれば平日で13時間、土日に3時間ずつ学習時間を取れば1週間で約20時間、つまり1ヶ月で80時間になります。

仮に1000時間で習得できるとすると約1年で習得できる計算になります。通勤時間に動画を見たり、通勤前か後にカフェで学習時間を作ったり、いかにして平日の隙間時間を有効に使えるかが肝になってきます。

しかしながら、なんだかんだと時間は過ぎ去ってしまうものです。SNS・ゲーム・漫画・テレビなど、隙間時間も誘惑が多く存在しています。

本当にその計画通り学習を進めようと考えるのであれば時間を確保しつつ、学習するやる気、つまりモチベーションをしっかりと保つ必要があります。

時間効率を上げる方法は工夫次第でも出来るので、次の記事なども参考にしっかりコミット出来る仕組みを作りましょう。

プログラミング学習を効率化する9つの方法

独学の課題2要約まとめ(読むのが面倒な方向け)

先ほどお伝えしたように、通常独学のみでプログラミングスキルを身につけようとすると、学習時間は1000時間必要だと言われています。時間があってもあっても足りないと感じてしまうぐらい長い道のりなのかもしれません。

大切なのはまず、現在の時間の使い方を把握することでしたね。この時に使うツールがtoggl(トグル)です。まずは現状何に時間を使っているのか把握することから始めましょう。

次に意識するのが隙間時間を有効利用するということです。サラリーマンの平均隙間時間は「2.6時間/日」あるので、仮に1000時間の学習時間が必要なら1年間の隙間時間でおおよそ確保できる計算になります。それだけ隙間時間は重いということですね!

まとめると時間の壁を超えるには・・・

  • 現在の時間の使い方を把握すること
  • 使うツールはtoggl(トグル)がおすすめ
  • 隙間時間を有効活用すること

独学の課題3:モチベーションの壁

Basic RGB

モチベーションの壁とは

プログラミング学習はそのほとんどがエラーとの戦いと言っても良いものです。事実、プログラミング学習に費やす時間の約8割はエラーの処理時間、つまり、つまづいている時間であると言われています。

プログラミングを少しでも経験された方ならきっと共感していただけるのではないでしょうか。プログラミングの習得には何度エラーとぶつかろうとも諦めない根気強さが必要になります。そのためには高いモチベーションを維持しつづける必要があります。

このモチベーションの壁が一番の挫折の原因と言っても良いでしょう。

※エラー解決について詳しく知りたい方はこちらの記事で詳しく紹介しているので、見てみてください!

プログラミング学習でエラーに躓く原因とは?

重要なのは目的・目標を決めること

shutterstock_134150393

画像:Shutterstock

モチベーションを保つ上で非常に重要なこと、それは目的と目標を決めることです。何事もそうですが、ゴールがイメージできなければモチベーションを保つことはできません。

まず目的を決めること

あなたは目的と目標の違いを理解しているでしょうか?目的はプログラミングを学習することで最終的にどうなりたいのか、どんな状態を実現したいのかということです。心から自分が望む目的を設定出来ればそれだけで挫折する可能性はぐっと減らすことができます。

特に学習を始める時点で目的を見直すことが有効ですが、目的の認識として気をつけたい点が一つあります。それは、プログラミングができるようになることを目的としてしまわないようにすることです。

なんとなくプログラミングやりたいというのでは、楽しさを感じることもできず、殆どの人がすぐに投げ出してしまいます。目的とは様々な新しいモノを見るのが好きなので、時間に縛られない働き方を実現するといったようなことです。

自分を欲求で動かす事が出来れば、むしろ学習はやりたいことに変えていくこともできます。目標設定というのは弊社でかなり重要視していることで無料体験レッスンにも組み込んでいるものです。無料ですので、目標設定がうまくできないと悩んでいる方は一度弊社にお越しください!

1時間で悩み解決!無料体験レッスンの様子を知りたい方はこちら

目的に沿った目標を決めること

目標は目的を達成するまでのプロット、つまり道標です。一般的な目標の例としては自分の作りたいサービスを作るということが効果的です。プログラミングスキルを用いて起業した堀江貴文さんも

何でもいいから自分があったらいいなーみたいなウェブサービスを作ると実践的で早いですよ。カネかからないし。作り方はネットに書いてあるし。

というアドバイスをされています。作れるようになりたければ作ろうとしてみるというのは自然な考え方と言えるでしょう。なかなか堀江さんのようにはいかないかも知れませんが、目標を決めるのは重要であることはこの発言からも感じていただけると思います。

弊社、侍エンジニア塾でもオリジナルサービス制作に力を入れており、実際に7ヶ月間で2つのオリジナルサービスを作り、起業した方もいらっしゃいます。その方のインタビューを記事にまとめましたので、ご覧ください!

32歳ベンチャー企業元役員が起業してプログラミングを学んだ話

目標設定後の習慣化がとても大切

さて、目標を設定したらこれで完璧とはなりません。これからが大切です。目標設定をすれば、モチベーションは確かに保たれます。ですが、それもつかの間。

目標を意識をしなければ、どんどんモチベーションは薄れていきます。そこで大切なのが習慣化です。やる気というモチベーションに左右される状態では、日々の学習にムラが出てきます。

そのために、学習の習慣化が大切になってくるんですね。それはそうと、その習慣化をどうすればいいのでしょうか?実は簡単な方法が1つあるので、ご紹介しますね!

勉強をすると決めてから、張り切って勉強時間をたくさん取って勢いよくロケットスタートする方がいると思います。ですが習慣化する時には、最初の勉強始めをなるべく軽めの勉強にして、徐々に勉強時間を増やしていく方法が行動心理学的に習慣化しやすいと言われています。一度試してみてくださいね!

独学の課題3要約まとめ(読むのが面倒な方向け)

まず一番の挫折の原因がココ、モチベーションの維持にあることを再度認識しましょう。そのモチベーション維持にクリティカルにヒットする解決法として、目的と目標を決めることというのがありました。

目的というのは、自分が成し遂げたいこと、プログラミング学習を終えた先に得たい成果のことを言います。目標は設定した目的に対して前進できる通過点のことを言います。

まず目的を設定し、目的に沿った目標立て、行動を起こしていくわけですが、その行動を習慣化することが3つ目に大事なポイントです。行動の例で言うと、プログラミング学習をするという行動例が挙げられます。

プログラミング学習をすることの習慣化のコツとしては、徐々に勉強時間を増やしていくといった徐々に行動量を増やすことが行動心理学的にも習慣化しやすいとされています。

まとめると、モチベーション維持のためには・・・

  • 目的を設定すること
  • 目的に沿った目標を設定すること
  • 目標に沿った必要な行動を習慣化していくこと
  • 習慣化のコツは行動量を徐々に増やしていくこと

最大の壁は自分である

これまで3つの壁を紹介してきましたが、最大の壁は自分です。これまで紹介した壁を感じてプログラミングが理解できず難しいや向いていないと思い込む人が多いく、学習を継続できない人が多いです。

プログラミング初心者にとっては理解できないのは当たり前ですので安心してください。基本的に新しい事を始めて得意となるまで1000時間ほど掛かるといわれています。1000時間の法則といわれたりもします。

プログラミング初心者のときは、理解できず辛いですが継続できるようにしましょう。まずは1年学習を継続すべきです。

最大の壁を打ち破るコツ

継続が大事と伝えましたが、継続するためにはコツが必要なんです。コツとは、

  • 横の繋がりを作る
  • 相談できる人を見つける

横の繋がりを作ることは大切です。イベントに参加したりして学習仲間を見つけましょう。一緒に学習する仲間がいると心強く継続しやすくなります。

また、相談できる人を見つけることも大切です。どうしても、自分では1人では理解できないことがでてきたりします。そのときに気軽に相談できる人がいるだけで、自分に合った学習方法や学習手順、その人の経験を知ることができます。

それでもプログラミング学習で挫折しそうな人は?

上で紹介した、初心者が挫折しやすい

  • 教材の壁
  • 時間の壁
  • モチベーションの壁

この3つを改善するためには、学習方法を根本的に変えて効率よく学習を進める必要があります。

  • 教材の選定は間違っていないか、選んだ教材で進めて大丈夫なのか
  • 学習プランはしっかり組まれているか、そのプランで自分の目的を達成できそうか
  • 学習期間はどのくらいかかりそうか、1日どのくらい学習すればスキルを取得できそうか


この内容をもう一度見直してみましょう。

すべて完璧に設定できているなら、あとはプログラミング学習を進めるだけです。逆に、少しでも不安がある場合は、挫折してしまう可能性があります。

学習プランとかないしこのままだと挫折しそう・・・

このように感じた人もいると思います。このまま不安を抱えて学習を進めるは危険です。

その場合は、弊社で行っている「無料体験レッスン」に参加してみてください。

この無料体験レッスンでは、あなたがプログラミングを学ぶ目的を明確にして、その明確になったキャリアに向かって最短でスキルを習得するための学習プランを提案させて頂きます。学習プランがあれば、独学でも無駄のない学習で最速でエンジニアになれるイメージが湧くと思います。

オンラインでも無料体験レッスンは受講できるので、気軽にお申し込みください。

最後に

すでに学習を始めている方は思い当たる節もあったのではないかと思います。この3つの壁を乗り越えることこそがプログラミングスキルを習得する必須条件になりますので、プログラミング学習をする際はぜひ意識してみてください!

LINEで送る
Pocket

最短でエンジニアを目指すなら侍エンジニア塾

cta_under_bnr

侍エンジニア塾は業界で初めてマンツーマンレッスンを始めたプログラミングスクールです。これまでの指導実績は16,000名を超え、未経験から数多くのエンジニアを輩出しています。

あなたの目的に合わせてカリキュラムを作成し、現役エンジニア講師が専属であなたの学習をサポートするため効率よく学習を進めることができますよ。

無理な勧誘などは一切ありません。まずは無料体験レッスンを受講ください。

無料体験レッスンの詳細はこちら

書いた人

侍ブログ編集部

侍ブログ編集部

侍エンジニア塾は「人生を変えるプログラミング学習」をコンセンプトに、過去多くのフリーランスエンジニアを輩出したプログラミングスクールです。プログラミングに役立つ情報や有用な情報を発信していきます。
サービスページはこちら
ツイッターはこちら
フェイスブックはこちら

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説