プログラミング独学の挫折をしないためにできることと挫折理由とは??

今回は挫折について記事を書いていきたい。人間誰しも生きていれば「あーあれが挫折だったのかもなあ」とか「挫折しそう・・・」みたいな経験はあるんじゃないかと思う。そう考えると物事に立ち向かう時に挫折はつきものなのかもしれない。そしてこれはプログラミングを勉強していこうと思った君にも訪れる可能性がある。

「プログラミングなんてちょろいわ!余裕!」と言いたい気持ちも分かるけど、実際のところ学び始めなんてため息をついてしまう時もあるはず。でも大丈夫だプログラミングを挫折する人は君以外にもきっといる。

プログラミングは挫折する

こんな記事を読んでいるぐらいだから、今プログラミングを学んでいてなんかうまくいかないなあ・・・とかこれから学習したいけど、どれぐらい大変なんだろう?と思っているんじゃないかと思う。侍エンジニア塾調べによるとプログラミング学習の際に、挫折や行き詰まりを感じたことがある人は87.5%。驚異的な数字だ。

【挫折率90%】プログラミング学習に失敗する原因と正しい学習ステップ

100人いれば87人が挫折や行き詰まりを感じたことがあるという計算。むしろそれらを感じずに進める人は13人ほどということだ。これはもう挫折や行き詰まりを感じてしまうのは普通と言ってもいいだろう。87.5%うまくいかないと聞けば、そりゃあうまくいかんよなあ・・・と思ってしまう。

挫折する原因

挫折する原因を見てみるとこんな感じ。

 

【挫折率90%】プログラミング学習に失敗する原因と正しい学習ステップ

プログラミング挫折ランキング
  1. 不明点を聞ける環境になかった・・・40.8%
  2. エラーが解決できなかった・・・36.3%
  3. モチベーションが続かなかった・・・33.3%

どうだろう、不明点を聞ける環境になかったっていうのが40.8%ということでかなりの高パーセンテージを記録しています。プログラミングを学び始めるとエラーが出まくるし、そのエラーが英語だし調べてもよく分からないし絶望に陥るっていうパターンはよくあるんじゃないかと思う。2位はエラーが解決できなかったですしね。3位はモチベーションが続かなかったという結果です。

プログラミングを学習している人やしたことがある人ならこの3つどれか「そうだよなあ・・・」と共感してしまう部分もあると思う。そしてきっとそんな要因を取り除くことがプログラミング学習を快適に進めることにつながるのだろう。

不明点を聞ける環境を作る

まずは第1位に輝いた不明点を聞ける環境になかったっていうことから、不明点を聞ける環境をつくるっていうことを推したい。これは以下の記事でも書いたんだけど、やっぱり分からないところを聞ける環境っていうのは大事だと思います。

その際に使えるサービスはいくつかあるので少し見ていこう。

ココナラ

ココナラはスキルの売り買いができるサービス。例えばイラストを描いてあげるよーとかデザインしてあげるよーとかいろいろあります。もちろんプログラミングに関することもたくさんあって、「IT・プログラミング・開発」のカテゴリを見てみるとたくさんの種類がある。

ココナラ

プログラミングって検索してみると2321件の募集があったりするから量もかなりありますよね。

どんな内容なのかを見てみるとプログラミングを教えますっていうものも結構あるから、自分の学びたいプログラミング言語のものがあったら詳細を見てみるといいですよ。

  • PHPプログラミング教えます
  • プログラミングお手伝いします
  • 環境構築のお手伝いします
  • ・・・

ココナラはいろんな個人がこういうことしますよーっていうスキルを販売しているから、販売している人のプロフィール情報なんかも確認しておくといいと思います。企業が相手じゃないから変なトラブルになりたくないしね。良い感じのものがあればそこまで高くない料金で教えてもらうことも可能ですね。

Menta

Menta

Mentaは教えたい人と教わりたい人を繋いでくれるサービス。デザインやマーケティング、ライティングなどカテゴリは多数あるね。カテゴリをエンジニアにして[未経験・初心者向け]に絞り込んでみると652人のメンターが見つかった。

スキルタグや料金・評価でも選ぶことができるから、自分の学びたい技術や良い感じの料金を指定して検索してみるといいと思います。

もしかしたら良いメンターに出会うことができるかもしれない。料金は人によって結構まちまちだね。

プログラミングスクール

プログラミングスクールは定番だけど、不明点をすぐに聞けるっていう点では最適なのかなあと思う。自分もプログラミングスクールに最初通ってたんだけど分からないところはすぐ聞いて解決してっていう流れで大分助かりました。ただ料金が高いからそのあたりはいくつかのプログラミングスクールを見比べてみるといいと思います。

それとどこのプログラミングスクールでもそうだと思うけど、質問対応はどの時間帯でどんなスタイルでできるのか?っていうの確認しておきましょう。例えばDMMWebCampならこんな感じ。

13時から22時で金曜日は定休日っていう感じですね。分からないところはすぐに聞いて回答を得られるのがやっぱりプログラミングスクールの良いところでしょう。40.8%の不明点を聞ける環境になかったという挫折理由を考えるとプログラミングスクールはあり。

エラーを解決する

次は36.3%を記録したエラーが解決できなかったということだ。プログラミングをしていればエラーが出ない日なんてないほど日常茶飯事だと思う。開発に慣れていればまたエラーか・・・ふむふむ・・・直った!っていう繰り返しだけど、知識の少ない初学者のうちは数々のエラーに打ちのめされてしまうことも多々あると思う。

エラーに関しては下の記事でも書いたんだけど、エラー解決の流れは大体決まっていると思う。

エラー解決の流れ
  1. エラーが出る(エラーメッセージが出る)
  2. エラーメッセージを読む(理解する)
  3. 理解できない場合翻訳などあらゆる手段を使い理解する
  4. わからなければ調べる
  5. エラーの原因を排除する

言葉にすれば簡単だけど、エラーメッセージはそもそも英語だし調べても何を言っているんだ?となってしまう場合もある。そもそも検索結果に英語が出てくることは多いから翻訳しないと読めなかったりするしね。

だけど読むんだ・・・翻訳でも何でもあらゆる手段を使って理解するんだ・・・。

ただこれも初学者一人の力だとエラーの内容見てもいまいちピンとこないだろう、その状況を起こさないためにも他の人に聞ける環境を作るっていうことは大事なんだ。エラーにぶち当たってどうしようもない時には学習環境を見直してみるのも一つの手だ。

モチベ管理

第3位のモチベーションが続かなかったは33.3%でしたね。モチベーションが続かないっていうのは何かをやっていればよくあることだと思うけど、まあ続かなくて辞めようって思えるならやめてしまってもいいんじゃないかと思う。プログラミングって最初躓くこと多いと思うし、ちょっとやってみるかあぐらいだと途中で挫折する人が大多数でしょう。

でもそうしたくはないですよね、そうならないために目標を定めて取り組んでみるのはどうだろうか。今一度考えてみよう。

自分はプログラミングを勉強して何をしたいのか

この答えが明確に決まっている人は強いだろうしモチベ管理なんてしなくていいと思う。思いの強さが強ければモチベがあ・・・なんて悩まないだろうしね。4番目の「学習のゴールが分からなかった」っていうのもプログラミングをして何をしたいのか?っていうのに通ずる部分がありそう。

プログラミングを勉強する目的は人それぞれいろいろあるはず。

  • こういうアプリを作りたい
  • エンジニア転職したい

道に迷ったときにはたまに見つめてみるといいかもしれない。目的目標がなければ今プログラミングしてどうするんだろうなあ・・・とふと考えてしまうと思うから。

学習内容を発信する

学習内容をブログやSNSなんかで発信していくのもいいんじゃないかと思う。よくTwitterなんかでこういったツイート見ますよね。

発信するとそれに対して誰かが反応してくれたりするかもしれません。類は友を呼ぶというからプログラミングを学習している他の仲間も見つかるかもしれないぞ。ブログなんかも自分の書いたコードを載せることができたりして良い。アウトプットに関してはこちらに書いたからどんなアウトプット方法あるのかなー?って気になったら見てみてください。

漫画や映画を見る

漫画や映画に感化されるっていうこともありますよね。アニメキャラの一言に気持ちを高ぶらされることもあるでしょう。エンジニアが主役の映画や漫画はいくつかあるから、一息つくときに見てみるといいかもしれない。

BLOODY MONDAYは有名かな、ファルコンかっこいいです。映画だとソーシャル・ネットワークやピエロはお前をあざ笑うなんかは知っている人も多いだろう

環境構築はつまずく

環境構築で躓いてしまうっていう場合もありますよね。28.7%と結構高い割合でいたりします。

環境構築でつまづいた人たくさんいると思うけど、環境構築はプログラミングを学習する上で結構な詰まりどころだと思います。今まで結構プログラムを書いたりしてきたけど、個人的には環境構築とデプロイは詰まるよなあ・・・と思う。教えられているのと同じように書いているのにエラーが出たりスムーズにいかないことは多い。

環境構築は難しいしつまづきやすい

もはや最初からすんなりできることはないのだと思っておいたほうがいい。

環境構築を行わずにコードを書く

ただ環境構築を行わずにコードを書いて実行するっていうことも一応可能ではありますよね。オンラインで使える実行環境を使ったり、HTMLやCSS・JavaScriptなどの環境構築が必要ないものを使えば環境構築は必要ない場合もある。オンラインでサクッとコードを書いて試したかったら以下の記事を参考にしてみておくれ。

ちなみにこれはCodePenだけど、こう埋め込んだりできるのもいいですよね。HTMLとCSSとJavaScriptならCodePen結構良いです。

See the Pen
Animated Background
by Marco Guglielmelli (@MarcoGuglielmelli)
on CodePen.

まとめ

基本的にプログラミング学習は挫折する。87.5%もの人が行き詰まりや挫折を経験したことがあるのならきっと今勉強している君も同じようなことを思うだろう。行き詰まりはまだしも挫折して学習をやめてしまうっていうのはなんかもったいないですよね、せっかく学習始めたのに。

誰かに聞ける環境っていうのは最初学習をしていくうえでとても大事だと思います。学習環境に悩んでいるなら誰かに聞くことのできるサービスを使ってみてはどうだろう。