どうも皆さま。こんにちは。こんばんは。
渋沢です。

「プログラミングを始めたい。独学で身につけるのは難しいのかな…」
「学生です。プログラミングをできるだけお金をかけずに学ぶ方法はありますか?」

上記の悩みにお答えします。

今回は、独学でプログラミングを学びたい方、進行形で学んでいる方向けに、

「独学でプログラミングを学ぶことは可能」

というテーマでお話します。

ちなみにこの記事を書いているわたしは、大学在学時に「独学 + スクール」で、Webデザインとプログラミングを学びました。
今は独立して、現役フリーランスです。

本記事では、「独学で学びたい方のためのステップ」も、わたしの経験談やまわりのエンジニアの経験談をベースにお話しますので、ご参考ください。

独学でプログラミングを学ぶことは可能

タイトル通り、結論から先に言うと、プログラミングは独学でも学ぶことは可能です。

なぜか。
スクールに通わなくても、独学で身につけ、稼ぐフリーランスエンジニアもたくさん見てきたからです。

独学で身につけて稼ぐエンジニアに共通するのは、

  • とにかくプログラミングが好き、楽しんでいる
  • 自分でなにか作り続けている(※稼げるようになっても)
  • プログラミングだけに固執せず、ほかのスキルも掛け合わせている

という感じです。
目的なく、ただ学習しているわけではないんですよね。

上記のように楽しみながら、続けられる人は独学でも十分でしょう。

個人的には、お金に余裕があるなら、「プログラミングスクール ✕ 独学」で学べばいいと思ってます。

現役エンジニアをメンターにしたほうが、実践的なアドバイスももらえますし、
同じような目標を持つ受講生に囲まれることでモチベーションも保ちやすいですからね。
(友人にエンジニアがいるなら、頼るとかでもいいと思います。)

プログラミングのみのスクールなら、受講費は20万円もかからないですよ。

正直学習費用で、20万円も渋るくらいなら、やらないほうがいいです。

「お金を借りてまでスクールに行け」ということではなくて、
すぐに受講費は回収できるからという意味です。

アルバイト(飲食やコンビニ等)のお給料で換算すれば、3ヶ月くらいあればすぐ受講費は稼げますし、
IT企業に就職してしまえば、1ヶ月あれば、すぐに回収できます。

なので、お金を使うべきタイミングは、自分で見極めて使いましょう。

初心者の独学で挫折するパターン

独学でひとまずやりたいという方もいると思います。

なんとなく独学で始めたはいいものの、

  • 学習方法が分からない
  • エラーが解決できない
  • そもそも孤独に黙々と作業できない

などなど。

独学でモチベーションが低下して、挫折してしまう人も多いです。

プログラミングの楽しさや、稼ぐ感覚を味わえないまま、挫折してしまうのはかなりもったいないなと思います。

具体的な学習方法は下記でも解説してますので、お時間あるときにどうぞ。

まずは短期集中。3ヶ月やって、環境を変えればいい

独学で挫折しないためには、「短期集中」ですね。

月70時間〜80時間、だいたい約3ヶ月(240時間)くらいが目安です。
※人によっては前後します。

まずは「3ヶ月」だけ独学してから、環境を移すことを考えましょう。

環境を変えるなら、下記2パターンです。

1. 短期集中 → プログラミングスクール

3ヶ月独学したけど、自信もスキルもいまいち…

就職支援付きのプログラミングスクール

2. 短期集中 → 企業に入る

3ヶ月独学して、ある程度基礎スキルも身についた

プロダクトを作りつつ、就職、転職活動開始

このどちらかですね。
ある程度基礎スキルも身につけ、自分で成果物が作れる方は、就職活動を開始していいと思います。
もし「自信がまだちょっと…」という方は、就職支援付きのプログラミングスクールに通うのがベストかなと。

下記記事でも、「プログラミングスクールの選び方」など詳しく解説してますので、参考にどうぞ。
※Web系スクールで受講生と講師をどちらも経験したわたしの意見を書いてます。

注意して欲しいのは、「独学の時間が長すぎること」です。

独学に「1年」とか時間をかける人がいますが、さすがに時間かけすぎですよ。
ずっと書籍を読んだり、ドットインストールみたり、Progateやったりしても、プログラミングを身につけることは難しいです。

具体例を挙げますが、

Aさん:「事務の仕事した後、帰宅して月100時間以上は、Progateしてます!」
Bさん:「エンジニアとしてIT企業で月160時間以上、働いてます!」

両者を比べたら、Bさんのほうが圧倒的に成長するのは一目瞭然でしょう。

Aさんはプログラミングとは無縁な事務作業に、一番時間をかけている点がもったいないです。
どんなに本業以外で勉強しても、Bさんには敵わないです。

仮にBさんが本業の時間以外でも学習したら、天と地の差が生まれてしまいますね。

独学に時間をかけすぎるくらいなら、サクッとスクールで学んだほうが、現場に早く入れますよ。
現場にさえ飛び込めば、あとはいつでも自分次第で追い越すこともできます。

優秀なエンジニアに囲まれると、成長できる(※へこむことあり)

ある程度のスキルが身についた後は、優秀なエンジニアに囲まれる環境をつくったほうが、成長できます。

イメージは、下記のとおり。

基礎スキルを磨いたら、サクッとプロダクトを作って、就活

優秀なエンジニアがいる環境を選んで入る

優秀なエンジニアに囲まれながら、スキルを磨き続ける

という流れが一番いいですね。

わたしの体験談を例にしますが、

大学在学時

Web系スクールと独学で学んだ後、IT系スタートアップにアルバイトで入社

優秀な人材が多すぎて、自分が恥ずかしくなるくらい、へこみつつ、スキルを磨く

ちょっと成長

スタートアップでの経験はかなり大きかったです。
なぜ学生時代にスタートアップでアルバイトをしたかというと、わたしの場合は、大手企業よりスタートアップやベンチャーで働いたほうが、成長できると確信したからです。

独立した直後

常駐を複数社経験

常駐先で優秀なフリーランス仲間と知り合う

できることが増えて、成長がさらに加速

独立した直後は、リモートワーク案件だけでなく、常駐もしました。
常駐したおかげで、様々なタイプのフリーランス仲間に出会い、稼ぐイメージが湧き、モチベーションもアップしましたね。

現在はリモートワークメインで、全国、海外、いろんなタイプのフリーランスと仕事してますが、常駐の経験は大きいと思います。

上記わたしの例ですが、思い切って優秀な人がいる環境に飛び込んだ後に、成長が実感できてます。

経験談も書いてますので、参考にどうぞ。

まとめ

まとめますが、プログラミングは独学でも学ぶことは可能です。

理由は、スクールに通わずに、独学で身につけて、稼ぐフリーランスエンジニアがたくさんいるからです。

わたしのまわりの話になりますが、独学で身につけてから稼いでいるエンジニアに共通する点が、3つあります。

  • とにかくプログラミングが好き、楽しんでいる
  • 自分でなにか作り続けている(※稼げるようになっても)
  • プログラミングだけに固執せず、ほかのスキルも掛け合わせている

上記3つです。

独学で挫折しないためには、「短期集中」でやることが、大切です。

目安は、月70時間〜80時間、だいたい約3ヶ月(240時間)くらいですね。

短期集中を終えた後は、環境を変えましょう。

  • 1. 短期集中がうまくいかなかった → プログラミングスクール
  • 2. 短期集中がうまくいった → 企業に入る

上記のどちらかですね。

具体的には下記のとおり。

1. 短期集中 → プログラミングスクール

3ヶ月独学したけど、自信もスキルもいまいちなら…

就職支援付きのプログラミングスクール

2. 短期集中 → 企業に入る

3ヶ月独学して、ある程度基礎スキルも身についた

プロダクトを作りつつ、就職、転職活動開始

という感じで、環境を変えればいいと思います。

「転職先の探し方」は、下記記事でも詳しく解説してますので、参考にしてください。
※質問も受け付けてます。

独学に「1年」とかは、さすがに時間かけすぎなので、

独学は3ヶ月くらいの短期集中

基礎スキルを磨いたら、サクッとプロダクトを作って、就活

優秀なエンジニアがいる環境を選んで入る

優秀なエンジニアに囲まれながら、スキルを磨き続ける

この流れがベストですね。

というわけで以上です。