現在、エンジニアの需要が高まっていることもあり、プログラミングを勉強したいという方は非常に多くなっています。
その一方で、実際に始めるとなると「何から始めていいのかわからない」という方も多いのではないでしょうか。
というわけで、完全初心者向けに「プログラミング学習の始め方完全ガイド」を作成しました!
この記事はこんな方におすすめです。
- プログラミングは全くの初心者だけど、何かを作れるようになりたい
- プログラミングスキルを身に着けて、プロのエンジニアになりたい
- 副業やフリーランスとして、プログラミングで稼げるようになりたい
- 自分でWebサービスを作ってみたい
努力次第ですが、1つずつこなしていけば3か月程度である程度の力を身に着けることは可能です!
目次
そもそもプログラミングとは?プログラミングを学ぶメリット
そもそもプログラミングとは何か、というところから解説します。
一言でいうと、「プログラミング=コンピュータを動かす仕組み(=プログラム)を作ること」です。
- YouTubeやTwitter、Facebookなどのアプリ
- 工場で自動的に動き続ける機械
- 銀行のATM
- パソコンやスマートフォン
こういったものはすべて、誰かが作ったプログラムによって動いています。そのプログラムを作ることを「プログラミング」というのです。
プログラミングを学ぶメリット
プログラミングを学習する人は、近年急増しています。
では、なぜ今プログラミングを学ぶ人が増えているのでしょうか。
プログラミングを覚えると、下記のようなメリットがあります。
- 市場ニーズに対して人材の供給が足りておらず、高収入が狙える
- 一度手に職を付けると転職先や仕事に困らない(潰しが効く)
- 論理的思考力が身につく
- 場所や時間にとらわれない働き方が可能
- ITの基礎知識が身につき、機械に強くなる
- 副業で月5万円以上の収益を得ることができる
他にも数多くのメリットがありますが、プログラミングの習得は現代において決して無駄になることはないスキルだと思います。
無料で出来る?プログラミング学習の準備にかかる費用
数多くのメリットがあるプログラミングスキルの習得ですが、プログラミングの学習を始めるのにお金はどれくらいかかるのでしょうか。
結論から言うと、最低限必要なものがそろっていれば無料で始めることができます。
プログラミング学習にかかる費用を表にまとめました。
必要なもの | 必須度 | 価格帯 |
---|---|---|
パソコン | ★★★★★ | 5万円~20万円 |
自宅のインターネット環境 | ★★★★★ | 5,000円/月 |
PC周辺機器(マウスなど) | ★★★★☆ | 1,000円~1万円 |
書籍 | ★★★☆☆ | 1,000円~5,000円 |
プログラミングスクール | ★★☆☆☆ | 20万円~150万円 |
色々とお金がかかってしまいそうにも見えますが、最低限無いと困るのはPCとネット環境ぐらいです。また、既に持っているものを新しく買う必要はありません。
プログラミング学習者の急増に乗じて、高額な情報商材を売りつける業者も出てきているので、注意しましょう。基本は無料で学習出来ると考えておけばOKです。
プログラミングに必要な環境をそろえよう
パソコンはMac?Windows?
MacとWindowsどちらが良いか?というのもよくある質問ですが、結論としてはどちらでも大丈夫です。
実際の現場では、
- BtoC(個人のユーザー向け)アプリを作っている会社はMacの利用率が高い
- BtoB(企業向け)アプリを作っている会社はWindowsの利用率が高い
こんな感じの雰囲気はあると思いますが、どちらかでないとダメ、というケースはほとんどありません。
例外として、「iPhoneアプリ」や「iPadアプリ」を作りたいと考えているのであれば、Mac一択になります。
多少お金がかかってもデザインがかっこいい方がよい!という場合はMacを、そこまでお金はかけずにスタートしたい場合はWindowsを選択しておけば問題ないでしょう。
どちらかというと、快適にプログラミングを進めるためには最低限のスペックがそろっていることの方が重要です。
目安として下記のスペックがクリアできていれば、プログラミングに支障は無いでしょう。
- CPU:Core i5以上
- メモリ:8GB以上
(できれば16GB以上推奨) - ストレージ:SSD 128GB以上
(できれば256GB以上推奨)
迷った場合は、MacBook Pro 13インチモデルを選択しておけば間違いありません。
持ち運びもしやすく、高品質で、数多くの現役エンジニアに愛用されています。
ネット環境を用意する
自宅にインターネット環境が無い人は、ネット回線の契約も必要となります。
例外として、
- スタバやマックなど、Wifi環境のあるカフェで勉強しようと考えている
- 既に何らかの方法でインターネットに接続する環境がある
こういった方は必ずしも必要ではありません。
しかし大半の方は自宅でPCからネットに接続できた方が良いです。通信回線業者は何を使っても大丈夫ですので、ネットに接続できればとりあえずOKです。
おすすめのプログラミング言語は?Java?Ruby!?
プログラミングの環境が整ったら、いよいよプログラミング言語の学習に入ります。
しかし、「いろいろな言語がありすぎてどの言語が良いのか分からない・・・」そんな方も多いのではないでしょうか。
これに対する結論は「やりたいことによる」です。
プログラミング言語は、言語によって得意な領域が決まっています。「自分自身が何を作りたいか」を元に、それが実現できる言語を選ぶのも良いでしょう。
例えば下記表のようなイメージです。
やりたいこと | 向いている言語 |
---|---|
インターネット上にWebサイトを公開したい | HTML、CSS、JavaScript |
YahooやGoogleのようなWebサービスを作りたい | PHP、Ruby、Java |
モンストやポケモンGoのような、スマホ向けアプリを作りたい | Swift、Kotlin、Java |
AIや機械学習に触れてみたい | Python、R言語 |
そうは言っても、結局のところどれを選んだらよいのかも分からない・・・初心者におすすめの言語は無いの?
そんな方向けに、大半の初心者の方におすすめできる学習順序をご紹介します。
- HTML・CSS
- JavaScript
- PHP(もしくはRuby)
この順番で勉強しましょう。
人気の高いWeb系のエンジニアを目指すことを想定した学習順序となっています。
上記の順番をおすすめする理由としては、Webエンジニアを目指す場合下記の2種類の技術を両方とも覚える必要があるためです。
- フロントエンドの技術
(画面デザイン等、目に見える部分を扱う) - サーバーサイドの技術
(裏側で動く処理を扱う)
(いきなりよくわからない横文字が出てきたかと思いますが、今は雰囲気だけの理解で大丈夫です。)
そして、「フロントエンド」「サーバーサイド」を言語に落とし込むと、下記のような学習順序となります。
- フロントエンドの技術は、「HTML・CSS・JavaScript」の3つがすべて必修となるため、まずはそれを学習。
- サーバーサイドの技術は、(はじめのうちは)数ある言語の中からどれか1つを習得すれば十分なので、比較的難易度が低いと言われるPHPかRubyのどちらか1つを選んで学習。
どの言語が良いか分からない方は、ぜひこの順序で始めてみてください。
何から始めたらいいの?プログラミング学習はじめの一歩
勉強するプログラミング言語が決まったら、早速プログラミング学習を開始しましょう。
おすすめは「Progate」を使った勉強です。
Progate
Progateは、ゲーム感覚でプログラミングを学んでいけるプログラミング学習サービスです。
非常に説明がわかりやすく、数多くのプログラミング初学者に使われています。
正直、下手な書籍よりも分かりやすく初学者向けですので、最初のステップはProgateで良いと思います。
無料会員と有料会員がありますが、基礎を学ぶのであれば無料会員でも十分なコンテンツが用意されていますので、まずは無料会員で始めてみることをおすすめします。
ドットインストール
ドットインストールは、動画でプログラミングを学べる学習サービスです。
こちらもProgateと並んで、数多くのプログラミング初学者に利用されているサービスです。
無料動画も数千本用意されていますので、まずは無料の範囲で使ってみるとよいでしょう。
自分で企画したアプリを作ってみよう
基礎が分かってきたら、次は自分で企画したアプリを実際に作ってみましょう。
勉強して分かったつもりになっても、ゼロから作ってみると意外とつまずいたりします。
どんなものを作ればいいの?
⇒自分が必要なものでOK。
- プログラミング学習でつまづいた内容を友達とシェアするアプリ
- スーパーで買い物をするときに使う買い物専用メモアプリ
- 好きなゲームの攻略ツール
などなど。
「自分がほしいものをつくる」というのは、高いモチベーションが維持できるし、完成したら自分で使えて便利だし、もちろん勉強にもなるし、一石三鳥です。
なかなか思いつかないという場合は、既存のサービスのコピーサイトを作ってみる、でも大丈夫です。
※コピーサイトを作る場合は、あくまで身内までの公開にとどめましょう
「ゼロから作ってみる」という作業が、成長するにあたって大事なポイントです。
プロのエンジニアになるには?おすすめは「IT企業への転職」
自分で企画したアプリを完成させるレベルまで到達出来たら、もうかなりの技術は身についているでしょう。
このタイミングで、「プログラミングで稼ぐ」つまりプロのエンジニアを目指しても良いと思います。
おすすめはIT企業に転職すること
プロのエンジニアと言っても、下記のように色々な選択肢があります。
- IT企業に就職(転職)し、エンジニアになる
- フリーランスエンジニアとして独立する
- 本業を続けながら、副業として月5万円稼ぐ
- 自分で起業して、Webサービスを立ち上げる
それぞれにメリット・デメリットがあるので、一概にどの働き方が良いというのはありません。
ただ、業務未経験のプログラミング初学者には、圧倒的に「IT企業に就職(転職)し、エンジニアになる」をおすすめします。
理由は簡単で、「お金をもらいながら先輩にプログラミングを教えてもらえるから」です(笑)
フリーランスや副業の場合、スキルのあるエンジニアであれば高収入が狙えるのは事実です。しかしプログラミング初学者が最初からここを目指しても、なかなか案件が獲得できない。
教えてもらう機会がないためスキルも伸びず、単価も上がらない・・・こういった負のループに陥る可能性があります。
一方で会社に所属する場合ですが、会社としても「社員のスキルアップ=業績向上」につながるため、先行投資として成長の機会を与えてもらえます。
実際、エンジニアという人たちは、技術を後輩に教えることが好きな人が多いです!
ゆくゆくフリーランスを目指している人であっても、最初のキャリアはサラリーマンエンジニアを選択した方が、技術スキル成長の初速は早められるかと思います。
もちろん、「教えてもらうために会社に入ろう!」という甘い考えだけで応募してくる人を採用してくれる企業はありません。転職者としては、経験を積ませてもらう代わりに「自分はどの部分でチームや会社に貢献できるか?」を考えることが重要です。
エンジニアに転職するには?転職エージェントに登録しよう
ITエンジニアへの転職を目指す方におすすめしたいのは、「転職エージェントに登録すること」です。
転職エージェント?転職サイトなら使ったことあるけど・・・
という方もいらっしゃるかもしれませんが、転職する際には圧倒的に転職エージェントの使用をおすすめします。
転職エージェントとは、転職希望者と企業との間を取り持って、紹介や斡旋をしてくれる業者さんなのですが、
- 直接交渉しづらい年収など条件面の交渉を、企業との間に入ってしてくれる
- 自分自身でも気づかない強みやスキルを整理して、企業に推薦してくれる
- 自分の希望に合った企業を紹介してくれる
など、大きなメリットがあります。
「転職サイト」を使うこと自体が悪いわけではありませんが、実際に転職活動を行う場合は転職エージェントの使用をおすすめします。
おすすめはやはりマイナビITエージェント
やレバテックキャリアなどのIT系に強い転職エージェント。
登録無料で、キャリアの相談にも乗ってもらえるため、すぐに転職するつもりが無くてもとりあえず登録しておくと良いでしょう。
Q&A:よくある質問
Q:プログラミングスクールには行った方がいい?
結論から言うと、プログラミングを習得するのにプログラミングスクールは必須ではありません。
独学でプロのエンジニアになっている人は多数存在します。
お金もそれなりにかかるので、プログラミング初学者全員に必ずおすすめするものではありません。
また、教材目当てにスクールに通うのもおすすめしません。
今はProgateをはじめ、無料でも優良な教材を利用することができる時代ですので、「多額のお金を払わないと良い教材で学べない」ということはありません。(ましてや物の良し悪しが分からない初学者向けに、数十万円の教材を売ろうとするぼったくり業者もいますので、本当にご注意ください)
では、プログラミングスクールは行く意味が無いのか?というとそんなことはありません。
「侍エンジニア塾」のアンケートによると、プログラミング学習者の約9割が挫折や行き詰まりを経験しているそうです。
行き詰った際に、独学で何とか突破していける方であれば良いのですが、全ての方がそうとは限りません。
- 行き詰った時に人に聞くことができる
- 人に見られていることでモチベーションが維持できる(いわゆるライザップ方式)
- 一緒に競い合って成長する仲間ができる
- 実際の業務に近い、チームでの開発が経験できる
このあたりはプログラミングスクールでしか得られない大きなメリットだと思います。
エンジニアになることで得られる年収や働き方等のメリットと、プログラミングスクールにかかる費用を天秤にかけたときに、
勉強を諦めて途中でやめてしまうぐらいなら、思い切って自己投資しよう!
と思える方であれば、プログラミングスクールは有効な選択肢の1つになるでしょう。
※ちなみにお気付きの方もいると思いますが、「IT企業への転職」に成功してしまえば会社が「投資」として教育をしてくれるため、お金をもらいながら上記のメリットがほぼ享受できます。。
なので1番のおすすめは、やはり何とかして転職にこぎつけて開発企業に潜り込むことですね。
とはいえ、ある程度はスキルが無いと未経験転職は難しいです。
卵が先か、鶏が先か。
結論としてプログラミングスクールについては、まず少し独学でやってみて、必要と感じたら検討してみるというスタンスで良いと思います。
最後に
今回は完全初心者向けに、プログラミング学習のロードマップを解説しました。
ご質問やお悩み相談も受け付けますので、お気軽にコメントやメール等頂ければと思います!