プログラミングを学習することを決意した場合、一つの言語を学ぶ習得時間はきになるところ
ですが実際に検索してみると、どれも習得にかかるまでの時間はバラバラだったため、最初の段階で
『個人差があるんだな〜。』
くらいにしか思っていませんでした。
そこから自分なりに学習を続けていき、ある程度プログラミング言語の学習時間に関しての結論を導き出すことができました。
なので、ここでは私の経験や周囲のエンジニアさんの話を元にプログラミング言語の学習時間について色々とお話ししていきたいと思います。
プログラミング言語の習得時間は実際どのくらいかかる?

まず一般的に言われているプログラミング言語の学習時間の目安を調べてみましょう。
プログラミングの学習時間の目安は200~300時間
多くの人たちが話している一つの目安として、プログラミングの基本的なレベル(基本〜アプリ開発程度)であれば、大体200〜300時間の学習があればできると言われています。
これは1日に3時間勉強した場合、3ヶ月でクリアできる時間ですね。

独学とスクールでは習得時間に差が出てくる
そしてこの次のステージに行く場合、2つの道が用意されています。
まずひとつは『独学で学習を続けていく道』
もうひとつは『プログラミングスクールに通う道』
です。
後者の場合、初心者が躓くポイントを熟知した講師が教えてくれるため、独学よりも大幅に時間を短縮して学習ができるようになります。
なので独学で300時間かかったところを、スクールに通うと300時間以下で勉強できるようなイメージです。
→Tech Academy(12週間の短期間学習で転職保証付き)
→TECH::CAMP(10週間の短期学習で転職保証付き・転職成功率99%)
この時点で学習方法が分かれることになるため、あまり習得時間の比較が意味をなさないことが分かると思います。
プログラミングの基礎学習(基礎〜アプリ開発):300時間程度
働けるレベルを習得するまでの時間:独学1000時間・スクールに通うと大幅短縮可能
そして身も蓋もないことを言うかもしれませんが、プログラミングの習得時間はそこまで重要ではありません。というのも、プログラミングは習得しようと思って勉強するよりも
『あのサービスを自分の手で作りたい!だからプログラミングを覚える』
という考え方を持たなければ、そもそも続けることが難しくなるのです。
例えばAさんは
『○○というサービスを作るためにプログラミングを習得する』
と目標を持ち、対してBさんは
『プログラミングを習得したいから頑張って勉強する』
という目標で勉強をしたとします。
そうすると、短期間で大きな成長を遂げるのは、間違いなく『Aさん』なのです。
この解説については後半でしっかりとお伝えしていきますね。
短期間でプログラミングを習得できる=凄いではない!

プログラミング業界では、なぜか短期間で習得できる人が凄いというような風潮が強いですが、正直この風潮はあまりよろしくないと個人的には思っています。
考えてもみてください。
例えば全くプログラミングを触ったこともない人が、3ヶ月という短期間で就職できました〜!というインタビューをしていたとします。
ですがその人がどのくらいのスキルを身につけて、どんな仕事をする企業に就職したのか?という具体的な内容を公表しているものはほとんどありません。

ということは、そこまでプログラミングが習得できていなくても、ある程度の知識を詰め込んで就職してしまえば、あとは現場の研修や実務で覚えることができるのです。
となると、プログラミング言語を習得して就職できたという表現は少し違うと思いませんか?
ここはプログラミングスクールなどで大々的に公表されているインタビュー記事に気をつけるべき1つのポイントになるでしょう。
プログラミングの習得時間は意識する必要はない理由

私もプログラミングを未経験から学習してきた身なので、短期間で習得したいという気持ちはめちゃめちゃ分かります。

ですが今は習得時間を意識せずに、とにかく自分のできることを増やす・スキルを高めることに全力を注いでいます。
安月給で働くエンジニアが多い中、高給取りとして働けるエンジニアが存在する理由も、結局は習得時間の早さではなく
『スキルをどれだけ高められるか?』
が一番重要なのです。
プログラミングスキルには上限がありません。高い向上心を持っていればどこまでも上り詰めることができます。
そしてそれ以外にも習得時間を意識すべきではない理由はいくつかあります。
学習時間を増やすことが目的になりがちだから

何時間勉強したから絶対にエンジニアになれる!なんて考えは持つ必要はありません。

勉強するのであれば、なるべく効率の良い方法を自分で導き出し、最短ルートを辿ってスキルを高めたいのが本音ですよね?
しかし学習時間を増やすためにわざわざ面倒なルートを選んでしまうと、これはもはや本末転倒です。
学習時間は勝手に積み上がっていきます。私たちが意識すべきことは
『学習時間ではなくスキルを高めて未来の目標を叶えること』
です。もし寝ているだけでプログラミングが上達するのであれば、私は死ぬほど寝ますからね笑。
学習時間が目的になりそうな人は意外と多いので、この点だけは勘違いしないように気を付けましょう。
プログラミングは時間がかかるため伸びるスピードは全く違うから
そして人の成長曲線というのは、綺麗な右肩上がりではなく、ある一定ポイントまでダラダラと伸びていき、ブレイクポイントを迎えると急激に伸びるイメージになります。

プログラミング学習で多くの人が挫折してしまう理由は、この黒の矢印のようなルートをイメージしているからです。
しかし現実は緩やかに伸びていき、そこからグワっと上がることになるため、そこまでは辛い時期が続くのです。

逆にこれを知っていると、今学習していることがなかなか成果として出なくても
『まだブレイクポイントに達していないのかな』
と冷静に判断することができます。
この成長曲線の画像はしっかりと頭の中に入れておいてください。どの分野でも使えることですから。
一番大切なのは『習慣化』だから

初心者の場合、最初の数カ月でどうにかしてプログラミングをマスターしようと躍起になります。これはこれで良いことです。
しかし1ヶ月猛烈に頑張ってみて、そこまでの結果を得ることができなかった場合、2ヶ月目からのモチベーションが落ちていき、最終的にプログラミングの勉強を辞めてしまうようなこともあります。

短期間で頑張るというのは、それ相応のリスクが付きまとうため、あまり習得期間を短く設定して自分を追い込んでしまうのは危険度が高めです。
もちろんプログラミングスクールなどでみっちり3ヶ月教わるというのであれば別ですが、独学での短期間学習はこのようなリスクが潜んでいるため
『長期的な視点で見たときに自分が得をする道』
を選択していきましょう。
毎日数時間でも勉強できる人は、それが習慣化する可能性が高いため、長期的な視点で見るとかなり得をしていることが分かると思います。
くれぐれも自分を追い込みすぎて最も損をする選択肢を取ることのないように気を付けましょう。
プログラミング言語の習得に関する疑問

習得時間を意識するなと言われても、やはり人によっては
『どうしても数カ月でエンジニアに転職したい』
という期限を作っている方もいるはずです。
例えば今の会社を辞めてエンジニアとして働くことを決意した場合、数年も勉強していては収入が途絶えてしまうため、いずれ資金も底をついてしまいます。

ではプログラミング言語の習得でよく聞かれる疑問について、私なりの考えをいくつかお伝えしておきます。
未経験から3ヶ月で転職は可能なのか?

これに関しては、間違いなく可能だと言い切ることができます。
ただ一つだけ理解しておかなければならないことは、3ヶ月という縛りになると、転職していきなり高収入を得ることはできないでしょう。

未経験の状態から、3ヶ月で転職を実現するための主なルートは3つ
コスパを考えると、完全独学でプログラミングの習得、もしくは未経験の状態で派遣エンジニアとして働く選択肢がお金が一切かからないので良さそうに見えます。
ただ『プログラミングの習得』このゴールをどこに設定しているかによって、話は変わってきます。
例えば、未経験の状態からプロとして働くレベルのスキルを求めるのであれば、独学や派遣エンジニアは少し遠回りになります。
独学の場合
というのも、毎日会社員として朝から晩まで働きながら、家に帰って独学で習得できるプログラミングスキルには限界があります。
確保できる時間は、良くても毎日2〜3時間でしょう。
しかも教材は全て自分で用意することを考えると、基礎を身につけるだけで1ヶ月・2ヶ月は消えてしまいます。
そして最低限のスキルを身につけたとしても、そこから会社で働きながら自分一人で転職活動をする必要があるため、転職先を見つけるまでまた数ヶ月を要します。

※独学でのプログラミング習得時間は、一般的に言われている時間よりも長くなることを想定しておいてください。
派遣エンジニアの場合
独学で勉強する時間を使うなら、最初から未経験の状態で働けば最もコスパが良いと考え、最初に派遣エンジニアを選ぶ選択肢もあります。
これに関しては、確かに未経験の状態から働けるため、短期的に見ればコスパは良いです。

つまり、エンジニアとして0→1の経験値を得る方法としては、派遣エンジニアは最適です。
この業界では、派遣エンジニアとして半年・1年の実務経験を経てからフリーランスエンジニアになる人も増えています。
リスクとしては、会社員を辞めて派遣の立場になるため、それなりの覚悟がなければ後戻りができないところです。
最短でコスパよくフリーランスエンジニアを目指すのであれば、こちらの選択肢は『あり』と言えるでしょう。
プログラミングスクールの場合
表面的に見れば、こちらのプログラミングスクール経由は最もコスパの悪い選択肢です。
最初に数十万円の費用を出し、そこでプログラミングを学ぶことになるため、数ある選択肢の中で唯一『初期費用』が必要になります。
ただ、この選択肢の最大のメリットとしては
ため、先の見えないプログラミング学習をする必要はありません。
実際人気のスクールの事例を出すと、TECH::CAMPでは10週間(2ヶ月半)の学習で転職保証が付いてきます(未経験スタートからです)。

そしてTechAcadey(テックアカデミー)では、エンジニア転職保証コースを利用すれば12週間(3ヶ月)で転職が可能です。
このように、スクールによって多少期間の差はありますが『ここまで勉強できれば転職できます』とゴールが設定されているため、先の見えないプログラミング学習をする必要がありません。
- 完全独学:初期費用はゼロだが学習期間は長くなる
- 派遣エンジニアとして働く:未経験から仕事はできるが立場が派遣になる
- プログラミングスクール:学習期間は決まっているが初期費用がかかる
それぞれの選択肢にメリット・デメリットがあるため、プログラミングの習得のゴールをどこに設定するかによって、選ぶルートが変わってきます。
ただ、プログラミング未経験から3ヶ月で転職は可能か?
この疑問に対しては、明確に『可能です』と答えておきましょう。
独学でエンジニアになることはできるのか?

そしてこちらに関しても、十分に可能だという結論が言えます。
というのも、私の知り合いのエンジニアも、別の仕事をしながらプログラミングの勉強を続けて、1年後に独学でエンジニアに転職した人は何人かいます。
その人たちは、ドットインストールなどの無料コンテンツで勉強を続けている人や、有料のサービスを利用して独学をしていた人もいるため、やり方は様々です。

なのでやむをえない事情を抱えている人以外は、なるべく自己投資をして最短ルートを駆け抜けていただきたいのが本音です。
短期間でマスターできるプログラミング言語は何か?

これもよく聞かれることですが、正直短期間でマスターという表現自体が少し違う気がします。
というのも、1つの言語をマスターするとなると、数カ月単位ではまず無理です。
実務で使えるレベルになるのであれば、WEB系であれば数カ月でも可能ですが、マスターとなると年単位の実務経験やスキルアップが必要となるため、ここは長期的な視点を持っておきましょう。

これらの言語はとにかく求人が多く、案件も豊富に揃っているため、ある程度のスキルを持てばまず食いっぱぐれることはありませんからね。
私がプログラミングの学習時間を短縮するために実際にやったこと!

一般的なプログラミング学習時間というのは、ある程度決まっています。
知識をあえて『水』で例えてみると、コップという受け皿に一滴ずつ水がぽちゃっ‥ぽちゃっ‥と溜まっていくように知識は増えていきます。
そして少しずつ水(知識)が溜まり、それが表面張力で溢れる手前まできて、次の一滴がぽちゃっ‥と入ったところで溢れます。

いかにしてその溢れるまでの時間を短縮するか?これを最初に考えた私は、以下の方法で学習時間の短縮に成功しました。
最初に無料サービスを活用した
私の場合、最初に無料で使えるサービス『ドットインストール』と『プロゲート』を使い、基礎的なプログラミングの内容を頭に入れました。
無料で全てを完結しようとは思っていなかったため、とりあえず最初に基礎を理解できればOKくらいに考えていたので、ここで数週間の時間を使います。
プログラミングスクールに通う
今振り返ってみると、この選択をもう少し早めていれば結果が出るのが早まったかもしれません。
実際にプログラミングを勉強してみると分かりますが、一人で黙々と学習するのと『分からないことをすぐに教えてくれる人がマンツーマンでサポートしてくれる』のとでは、全く学習効率が違います。
ここを乗り越えれば、正直あとは知識を付け足していくだけで自分でレベル上げができます。
この0→1を乗り越えられずにプログラミングを諦める人は山のようにいますし、スクール費用をケチって挫折する人もたくさんいます。
例えスクールの費用が10万20万かかったとしても、早い段階でプロのサポートを受けたほうが、学習期間はギュッと縮めることができるのです。

一番挫折するポイントを乗り越えることさえできれば、数年後には月収50〜100万円の仕事も余裕で受けられるようになりますので、ここはターニングポイントだと思っておきましょう。
ちなみにサポートが手厚く、学習時間を短縮して転職まで保証してくれるスクールとしては、
Tech Academy(転職が決まらなければ授業料全額返金保証)
TECH::EXPERT(転職できなければ全額返金)
がオススメです(無料相談だけでもOK)
数十万の自己投資を惜しむと、自ら学習時間を伸ばす、もしくは挫折することになります。
ちなみに安くて質の高いプログラミングスクールもいくつかありますので、こちらの記事もチェックしておいてください。
結論!プログラミング言語は熱意さえあれば短期間でも習得可能!

色々とお話ししてきましたが、結論としては
『プログラミング言語は熱意さえあれば短期間で習得できる!』
ということです。これは安心して大丈夫です。
ただ途中でもお伝えした通り、短期間で学んだからといって、いきなり高収入をもらえるようなエンジニアになれるわけではありません。

この環境を選んでしまうと、自分の成長もありませんし、給与のアップも見込めなくなります。
なので短期間でエンジニアになることを目標とするのではなく、将来的に大きな報酬を得られる希少価値の高いエンジニアに成長するにはどのようなルートを辿れば良いか?ここを考える必要があります。
道は様々ありますが、やはり私が考える鉄板ルートとしては
有料コンテンツ・プログラミングスクールで学ぶ
↓
エンジニアとして働く(スキルアップができる仕事先)
↓
実務とスキルアップをしながらエンジニアとしてのランクを上げる
↓
フリーランスや転職を考えて、より良い条件の場所に移る
この流れが王道かなぁと思っています。
今はエンジニアの数が深刻に少ないため、わざわざ条件の悪い職場を選んで働く必要はありません。
必ず自分のスキルを高めながら高収入を得られるような環境はありますので、その点に関しては現役のエンジニアと接点を増やしたり、スクールの人に紹介してもらうことがオススメです。
その道はその道のプロに聞くのが一番ですからね。
まとめ

プログラミング言語の習得は難易度が高いと思われがちですが、やり方次第では短期間でもある程度のスキルを身につけることができます。
ただし短い期間でスキルを高められることが正解ではありません。

その時代を見据えて今何ができるか?そこを考えて今日も生きてみてください。私も頑張って生きますよ!