最近はエンジニアの人気が高まってきて、プログラミングを独学したい人も増えてきましたね。
プログラミングは現代で最も需要のあるスキルといっても過言ではないので、早めに覚えておくに越したことはありません。
この記事では初心者向けにプログラミングの勉強法を解説していきます。
初心者の方が知っておくべき情報をまとめていくので、ご自身の状況に当てはまる部分を参考にしてみてください。
プログラミングの独学は可能か?
最初にプログラミングの独学が可能かについて話をすると、個人的な見解としては『目的別で可否が変わる』です。
もっと具体的に言うと、以下の感じ
・副業でプログラミングする場合 → 独学は可能。でも期間がかかる ・就職先でプログラミングを使う場合 → 独学可能。就職後も努力必須 ・フリーランスエンジニアになる → 独学はあまりおすすめできない
このように独学を全面的には勧めていないという現状ですが、大きな理由は、プログラミング独学だとスキルとコスト両面に問題があるから。
たとえばスキル面では、エンジニアの現場で通用するレベルまで独学でもっていくには相当な地頭の良さが求められます。そのため、基本的にほとんどの人が即戦力になりえないと言っていいでしょう。
さらに、独学には時間的コストがかかるのも無視できない要因で、独学をしている間は無給ですし、未経験のうちから独学となると学習効率はどうしても下がります。
この『投下時間に対するスキルの向上率』という観点で、初心者がプログラミングを独学するのははたして最善か。これこそが目的別で可能という主張の背景です。
別の見方として、趣味でプログラミングをしたい・将来に役立つかもしれないから勉強したい、ぐらいの温度感であれば独学がおすすめです
というわけで『就職やフリーランスなら独学以外も選択肢にいれておくべき』という立場から、勉強法を紹介していきますね。
プログラミング初心者が独学するときの目安
今までプログラミングに触れたことがない方には、「どんな勉強をするべきか」「どれくらいの期間がかかるのか」と気になるはず。
数ある疑問のなかでもプログラミング初心者が特に重視したい『期間・必要なもの・おすすめ言語』について、以下でポイント解説します。
プログラミングの独学にかかる期間
一般的に、プログラミング初心者が独学で身につけるまでの期間は3か月~半年と言われています。
この期間というのはあくまでも目安で、修得ペースは個人によって変わります。また別の観点から、最低200時間の学習が必要という意見もあるため、単純計算で1日2時間はプログラミングに費やすべき、ぐらいに考えてください。
学習期間を聞いて「独学だとこんなにかかるのか……」と気落ちした人は、素早くレベルアップを狙えるプログラミングスクールの活用を検討しましょう。
エンジニアにおすすめのプログラミングスクール3社で、コストを抑えつつエンジニアとして実力UPできるスクールを紹介しているので、参考にしてみてください。
必要なものはノートパソコンのみ
プログラミングの勉強にあたって何はともあれPCがないと始まりません。
といってもプログラムを書いて動作させるのに20万円超えのパソコンはいらないので、現在使っているものがあれば買い替えなくてOKです。
一方でPCを持っていない方はノートパソコンを一台買う必要があります。
エンジニアに人気のMacBookであれば快適にプログラミングができるので、特にPCにこだわりがない方はMacBookを選んでおくといいでしょう。
ここ数年で発売されたものであればプログラミングを行うのに十分です。また使用者の数に比例してネット上に情報が多く存在するため、疑問を自力で解決しやすいのもMacの利点です。
関連記事【脱初心者】プログラミング用のパソコン選びについてまとめてみた
どのプログラミング言語を学習するか
どのプログラミング言語を学習すればいいかに関しては、「自分の興味のある分野がおすすめ」以上のものはありません。
参考までに私がプログラミングを独学したときには、ゲーム開発をしたかったのと仕事に困らないという条件を満たす『Java』を選択しました。
今、初めて独学をするならおそらくRubyかPythonを選ぶ可能性が高いですが、ここら辺は個人のやりたいことによって変わってきます。
目的別に言語を選ぶやり方はプログラミング言語のおすすめ5選【初心者はここから学ぶべき】で紹介しているので、学びたいプログラミング言語が決まっていない方は参考にしてみてください。
効率的なプログラミング勉強法
ここからは効率的なプログラミング勉強法について説明していきます。
前述通り、初心者は独学だけにこだわらない方がいいですが、とはいえプログラミングの基礎を押さえるだけならネットで済ませられます。
プログラミングの勉強法としては、ネット→就職orスクール→書籍という流れがおすすめです。以下で各ステップについて詳しく解説します。
まずは学習サイトで肩慣らし
初心者がプログラミングを勉強するにあたって、最も大切なのは『全体像を把握すること』。
プログラムがどんな仕組みで動いているかを最初に知っておけば、プログラミング言語の役割をイメージしやすく学習効率が高まります。
プログラミングに特化した学習サイトは数多くありますが、まずはProgateとドットインストールを一通りやるのがおすすめです。
2つともIT企業の研修などにも使われる有名サイトで、動画とテキストを使ってプログラミングの基本を学べるため、プログラムが動く様子をイメージしやすいのが利点といえます。
プログラミング初心者の場合、まずは無料部分で基礎を固めてから、自分のやりたい分野に対応したカリキュラムに挑戦してみましょう。
成果物を作ってみる
ある程度プログラミングの全体像が把握出来たら、成果物を作るのが一番の学習になります。
エンジニアならポートフォリオと呼ばれる自分の作品を持っていることがほぼ必須で、視覚的に実力がわかりやすいことから企業への就職の際にも重宝します。
といっても、プログラミング覚えたての段階で壮大な作品を作る必要は全然なく、ある程度の出来であれば十分に価値があります。
ポートフォリオを一気に完成させる必要はないため、最低限の機能を持つサービスを作ってみて徐々に機能を追加していくのもおすすめです。
GitHubに登録してみる
ポートフォリオの第一号ができたらGitHubにぜひ登録しておきたいところです。
GitHubとはプログラム開発を共同でおこなえるクラウドサービスで、そこでは自分の作品を公開することもできます。
GitHubで作品を公開するメリットとしては、評価やアドバイスを貰いやすいことでエンジニアとして急速に成長できる点。
また、作品への興味から仕事につながる可能性もあるため、初心者のうちでも臆せず投稿しましょう。
たとえばWebエンジニアを目指すなら、エンジニアとしての発信用に簡単なサイトを作ってみると一石二鳥でおすすめです。
プログラミング初心者は独学にこだわりすぎない
ここまでプログラミング独学の方法を紹介しましたが、冒頭で伝えたように独学が非効率な場合も多いです。
GitHubで公開されているポートフォリオを見るとわかりますが、最近はエンジニア全体のレベルが高いため、スキルで差別化を図るには独学では厳しいといった現実もあります。
そのため、プログラミングで稼ぐことを考えるならプログラミングスクールに通うことをおすすめします。
・独学で現場レベルまで上げてから稼ぎ始める
・スクールで素早く実力をつけて大きく稼ぐ
この2パターンなら、後者の方がトータルで得をする可能性が高いです。
なお独学で挑戦したい場合は、【初心者向け】プログラミング学習の始め方の記事も参考にしてみてください。
いずれにせよ、ある程度のプログラミングスキルがついた後はさらにレベルを上げるためにも現場に出ることをおすすめします。