エンジニア歴5年の てぃかし です。
今回は、プログラミング学習の心構えと挫折原因について話していきます。
以前の記事で、tech boostにインタビューをしました。
その中で、プログラミングの独学の挫折率は、 9割と言っていました。
プログラミングの独学は挫折率が、結構高いです。
今回は、挫折率がなぜ高いのかという原因と、プログラミング学習をする上で必要な心構えを話していきたいと思います。
プログラミング学習の心構え
心構えから話していくのですが、結論を言うと、プログラミングの勉強のコツは、「目的を見失わず、絶えず考えること」です。
これだけだと、抽象的すぎて分かりにくいと思うので、深掘りしていきたいと思います。
昔の僕のプログラミング学習
ちょっと僕の話をすると、過去にプログラミングの勉強をしたことがありまして、最初に僕がプログラミングの勉強したのは、5、6年前で、その時は本で勉強したんです。
HTML、CSS、JavaScript、PHPの本を、それぞれ1冊ずつ読んで、書いてあるコードをそのまま書いて勉強していたんです。
1冊終えて、満足して、何もせずに終わったという感じです。
その時は挫折とは思っていなかったのですが、今から思えば挫折です。
何も行動していないと、勉強しただけで、目的を見失っています。
まず、書いてあることをそのまま書くだけだと、どうなるかというと、すぐに忘れてしまいます。
こんな感じで、プログラミングの勉強を何も考えずにして、目的を見失うと、挫折してしまうんです。
心構え①考えながら勉強する
ということで、心構えの1つ目は、考えながら勉強する。
プログラミングの勉強をするときは、考えながら勉強しましょう。
例えば、Progateで勉強している方は多いと思いますが、CSSだったら、色とか大きさとか位置とかを変えたりしますけど、
「お手本では、色はここは赤って書いてあるけど、黒にしてみようかな」とか、
「大きさをちょっと変えてみよう」とか、
「位置をちょっと変えてみよう」とか、
お手本以外のことを、興味を持っていろいろ試してみることも考えることの1つです。
あとは、サーバーサイドの言語だったら、わざとエラーを出してみるとかです。
「ここにセミコロンを付けなければいけないと書いてあるけど、付けなかったら本当にエラー出るのかな?」とか、
「ここは、お手本はこう書いてあるけど、こう書いてみようかな、エラー出るかな? エラー出ないな、これ」とか、
いろいろ面白いこともあるので、いろいろ試しながら、いろいろ考えながら勉強していくことが大事ですし、そうすれば、勉強の定着率も上がります。
心構え②プログラミング学習では学歴は必要ではない
心構えの2つ目は、プログラミング学習に学歴は必要か?
という話なんですが、学歴は必ずしも必要ではありません。
なので、学歴がないから諦めようとしている方は、ちょっと心構えを変えて頑張ってみてください。
プログラミングは、仕組みを理解できても、どうやってプログラミングするかを、ゼロから考えなければ実務で使えないんです。
なので、受験が得意で高学歴だった人でも、勉強の仕方を間違えて、プログラミングの仕組みは理解しているが、開発になると全然手が動かないという人もいます。
逆に学歴はないけど、なぜかプログラミングだけはできるという人もいます。
なので、学歴は関係ないです。
勉強の仕方が正しいか正しくないかが、重要なところなんです。
心構え③プログラミングは暗記不要?
心構えの3つ目は、暗記は本当に不要か?
「プログラミング学習に、暗記は不要です」と言っている人は結構います。
確かに不要だと思うのですが、そういうことを言うと、何も考えずに思考停止状態で勉強する人も出てきてしまうので、ちょっと僕は言いたいんですけど、全く不要というわけではないです。
全て一言一句、単語とかを全部覚えなければいけないかというと、それは違うのですが、仮に、ゼロから作ってくださいと言われたら、そこから本当に作れるかが重要です。
勉強していた本は、いつでもそばにあるとは限りません。
重要なのは、ネットの検索だけでどこまで作れるかです。
全てを覚える必要はないですが、頭の中にインデックスがあって、それを頼りにゼロからでも作れるようにしましょう。
心構え④プログラミング学習の目的を見失うな
心構えの4つ目は、目的を見失うな。
忘れてはいけないのは、目的です。
何のために勉強しているのか、本を読むことですか?学習サイトを制覇することですか?
違いますよね。
エンジニア転職してエンジニアとして仕事をすることや、フリーランスエンジニアになって案件を獲得することなど、いろいろ目的は、皆さんそれぞれあると思うのですが、それを見失ってはいけないということです。
よくあるのが、TwitterやSNSで、今日は3時間プログラミングの勉強をしますとか言う人もいますけど、時間じゃないんです。
時間ではなくて、何をどこまでやるかが重要です。
それをやって、何を目指すのかが重要なので、そこは履き違えないようにしましょう。
心構え⑤自分のスキルに投資する
心構えの5つ目は、自分のスキルに投資する。
投資にもいろいろとありまして、自分の時間を投資するや、自分のお金を投資するなど、いろいろな投資の仕方がありますが、やっぱり自分のスキルを高めるために投資をしましょうという話です。
最初は少額でいいです。
例えば、Progateの有料版は1,000円くらいです。
それくらいは、投資していきましょう。
それも投資できない人はちょっと厳しいです。
余裕があればメンターを雇ったりとか、プログラミングスクールに通うのもありだと思います。
そうすることによって、勉強の効率も上げることができます。
プログラミング学習の挫折原因
続いて、挫折の原因について話していきます。
挫折原因① 実践に入らない
挫折の原因1つ目は、なかなか実践に入らない。
昔の僕なんかは良い例で、実践に入らずになんとなく本を読んで終わってしまったという最悪なパターンなのですが、こんな感じで実践に入らないと、挫折してしまいます。
もう永遠にProgateを2周、3周、4周、5周、6周、…としていくことになるので、Progateを2周くらいしたら実践に入りましょうという話です。
「実践って何ですか?」という話なんですが、これを僕独自で考えてみたので共有しようと思います。
実践レベルを0から5まで考えました。
実践レベル0は、Progateで勉強したり、プログラミングスクールに通ったりする。
実践レベル1は、ポートフォリオサイトを作ってみる。
ポートフォリオというのは、仕事をするときに、僕はこれだけできますとか、実績を見せたりする成果物なのですが、それを作ってみる。
デザインから考えると難易度が高いので、テンプレを使って作ってみると良いと思います。
テンプレを使えば、HTMLを3日くらいしか勉強しなくても作れるレベルなので、まずこれをやってみる。
実践レベル2は、ポートフォリオサイトに載せるポートフォリオを自分で作ってみる。
完全に自分で作ると、これまた挫折する可能性があるので、メンターを雇ったりとか、プログラミングスクールの先生にちょっと質問したりとかしながら作ると良いと思います。
実践レベル3は、クラウドソーシングで、LP制作にチャレンジする、もしくはエンジニア転職する。
エンジニア転職するのが、最も手っ取り早いと思います。
お金もちゃんともらえて、実務経験を積めるので、一番良いのはエンジニア転職だと思います。
実践レベル4は、人に教えてみる。
最近は便利なサービスもありまして、MENTAというのがあります。
僕も登録していて、転職の相談とかに乗っています。
そういうのを使って人に教えてみるのも良いと思います。
実践レベル5は、Webサービスを設計、実装して、実際にマネタイズをしてみる。
これは僕もしたことはないのですが、最終形はこれかなと思います。
ここまで行くともう完璧です。
挫折の原因1つ目は、なかなか実践に入らないということなので、実践をやっていきましょうという話です。
挫折原因② 自分一人で何でもやろうとする
挫折の原因2つ目は、自分一人で何でもやってしまう。
挫折率が高い原因は、やっぱり自分一人で完結しようとしてしまうことです。
自分一人でやると誰にも迷惑かけないので、すぐ辞めちゃう人が多いんです。
なので、スクールに行ったり、イベントに参加したりして、いろいろなプログラミングを教えてもらう人とか、そういう仲間を見つけると、挫折しにくくなります。
あとは、SNSやTwitterとかで、仲間を探してみるというのも良いと思います。
挫折原因③ 学習を習慣化できない
挫折の原因3つ目は、習慣化できない。
勉強は、習慣化が大事だと思います。
毎日決まった時間に勉強すると決めておきましょう。
例えば、お風呂に入った後に2時間勉強するとか、そういうことを決めて勉強しましょうという話です。
挫折原因④ 短期間であきらめてしまう
挫折の原因4つ目は、短期間で諦めてしまう。
勉強するからには、1年以上は継続しましょう。
1年以上継続して、やっぱり合わなかったということも出てくるとは思います。
なので、最初に、本当に自分はプログラミングに向いているのかをチェックしておいた方が良いです。
チェックの仕方としては、Progateです。
HTML/CSSのコースがありますが、それを全部すると、見込みが20時間です。
その3倍以上かかるのでしたら、ちょっと向いていないと思いますので、諦めることを検討した方が良いと思います。
でも、もしかしたらサーバーサイドの言語の方が向いている可能性もあるので、そちらもチャレンジしてみて、それでもダメだったら諦めるという感じです。
以上が、プログラミング学習の挫折の原因です。
挫折については、下記の駆け出しエンジニアの挫折あるあるについて書いた記事でも触れているので、そちらもご参考ください。
駆け出しエンジニアの挫折&末路あるある15選・対策と勉強方法
広告 今回はこのような疑問を持っている人向けの記事です。 どうも!エンジニア歴5年、元駆け出しエンジニアの てぃかし です。 今回は、 駆け出しエンジニアが挫折する理由(あるある) プログラミング学習 ...
続きを見る
「実践レベル0」で触れたProgateですが、おすすめコースについては、下記の記事でお伝えしているので、ぜひそちらの方もご参考ください。
Progateの使い方とおすすめプログラミング勉強法5ステップ【プロゲート】
今回は、そんな悩みを持っている人におすすめの記事となっています。 最近(2019年)、ゲーム感覚でプログラミングを勉強できるProgate(プロゲート)というサイトで僕は勉強してますが、今回はそのPr ...
続きを見る
noteでも学習方法について詳しく書いています。僕が未経験からエンジニア転職した際に使用したポートフォリオも参考例として載せていますので、興味のある方は、チェックしてみてください。
未経験からエンジニア転職を目指している方は、エンジニアになるためのロードマップの記事をご覧ください。
【初心者必見】プログラミング学習前にやることは?【エンジニアロードマップ①】
今回はこのような疑問をお持ちの方に向けた記事です。 僕は、新卒で塾講師をしていた過去があり、当時、肉体的にも負担のある講師の仕事を続けていくことに不安を感じていました。 また、塾業界自体、勤務時間の割 ...
続きを見る
はじめてエンジニアになろうと思っている方は「はじめてのエンジニア」に登録しておくことをおすすめします。
詳しくは以下の記事で紹介しています。
はじめてのエンジニアの評判と転職後の年収例は?【20代向け】
今回はこのような疑問や要望がある人にとって有益な記事です。 未経験からエンジニア転職する時は、わからないことだらけです。 未経験者が悩む所は大きく分けて「エンジニア転職のためのプログラミング勉強法」と ...
続きを見る
本ブログでは、エンジニア関係の記事を他にもアップしていますので、興味のある方は、お気に入り登録をして、またご覧いただけたら嬉しいです。
<動画版>