ゼロから始めるお金を稼ぐためのプログラミング学習!

お金

プログラミングの勉強を始めたいが何からやれば良いのかわからないという方に向けて、稼げるプログラミングスキルの身に付け方を紹介します。と言ってもやることは非常にシンプルで、プログラミングの仕事を受託するのに必要なプログラミングスキルを習得するだけです。

プログラミングを勉強する理由は人それぞれで、たとえば副業ではなく趣味や転職のために勉強したいという方もいるかもしれません。または、2020年から全国の小学校でのプログラミング教育必修化に伴い、子供に教えるために勉強したいという方もいるのではないでしょうか。

目的によって学習レベルは異なりますが、学習の流れに関する基本的な考え方、踏むべき手順は同じです。このページでは、プログラミング経験がまったくない方が受注して稼げるレベルになるまでの手順を解説していきます。

スポンサーリンク

稼げるプログラミングスキルの身に付け方

先に手順をリストで紹介します。具体的な手順は以下です。

  1. プログラミングを学ぶ目的を明確にする
  2. 必要なスキルを選定する
  3. 必要スキルの基礎学習を行う
  4. 実際に作ってみる
  5. 目的の実行

以上のような流れになります。それでは一つずつ説明します。

①プログラミングを学ぶ目的を明確にする

まず最初に、なぜプログラミングを学ぶ目的を明確化する必要があります。これはモチベーションアップや哲学的な話ではなく、目的によって勉強すべき内容が変わってくるからです。お金稼ぎが目的なら受注する案件に必要なスキルを選んで勉強することになります。

自分でアプリを作ってみたいのであれば、そのアプリに必要な言語、コードを選んで勉強する必要があります。ひとことにプログラミングと言ってもその世界は膨大で、目的に合わないことをやると遠回りです。

もちろんまったく無駄というわけではないのですが、学んだ内容と実際に作業に着手する際の内容にギャップが出てきてしまいます。いざ仕事を受注してみて「勉強したことと違う!この案件に必要な技術を勉強しなおさないと!」となると大変です。

なので、目的に合致するスキルを選定するためにも、最初になんのためにプログラミングを学ぶのか、学んだプログラミングスキルを何に使うのか、といったことを明確にしてください。これについて詳しくは以下の記事で解説しています。

プログラミングの勉強を始める前に!目的を明確化させよう!

②必要なスキルを選定する

Free Stock Photo of Person With Blue Arrows Shows One Chosen Created by Stuart Miles

プログラミングを学ぶ目的が明確になったら、その目的のために必要なスキルを選定します。具体例としては、たとえば副業で開発案件を受注するならその案件ページに目を通します。そうするとそこに必要なプログラミング言語や仕様が書かれているので、それに合致したスキルを勉強します。

しかし、最初は「どの案件を見れば良いのかわからない」という問題があるかと思います。そこで指標にすべきポイントは、似たような案件が多く需要がありそうな感じがする、難易度が低くて経験が浅くてもできそうな気がする、といった案件を選ぶことです。

具体的には、HTML、CSS、JavaScript、VBAなどの案件が該当するでしょう。ただし今後需要に変化があるかもしれないので、案件紹介サイトなどを確認するようにしてください。具体的な案件紹介サイトやその使い方については、以下の記事で紹介しています。

プログラミングの仕事を受注したい!便利なサイトや仕事獲得の流れ

③必要スキルの基礎学習を行う

プログラミングを学ぶ目的、目的に対して必要なスキルが明確になったら、さっそく基礎学習に入ります。基礎学習の方法としては、以下のようなものがあります。

この中のどれが良いかに関しては、好みの問題です。どれが良くてどれが悪いということではありません。

書籍での勉強について

書籍がダメだと言うわけではありませんが、個人的な意見としてはいきなり書籍から勉強に入るのはややハードルが高いかもしれません。というのも、私自身初めてプログラミングの勉強を始めた際に書籍から入って挫折した経験があるからです。

いきなりJavaから入ったのも間違いだったのかもしれませんが、分厚いテキストを読みながら実際に環境構築したりコードを書いたりしていたのですが、最初のうちはとにかく苦痛でした。

勉強が進んできて慣れてきたら書籍で効率的に情報収集するのもありかもしれませんが、いきなり書籍から入るとどうしても心理的な障壁があるかもしれません。もともと勉強が好きで、書籍で学習する自信がある方は問題ないかと思います。

Webサイトでの勉強について

Webサイトに関しても、勉強が進んでいて、ピンポイントで情報収集したい方には非常におすすめできる方法です。グーグル検索のスキルは、エンジニアにとってもっとも重要なスキルだと冗談半分、本気半分で言われることもあるくらいです。

また初心者向けに網羅的に解説しているサイトもあるので、検索してヒットしたページで学習するのもありです。ただし、書籍同様網羅的に学習しようとすると挫折する可能性が高いです。というのも情報量がそれなりにあり、きっちり最初から勉強しようとすると時間が掛かるからです。

文字情報だけで勉強しているとどうしても退屈するので、その点でも初心者にとってはややハードルが高いのかもしれません。Webサイトでの学習を否定しているわけではないので、問題なく学習できそうな方はWebサイトを選択して問題ありません。

動画や学習サイトでの勉強について

動画や学習サイトでの勉強は、初心者にとってハードルが低く、取っつきやすい勉強法かと思います。まず動画については受動的に見ていても進んでいくため、脳へのストレスが少なく済みます。

学習サイトは環境構築なしでプログラムを実際に入力しながら勉強できるサービスですが、これも気軽にリラックスしながら取り組めるでしょう。ゲームのようになっていて、プログラミング学習を進めるごとにレベルアップしていくサービスなどもあります。

動画にしても学習サイトにしても、比較的楽に楽しみながら学習を進められる点に魅力があります。ちなみに、動画なら「ドットインストール」、学習サイトなら「Progate」がもっともおすすめです。

ドットインストールは3分動画でプログラミングについて解説されているサイトで、初心者向けのレッスンは無料で受けられます。気軽に見ていれば基本的なことがわかるので、おすすめのサービスです。

Progateはサイトに用意されたエディタに実際にソースコードを書きながら勉強を進めていく学習サービスです。Progateに関しても初心者向けのレッスンは無料です。どちらが良いかは人それぞれですが、とりあえずインプットに特化したいという方はドットインストール、最初から手を動かしてアウトプットしていきたい方はProgateが良いでしょう。

プログラミング学習において最終的にはアウトプットが重要ですが、最初の段階ではインプットと並行してもインプットに特化してもどちらでも問題ありません。好みで選ぶと良いと思います。それぞれのリンクは以下です。

ドットインストール(動画学習したい人向け)

Progate(エディタにプログラミングしながら学習したい人向け)

ちなみにどちらのサービスも月額980円(税込)を支払うことで機能追加されたり中級者以上向けのサービスを受けられるようになります。ドットインストールは特に有料にすると動画の再生速度を変えることができるので、有料機能を使いたい方や中級者以上向けのコースを利用した方は有料版を利用するのがおすすめです。

それほど高い料金ではないのであまり負担にはならないかと思いますが、サービスが合わないと感じる可能性もあるのでとりあえずは無料版で試してみると良いでしょう。

プログラミングスクールでの勉強について

Free Stock Photo of Back to school - Study concept Created by Jack Moreh

短期間で効率的かつ最短ルートで学習を進めたい方は、プログラミングスクールを利用するという選択肢もあります。プログラミングスクールのメリットとしては以下のようなことが挙げられます。

  • 未経験者が短期間で仕事で通用するレベルに成長できるカリキュラムが組まれている。
  • 練習用のプログラムでバグが発生した際に、すぐに講師に質問できる。
  • モチベーションを維持しやすい。

一見するとカリキュラムがスクールのもっとも大きなメリットに思えるかもしれませんが、個人的には質問できることモチベーション維持の方が大きなメリットかなと思います。カリキュラムももちろん効率的なのですが、勉強が苦手でない限り、Webサイト、動画サイト、書籍などでも似たような勉強ができます。

よほど誤った教材を選択しない限りだいたいは効率的に学習を進められるので、プログラミングスクールだけのメリットではないということです。むしろプログラミング学習において大変なのはバグにハマった時で、私自身最初独学で勉強し始めて挫折しました。

質問してすぐにバグを解消できる環境であれば、バグを解消できずにモチベーションが低下してしまうことも少なくなるでしょう。また講師がいれば完全に一人ではないので、いつの間にか勉強しなくなっていることもないかと思います。

ただし、プログラミングスクールさえ利用すれば絶対にプログラミングスキルが上がるというわけではありません。カリキュラムは与えられますが、勉強するのは自分自身です。スキルさえ身に付けば転職や受注案件によってスクールに投資したコストは数週間~数ヶ月で回収できますが、逆にサボりすぎてスキルが身に付かなければスキルも身に付かずコストも回収できません。

なので、せっかくスクールを利用するのであればスキルを身に付けて余裕でおつりが来るくらいに後から仕事で回収した方が良いですね。おすすめのスクールをおすすめ順に紹介しておくと以下のようになります。

基準としては、コースの内容と実績オンラインで学習が楽他のサイトでも積極的に紹介されており評判が良い、といったものです。また料金等は目安で、コースや学習期間により変動し、また随時変更される可能性があります。詳細はリンク先にてご確認ください。

第1位 テックアカデミー

レッスン形式:オンライン(課題カリキュラム+マンツーマン)
料金目安:社会人129,000円 (1ヶ月プラン)、学生89,000円(1ヶ月プラン)
学習期間:1ヶ月~4ヶ月
チャットサポート日時:全日15時~23時

TechAcademyはオンライン完結型なので、住んでいる地域に関係なく受講できます。
また自宅で簡単に無料体験できる点も魅力です。コースは短期集中型です。

第2位 コードキャンプ

レッスン形式:オンライン(完全マンツーマン)
料金目安:Webマスターコース 148,000円(2ヶ月プラン)
     アプリマスターコース 148,000円(2ヶ月プラン)
学習期間:2ヶ月~6ヶ月
レッスン(チャット)対応日時:全日7時~23時40分

CodeCampもオンライン完結型です。マンツーマンで学習できます。

第3位 テックキャンプ エンジニア転職(旧テックエキスパート)

レッスン形式:通学(東京、愛知、大阪)+オンライン
料金目安:598,000円(オンラインなら498,000円)
学習期間:10週間 or 6ヶ月
レッスン日時:受講スタイルにより異なる

未経験からの転職やフリーランスといった、即戦力を養成するカリキュラムとなっています。

第4位 テックキャンプ プログラミング教養

レッスン形式:通学(東京、大阪、愛知)+オンライン
料金目安:177,600円
学習期間:3ヶ月
教室利用/直接質問日時:平日16~22時、土日祝日13~19時
オンライン質問対応日時(チャット・ビデオ通話):全日13~22時

オンライン完結型とオフラインで教室に通うのとどちらが良いかは人によります。教室に通った方がモチベーションを維持しやすいという人もいるでしょう。またスクールに通う仲間ができるというメリットもあるかもしれません。

ただし私自身は質問できる環境(メッセージへの返信が早い、回答が丁寧、など)さえ整っていればオンラインの方が効率的かと思っています。またCodeCampは完全マンツーマンですが、TechAcademyはマンツーマンと教材による自己学習がミックスされたスタイルです。

私の考えとしては、オンラインで、なおかつずっと付きっきりではない方が楽に集中して継続しやすいと思います。ただし好みの問題なので何とも言えません。また上のランキングは私の意見だけでなく他サイトの意見や口コミも反映させたもので、むしろそれがほとんどです。

しかし結果的に私の見解とランキングが一致しているので、多くの人は学習のしやすさを重視しており、自分が楽で効率的に勉強できる形式を選択しているということでしょう。プログラミングスクールの数が多いためどれを選べばよいのか迷ってしまうかもしれませんが、ある程度優良なスクールを選べば学習内容的にはそこまで差はありません

学習スタイル(オンライン、オフライン、マンツーマンなど)、自分の勉強したい言語は含まれているか、どのくらいの期間スクールを利用するか、転職希望の方は支援があるか、といった項目が比較ポイントになります。

④実際に作ってみる

プログラミングスクールを利用する場合は、練習用のシステム開発もカリキュラムに含まれています。スクールを利用されない方は、一通りざっと勉強を済ませたら実際に何か作ってみることをおすすめします。

どうしても早く転職しなければならない、お金がないから早く受注したい、といった方は実際に作る工程を飛ばしても何とか取り繕うことは可能です。しかし転職にしても案件受注にしても何か作った経験が自分の自信にもなりクライアントへの説得力にもなるので、簡単なもので良いので作ってみることをおすすめします。

具体的に何を作るかについては、自分が勉強した言語を使って、なおかつなるべく目的に近いものが良いです。たとえばWebページの表面を作るような案件を受注したいのであれば、HTMLとCSSで実際にページをデザインしてみる、といった形です。

どの程度練習工程を挟むかは、時間、労力的な余裕と、自信の度合いによります。

⑤目的の実行

Free Stock Photo of Dart Blasting Through Barrier - Purpose and Focus Concept Created by Jack Moreh

いよいよ勉強してきたことを活かして目的を達成します。転職したい場合は転職活動を、仕事を受注したい場合は受注します。特に仕事を受注する場合、最初は勉強してきた内容と業務で扱う内容がうまくリンクしないかもしれません。

どのようなコードで仕様を実現すべきかピンと来ないかもしれませんが、調べているうちに「あのとき勉強したこのコードを使えばいいのか」といった形で徐々にリンクするようになります。案件をこなせばこなすほど楽になっていくので、一番大変なのは最初のうちだけだと割り切って、多少辛くても最後までやり切ることが大切です。

悩みながらこなした経験は、後のスキルになり、思い出にもなります。具体的な転職方法、受注方法は以下の記事で紹介しています。

IT業界への転職は可能なのか?成功のコツや将来性について

プログラミングの仕事を受注したい!便利なサイトや仕事獲得の流れ

最後に、プログラミング学習において大切なこと

プログラミングを身に付けてそれをお金にする流れを解説してきました。目的の明確化に始まり目的の達成に終わる。プログラミング学習はあくまでもその間にあるもので、プログラミング自体ツールに過ぎません。

そしてプログラミング学習において大切なことは以下の2つです。

  • 完璧主義にならずにチャレンジしてみること。
  • トラブル発生時に一番成長するということ。

いずれも過去の自分に対して言いたいことでもあります。まずプログラミングの勉強を始めると、よくわからないことだらけです。そうするとしっかりと理解してから実際に書いてみたい、まだ理解できていないからアプリ開発なんて無理だ、といった考えが出てきます。

他には、もっと便利なツールがあるのではないか?もっと効率的なやり方があるのではないか?といった疑問も出てくるかと思います。日々疑問を持って利便性を追求するのは良いことなのですが、やりすぎると作業が進まなくなります。

ベテランエンジニアでも100%効率的に作業することは不可能です。時々ツールなどを見直すことは重要ですが、そこに固執しすぎるとそれだけで時間と労力がなくなってしまいます。100%完璧に効率的に勉強や作業を進めることは不可能なので、多少わからない部分があってもどんどん進めていく姿勢が重要です。

やっていればわかってきますし、明らかに問題点を感じたタイミングで見直せば良いのです。そしてリサーチを徹底せずに作業に着手すると、ミスやトラブルも発生します。そのときに、「事前のリサーチをもっと徹底しておけば良かった」「今までやってきたやり方は非効率な部分があったんだ、時間を無駄にした」と思うかもしれません。

しかし、たとえトラブルが発生したとしてもそれが成長につながり、なおかつ何でもかんでも調べまくるよりトータルで掛かる時間は短く済みます。完璧主義で情報収集などを徹底する人ほどミスもトラブルも少ないかもしれませんが、その分チャレンジする時間や労力が減り、成長機会も失ってしまいます。

訳が分からないまま既存のコードをコピペするようなことはNGですが、少しくらいわからないことがあっても、どんどん勉強を進めて手を動かしていくことで、短期間で成長できます。完璧主義にならず、トラブルを恐れないで頑張ってください

今回紹介したプログラミングスクールは以下です。

  1. テックアカデミー
  2. コードキャンプ
  3. テックキャンプ エンジニア転職(旧テックエキスパート)
  4. テックキャンプ プログラミング教養

TechAcademyとCodeCampは完全オンライン、TECH::EXPERTとTECH:CAMPは通学とオンラインの両方に対応していましたね。どれも評判は良いので、後は好みの問題かと思います。

特に完全オンラインの二つは、TechAcademyが課題とマンツーマンの並行で進めるスタイルなのに対し、CodeCampは完全マンツーマンという違いがあります。どれも無料体験ができるので、とりあえず試して比較してみるのがおすすめです。

タイトルとURLをコピーしました