この記事では
- プログラミングを効率的に学びたい
- 勉強のコツを教えてほしい
という方に向けて、
- 効率的な学習方法
- 挫折しない学習法
- 学習における理想的なマインド
を紹介します。
プログラミングの学習は「挫折者が9割」と言われるほどで、かなり大変です。
かくいう私も何度も挫折しかけました。
なんとなくで勉強を始めてしまうと、勉強がうまくいかずに途中でやめてしまう可能性があるので、あらかじめ、プログラミング学習に対する正しい心構えや、勉強内容を知っておく必要があります。
知識武装、メンタル武装をして正しい道を進めば、途中で挫折してしまう可能性を下げ、爆速での成長が可能です。
そこで今回は、知識武装・メンタル武装をするため、プログラミングの「学習方法・マインド」について解説していきます。
WHY(目的を明確にする)
まずは、学習意図を明確にしましょう。
みなさんがプログラミングを勉強する理由は何でしょうか?
プログラミングを学びたいというより、稼ぎたいのですよね?
では、なぜ「稼ぎたい」のでしょうか?
- 会社辞めたいから
- 家族との時間が欲しいから
- 収入を上げたいから
- 趣味や夢に時間を使いたいから
などの理由だと思います。
上記の目標を常にイメージして勉強しましょう。
このように、プログラミング学習の目的を明確にすることで大きなモチベーションが生まれます。
このモチベーションは、挫折しそうになった時にあなたを助けてくれるでしょう。
勉強を目的にせず、プログラミングで稼いだ後のことを思い描くことが大切です。
WHAT(何を学ぶのかを決める)
次に、何を学ぶのかを決めましょう。
プログラミングを学ぶといっても、Web制作、システム開発、iPhoneやAndroidアプリ開発など分野が広すぎます。
この中で、一体自分は何を学びたいのかとはっきりとしましょう。
オススメは、「興味の持てる分野」です。
ただ、
「特に興味のある分野がない場合」や「ただ稼ぎたいだけ」という場合はひとまずWeb制作系の言語を学びましょう。
理由は、
- 初学者向けの学習教材が豊富だから
- 最も簡単に稼げるから
- 目に見える部分でわかりやすいから
です。
Web制作系の言語とは、HTML・CSS・JavaScrip・jQuery・PHPなどです。(HTML、CSSは言語ではありませんが、便宜的に含めました。)
これさえできれば、月20万は余裕です。
HOW(正しい勉強方法で学ぶ)
学ぶ言語が決まったら勉強を開始しましょう。
大事なことは2つです。
- コードを暗記する必要はない
- インプットは最小限でアウトプットに時間を割く
コードを暗記する必要はない
コードを暗記する必要はありません。
忘れても、本やインターネットで調べればわかります。
ただ、「暗記するな」と言っているわけではないです。
暗記せずとも、書いているうちに自然におぼえていきます。
暗記(インプット)に時間を割くのではなく、コードを書く(アウトプット)に時間を割きましょう。
インプットは最小限でアウトプットに時間を割く
先程も書きましたが、インプットは最小限でアウトプットに時間を割くことが大事です。
基礎学習に時間をかけるのは良くないです。
何かを作っていて、わからないところがあったら調べる。アウトプットして、必要な部分のみインプット。
つまり、何かを作りながら、わからないことがあればその都度調べて解決していくということです。
この学習スタイルが最強です。
何を学習すれば良いかは以下の記事を参考にしてください。
WHERE(最適な学習環境を整える)
学習を開始すると同時に、学習環境も整えていきましょう。
プログラミングに限ったことではないですが、作業をする上で、環境はとても大事です。
動作の遅いパソコン、腰を痛めやすい椅子などを使うのは嫌ですよね?
学習環境の構築にはお金がかかりますが、1度整えてしまえばプログラミング以外の勉強の際にも役立ちます。
ここでは、最低限
- パソコン
- 椅子
を紹介します。
パソコン
パソコンはMacbookPro13.3インチがオススメです。
プログラミング学習や実案件をする中で、最低でもMacbookPro13.3インチの処理速度、画面の大きさが必要になってきます。
また、調べてでてくる情報もMacを使ったものばかりなので、WindowsよりはMacをオススメします。
ちなみに、Mac含め、Apple製品をお得に購入する方法はこちらの記事で解説しています。
椅子
椅子が悪いとお尻は痛くなるし、首や腰を痛めるし最悪です。
特に、腰痛は危険で、人生に大きな影響を及ぼします。
早めに高品質な椅子を入手しましょう。
DXRacerはe-Sports大会で公式に採用されている椅子で、長時間のゲーム・デスクワークによる体の負担を軽減してくれます。
高い椅子だと10万円するものもあります。
コスパを考えると、これ一択です。
「サンクコスト効果」というものがあります。
これは、「すでに支払ったコストを取り戻そうとする心理効果」です。
サンクコスト効果を利用して、プログラミングで挫折しない環境に自分を追い込むのもありです。
WHEN(学習ルーティンを整える)
環境を整えたら、学習ルーティンも整えましょう。
なぜルーティンが大事なのかというと、人のモチベーションは不安定なものだからです。
なので、「この時間は勉強する」とルールを決め、実行しましょう。
次第に、モチベーション関係なくパソコンに向かえるようになってきます。
パソコンに向かうことが生活の一部としてルーティンになってくるからです。
WHO(仲間と一緒に勉強する)
ルーティン以外にも、モチベーションを保つために仲間をつくりましょう。
プログラミングはよほど意思が強かったり、勉強好きでないと、一人で学習する場合かなりの確率で挫折します。
大学受験や公務員試験を乗り越えてきた、元ガリ勉の私でさえ挫折しかけました。
身近に仲間がいない場合は
- Twitterで仲間をつくる
- プログラミングコミュニティに参加
- プログラミングスクールに通う
Twitterでしたら
- #駆け出しエンジニアと繋がりたい
- #プログラミング初心者
- #今日の積み上げ
で検索すると意識の高い仲間を見つけることができます。
他人と比べない
仲間がいるとあるあるですが、他人と比べすぎるのは良くないです。
人それぞれ学習環境が違うので気にする必要はないです。
他人と比べると自分の不甲斐なさに傷つき、メンタルが不安定になりやすいです。
比べるべきは昨日の自分。
昨日の自分より少しでも成長するという姿勢で勉強を継続することが大切です。
それでも挫折しそうなときは
上記のことをやっても、挫折しそうになることはあると思います。
そのような場合はプログラミングスクールに通いましょう。
「テックアカデミーの無料体験」というものがあります。
当たり前の話ですが、独学よりも人に教えてもらう方が早く学べます。
テックアカデミーのように、無料のプログラミングスクールを利用するのもありだと思います。
まとめ
私の経験からも言えることですが、今回紹介した内容をしっかりと頭に入れて、実行に移しさえすれば、エンジニア転職は可能です。
あとは、やるかやらないか、そしてやるならいかに早く完了させるかが勝負です。
「他人と比べるな」とは言いましたが、だらだら勉強するのも良くないです。
以下の記事のように、早めに実案件に移ることが大事です。
記憶の定着、疲労回復については以下の記事で解説しています。