就職活動や転職活動を考えている中で、
「プログラミングスキルは欲しいけど、独学は可能なのかな?」
と思っている人や、
「スクールもあるみたいだけど何時間必要なの?センスがなくても大丈夫かな?」
と思っている人もいると思います。
筆者自身も独学でプログラミングを学び、企業内でのプログラミング実務をこなしたり、趣味で10以上のプログラミング言語を経験してきました。
就活前に独学で2ヶ月くらいでJavaとHTMLを習得しました。勉強中は挫折しそうにもなりました。しかし未経験だった筆者でも独学で「プログラミングで生きていけるスキル」を身につけることはできました。
本記事は、筆者の経験ベースの話になってしまいますが、独学でのプログラミング習得を考えている人の助言になれば幸いです。
Contents
プログラミングを独学するなら、2ヶ月で300時間は学ぶべき
プログラミングを独学する上でよく言われるのが、
『2〜3ヶ月の短期型学習で200〜300時間は勉強時間は必要』
です。
独学において長すぎる期間は挫折や怠惰の元
期間に関していうと半年なんてもっての外で、3ヶ月でも長いかなと思っています。基本的には毎日やるわけですから、長すぎると挫折したり怠けたりする可能性は高いです。
また時間も有限ではないので、人生における投資期間は可能なら短めにした方が絶対いいです。
そして、どうせ勉強するなら短期集中型の方がリスクも少ないし、モチベーションも保てます。
独学でも塾でも基礎が固まる時間はある程度決まっている
どんな勉学でも、1時間や2時間じゃマスターすることはできません。最低勉強時間というものがあります。
プログラミングにおいてもそれはある程度決まっていて200〜300時間と言われています。
個人的には基礎に200時間、応用に100時間の合計300時間あれば、最低でもプログラミングで生きていける基礎は身につくと思っています。
プログラミングスクールという選択肢
2ヶ月で300時間だと1日7時間は勉強が必要になります。流石にそんなに時間がない方もいますし、人それぞれスタイルもあるので、3〜4ヶ月かけてみたり、プログラミングスクールという選択肢もありだと思います。
プログラミングスクールは勉強できる環境・時間・教材を提供してくれるので、独学する上での事前準備とかスケジュール策定とかは不要になります。
プログラミングの独学でもセンスは最初だけ。誰でもある壁を超えるとできるようになる。
プログラミングスキルを独学で身につけたと言うと、よく言われるのがセンスについてです。
どんな勉学にもセンスは存在する
プログラミングでいうと、勉強し始めは確実にセンスの有り無しを感じると思います。筆者自身は今思うと勉強し始めの頃は本当にセンスがなかったと思っています。そのせいで途中挫折しかけたりしました。
正直なところプログラミングができるようになった今でも、自分にはプログラミングのセンス自体はないと感じています。ただ、プログラミングで生きていけるスキルは持っていると自信を持って言えます。
プログラミングセンスがなくても独学は大丈夫なのか
例えば画家として生きていくのってセンスがないと、いくら勉強しても学校に行ってもなかなか厳しい気がしています。しかし、プログラミングはそうではないと思っていて、出だしにセンスがなくて挫折しそうになっても、時間をかければ独学でもそれなりにできるようになるものです。
筆者自身挫折しかけても、コードを書き続けたり、他人のコードを翻訳したりしているうちになんというか、プログラミングの勘所みたいなものが見えてきた瞬間があったのを覚えています。
実際、筆者の同期や後輩にもそんな瞬間があったみたいで、その瞬間に到達するのが200〜300時間なのかなと勝手に思っています。その勘所というのは、ある文法でこう書いたからこの場合はこう書くんだろうな。みたいな経験値的なものです。
プログラマーは独学だろうとスクールだろうと、最終的には常に独学が必要
独学でプログラミングを学んだ人も、プログラミングスクールに通った人も最終的には独学は常に必要です。
プログラムを書く上では、書いている時間より、調査や考えている時間の方が多いと言われています。実際それはその通りだと思うし、プログラムを書く上ではわからないこと・詰まる所は常に出てくるのでそのたびに勉強は必要です。
また、IT業界にゴールはなくて、常に進化し続けています。この点でも常に新しい知識を持っておかないといつか通用しなくなります。
大変かもしれませんが、時代とともに自分のプログラミングスキルも成長させていくのってかっこいいし、やり甲斐もすごくあると思っています。