なぜプログラミング独学は難しいのか?

 

「未経験だけど今からプログラミングを学習したい!」と思った時にまず悩むのが、独学をするか、プログラミングスクールを使い人に教わるかの二択です。

独学でプログラミングを学ぶ女性

独学だとお金をかけず勉強できるけれど、途中で挫折してしまいそう…

でもプログラミングスクールって高いんでしょ?どこが良いかもわからないし。

と二つの思いが、あなたの頭の中で渦巻いていると思います。
そこで当ページでは、独学とプログラミングスクールでの学習の違い、そして両者に共通するプログラミング学習において必須な力とは何かお伝えしていきます。
プログラミング独学の挫折率は、なんと80%を超えるとも言われています。

挫折率80%を超えるプログラミングの独学

ではなぜ、プログラミングの独学が難しいのでしょうか?
プログラミングはパソコン1台あれば始められますし、書店にいけば参考書も豊富、さらに最近ではプログラミング学習のためのサービスも多数登場しています。
当サイトでもこちらの記事で独学に役立つサービスを紹介しています。

このように、私が学習を始めた何年も前に比べれば、圧倒的にプログラミング学習の環境は整っていると言えます。
しかし、それでも未だプログラミングを独学で始め挫折してしまった…と声を聞きます。それはなぜか。

最初のうち、成長を感じ難い訳

 

プログラミングの学習は複数の知識が一定の水準に達した時に初めて成長を実感できます。
例えばwebサービスを作るのであれば、html・CSSに始まり、JavaScript、PHPまたはRubyを学び、サーバーの設定と、複数の知識が身についた時に初めて、自分がこれを作った、と達成感が得られるのです。

これは私たちが体験してきた、学校の勉強の満足度とは少々異なります。
それこそ、小学一年生でもドリルの最初の小テストで満点を取るだけでも成長が実感できますが、プログラミングにはそんな満足感が最初の内はありません。

プログラミング学習の成長イメージグラフ

しかも慣れない内は、簡単な問題でもちょっとした間違いで2.3時間使って悩んでしまうことも。
最初の成長が実感できないうちに、少しのミスで数時間も費やしていると、そこで多くの人が挫折してしまうのも仕方ありません。
代わりに一定のレベルまで達すれば、あれもこれもできる!と想像が広がっていき楽しくなってくるのですが、そこまで到達するのが非常に困難です。

プログラミングが向いている人って?

とはいえ、一昔前にはほとんどの人が独学していたわけですし、プログラミングスクールに通う人も卒業後さらに知識を深めるには独学が必要です。
では、どんな人がプログラミング学習には向いているのでしょうか?

それは決して、センスや頭の良さではありません。
大切なのは、「自走力」です。

プログラミング学習に必要な「自走力」

自走力とは、簡単に言えば自分で問題を設定・解決する能力のことです。
何かプログラミングで作りたいものがある時、または解決したい問題がある時に「どんな技術や設計が必要か、そして自分に足らない知識があるとしたら、それは何か。」を考えて調べる力です。

この力があれば、何を学ぶべきか自分でわかるので、最初から独学でもプログラミングを身につけられます。
多少の困難があっても、ゴールが見えているから進んでいる実感が持てるからです。
プログラミングスクールに通って最初はレールを引いてもらいながら学習するとしても、最終的には自走力が必要になります。
なぜなら、いざプログラミングを使う職場に入ったら、いつまでも先輩が指導してくれるわけではなく、現場でこそ求められるのが自走力だからです。

プログラミングスクールは自転車の漕ぎ方を学ぶ時の補助輪のような存在です。多くの人は補助輪をつけて最初は練習した方が効率的ですが、最終的には外さないといけません。
スクールだからといって、いつまでも誰かが学習のレールを引いてくれると思う人にプログラミングは向いていないのです。

基礎習得の最短ルートがスクール

プログラミングスクールはいわば自転車の補助輪のような存在

プログラミングスクールは、独学しようとする時に転び原因を防ぐための自転車の補助輪と話をしました。
実際、プログラミングの学習には以下の転びポイントがあります。

自分がどのプログラミング言語を学ぶべきかわからない。
どの学習教材が自分に必要かわからない。
プログラミング学習を開始するための、パソコンの環境設定がわからない。
エラーが起きた時に、どう解決すべきかがわからない。
どれぐらいの時間勉強したら、次のステップに進むべきかわからない。
自分の書いたプログラムがとりあえず動いていても、クオリティの高いものかわからない。

こんな、ないない尽くしなのがプログラミング学習であり、そのサポートをしてくれるのがプログラミングスクールです。
先に書いた自走力があれば、こんな問題でも自力で乗り越えていけます。

ですが、すべての人に最初からいきなり自走力を求めるは酷な話です。
もしこのページを読んで、独学が難しいと感じたのであれば、スクールでの学習を考えてみてください。
費用が高いと感じるかもしれませんが結果的に効率的ですし、自分への投資と考え、払ったからには頑張ろう!と思い、より挫折率を下げることもできます。あなたの性質を見つめて、自分にあったスタイルでプログラミング学習をはじめてみましょう。