「プログラミングを独学し始めたけど、どれくらい勉強したらいいの?」
こちらの悩みについて解説していきます。
本記事の内容
-
基礎の習得なら3ヶ月以上かけても無駄
-
実力のある人ほど学習量が多い
-
人並みにやっていても追いつけない
筆者について
-
23歳で未経験から独学でエンジニアへ転職。
-
運良く自社開発企業に入れて、周りのレベルの高さに絶望。
-
さらに猛勉強。
このような経歴からプログラミング初学者の方に近い考えを持っているとご理解いただいた上でお読みください。
Contents
基礎の習得なら3ヶ月以上かけても無駄
プログラミングの勉強を始めたばかりの頃はプログラムを使って四則演算をしたり、コマンドプロンプトやターミナルに「ハローワールド」と出力できるようになるだけで嬉しくなります。
実業務においても四則演算はしますし、文字の出力もします。
JavaならSystem.out.println(“”)、JavaScriptならconsole.log(“”)、C#ならConsole.WriteLine(“”)。。。
ただ、これだけでエンジニアになった気になってしまうと問題です。
学習し始めにはプロゲートは最適
プログラミングの学習しはじめに人気なサービスでプロゲートがあります。
筆者も新しい言語を勉強する時は、プロゲートを使って文法をさらっと見たりすることもあります。
ただ、プロゲートはプログラミングの「入口」としては最適ですがプロゲートを習得しても現役のエンジニアレベルには程遠いということは知っておく必要があります。
プロゲートは1週間以内に卒業した方がいい
厳しい話ですが文字列をコンソールに出力したり、足し算するくらいなら、小学生でも教えればその場でできてしまいます。
1つのコースであれば毎日数時間と休日を使えば1週間以内で終わるはずです。
そういったレベルの知識の習得に1週間以上使わないようにしましょう。
1つの言語を決める
プログラミングの基礎学習は例えると「野球をやるために、バットの握り方を知った」状態です。
バットの握り方だけを1ヶ月も2ヶ月も学習する必要はありません。
1つの言語のプロゲートが終わったから、他の言語のコースを受講するというのは最悪です。
広く浅くやっても何も身につきません。
文法は完璧じゃなくてOK
現役プログラマーは日々プログラムを書いていますが、文法をマスターしている人は少ないです。
例えば私ですとC#とJavaScriptとJavaは得意なので、実務においても調べることは少ないのですが、PHPやRubyで開発をする時には文法を調べながら開発を進めます。
なので、文法をマスターしていなくても都度調べれば開発はできるので最初は「こんな文法なんだなー」と舐めるくらいで十分です。
基礎は大事だが、基礎だけではダメ
野球でもバットを持たなければ始まりませんが、振らなければ前には進めません。
基礎学習は重要ですが、皆さんの目的は「アプリを作る」ことであって「プロゲートのレベル上げ」ではないです。
目的を見失わないようにすることが大切です。
プログラミング言語の難易度は全て同じ
極端ですが事実です。
たまにプログラミング言語ごとの難易度とかを見かけたりしますが、あまり参考にしなくてOKです。
慣れている言語が簡単な言語
PHPをやった後に、C++をやるとC++の方が難しく感じたりもします。
慣れている言語が使いやすいだけで言語ごとの難易度はさほど変わりません。
1つの言語に手を出してから「難しいから他の言語にしよっ。。」とかは意味ないので、最初に手を出した言語と愛し合ってください。
実力のある人ほど学習量が多い
私の社内でもスーパーエンジニアがいるのですが、そういう人は常にスキルを磨いていてお昼を食べながら最新のITニュースを読んだりしたりしています。
「決めた時間を毎日やる」はあまり意味ない
私もそんなスーパーエンジニアを目指して頑張っているうちに、今は年上のエンジニアに指示をするような立場になりました。
IT技術は常に進化しています。
あなたより先にエンジニアをやっている人ですら常に勉強をしているので、「1日1時間やるぞ!」って決めても絶対に追いつけないわけです。
きっと東大生だって、受験をするときに「1日○時間勉強する!」とか決めていないはずです。
コードを書いた分だけ成長する
ここまでお読みいただいた方は、勉強時間を定めていると成長が遅れてしまうことが分かったかと思います。
成長するには以下を実施すれば爆速で伸びます
-
寝る時間以外で電車内などの手を動かせない時は「インプット」
-
それ以外の時間は全て「アウトプット」
習慣化すると慣れる
「ずっと勉強で疲れそう。。。」と思われるかもしれませんが最初の1週間続ければ慣れてしまいます。
コツは休憩しないことです。
休憩して考える時間が生まれると、人間はやらない理由を探し始めます。
「たまには休憩が必要だよ!うんっ!」なんて言っている間に私達は勉強しているので一緒に頑張りましょう!
そもそも勉強とも思っていない
世の中のスーパーエンジニアは学習が完全に習慣化してしまっているので、もはや勉強とも思っていません。
多分缶ビール片手に、休憩時間としてITスキルを身につけていってます。
そう言った人たちに追いつくためにもまずは学習を習慣化させましょう。
人並みにやっていても追いつけない
こちらの記事を読みの方は以下のような方が多いかと思います。
- プログラミングを勉強し始めで、どれくらい勉強したらいいかが分からな
- ITエンジニアとして、就職・転職したい
プライドはゴミ
世の中には、物心ついた頃からテクノロジーに触れている人もいます。
幼少期とまで行かなくても、小中高・大学生でエンジニアとして就職する前の若い段階から学習を始めている人もいます。
恐らくあなたの転職が成功しても、経歴が長い年下より仕事ができないことでしょう。
入社したばかりの年下に指示を仰いだり質問をしたりすることもあります。
これらを素直に受け入れなければ、先にキャリアをスタートさせている人たちに追いつけません。
プライドは成長に邪魔なので丸めてポイしてしまいましょう。
プログラミングスクールもあり
独学での学習に自信がない方や周りと切磋琢磨したい方はプログラミングスクールに通う選択もありです。
習慣を変えるためには、周りを変えることも大事なのでスクールに通って環境を変える手もいいと思います。
目的はプログラミングを習得することなので、手段はなんでもいいんです。
おすすめの大手で実績のあるプログラミングスクールは以下なので、スクールへ通うことをお考えの方はご覧ください。
-
TechAcademy ※1週間の無料体験ができる
-
テックキャンプ ※転職できなかったら全額返金制度がある
-
Skill Hacks ※他スクールよりも圧倒的に安い
以上。