【完全解説】プログラミング初心者は何から学ぶべき?9つのステップで解説
大学生/大学院生限定プログラミングコミュニティ”GeekSalon“ライターの山本です。
プログラミングは社会のあらゆるものがデジタル化された現代では常に需要があるスキルです。就職活動や転職、副業、趣味などのために近年たくさんの人が学習しています。
この記事を読んでくださっている方の中にはプログラミングに興味はあるけど、何から勉強していいかわからず、悩んでいる方も多いのではないでしょうか。
そこでこの記事では、下記について解説します。
- プログラミングの学習フロー
- プログラミング初心者は何を作ってみるべきなのか
- 独学は可能なのか
この記事を最後まで読んでいただくと、あなたもプログラミング学習を効率的に進めることができるようになります。
初心者でも3ヶ月でプログラミングがマスターできるGeekSalon
大学生限定プログラミングスクールGeekSalonについて知る目次
プログラミング初心者は何から学べばいい?おすすめの学習フローを解説
これから、プログラミング初心者の方がこれから勉強を始めるためにやるべきことをSTEPごとに解説していきます。
STEP1 プログラミングを勉強する目的を決める
すでにプログラミングを勉強する目的を決めている人はSTEP2に進みましょう。
プログラミング言語は数多く存在し、それぞれの言語によって得意な領域、不得意な領域が明確に存在しています。
「とりあえず言語をなんとなくで決めて勉強しよう」とすると、後々「こういうことがしたかったのに、今自分が勉強している言語ではできない。」といったような事に陥るケースが多々あります。
大雑把でも構わないので、自分がプログラミングをやる目的を確定させましょう。
決める例として以下のように決めると、後々言語などを選ぶ時に楽に選ぶことができます。
- プログラミングで自動化をしてみたい
- プログラミングでWebサイトを作ってみたい
- プログラミングでスマホアプリを作成してみたい
他にもプログラミングでできることは多数存在します。
プログラミングでできることがまだ曖昧な方に向けて、プログラミングでできることをまとめた記事もあるので、ぜひご覧ください。
STEP2 学習を始める前に:言語を決める
すでに言語を決めている人はSTEP3に進みましょう。
STEP2では、実際に学習を始める前にプログラミング言語を選びましょう。
STEP1の目的からプログラミング言語を選んでみることをおすすめします。目的が決まらずにプログラミング言語が選べない人は、求人市場などから選ぶこともお勧めです。言語ごとに案件の単価が異なるケースもあります。(案件の規模感に左右されることももちろんあります)
STEP1で言語が決められなかった人は、市場規模をみてから選ぶこともお勧めします。
ただし、プログラミングは言語によって難易度も異なってきます。いきなり難易度の高いプログラミング言語に挑戦すると、挫折する確率も上がってしまいます。最初は難易度の低いプログラミング言語から挑戦することもお勧めです。
なぜなら、最初の言語が難解で行き詰まってしまうと、プログラミングが楽しいと感じられなくなり、学習頻度が減るからです。
将来エンジニアとしてのキャリアを考えている人は、市場での需要が高く、就活や転職の時に有利になる言語を最初の言語に選ぶという視点も必要になります。
プログラミングは一つ言語を習得すると、他の言語も一気に学習しやすくなるので、まずは一つ自分のお気に入りの言語を身につけましょう。
初心者におすすめの言語3選
「プログラミングを始めたいけど、どんな言語を学べばいいのか、自分で考えるのは難しい」という方のために、ここでは初心者におすすめの言語を3つ紹介します。
Python
Pythonは、コードがシンプルで初心者にも学びやすく、近年需要が高まっている言語です。AIやIoTの分野と相性が良く非常に人気があります。
世界的にも人気が高く、TIOBE Programming Community Indexの2021年言語オブザイヤーに2年連続で選ばれています。
特にAIについて学びたい方にとっては外せない必修言語と言えるでしょう。
Pythonでできることは以下の通りとなっています。
- 機械学習を用いた人工知能(AI)の開発
- データ分析・解析
- 業務自動化・効率化
- Webアプリケーションの開発
- 画像の加工
- スクレイピング(※)
上記のことと自分のやりたいことがマッチングしている場合はPythonを学ぶことをお勧めします。
Ruby
Rubyという言語は、まつもとゆきひろさんという方が開発された言語になります。Webアプリケーションを作成する際に、利用される言語になります。
多くは、Ruby on Railsというフレームワークを利用して開発されます。
Rubyでできることは以下の通りとなっています。
- SNSアプリ
- ECサイト
- ブログサイト
- Webシステム
上記のことが自分のやりたいこととマッチングしている場合は、Rubyを勉強するのがお勧めです。
Rubyでできることのほとんどは、Web関連になるため、Ruby以外にもHTML・CSSを勉強することが必須となります。
JavaScript
JavaScriptは、仮想マシンをインストールしなくてもブラウザ上で動作を完結させることができる言語で、HTML、CSSで書かれたページに動的な要素を加えるときによく使用されます。
例えば、Webサイトの質問フォームや画面遷移のボタンなどはJavaScriptによって動作しています。
従来、JavaScriptはこうしたユーザーに見える部分であるフロントエンドに特化した言語でしたが、最近ではユーザーが見えないサーバーサイドの処理も可能になり、フロントエンド・バックエンド両方で活躍するようになりました。
JavaScriptでできることは以下の通りになります。
- Webサイトに動きのあるデザインを作る
- 業務効率化
業務効率化をする際には、Googleが開発した、Google Apps Script、通称GASと呼ばれる言語を利用して行います。 Googleスプレッドシートや、GoogleフォームをLINEや、Chatwork、Slackなどのツールと連携を行うこともできます。
このGASはJavaScriptをベースに開発されている言語になるため、JavaScriptを習得するとGASも楽に習得することができます。
学習したい言語が決まったら、次は実際の学習のフローについて解説していきます。ここではプログラミングの学習を進めていく上での学習フローについて解説します。
STEP3 プログラミングに必要な基礎知識を習得するための教材を選ぶ
プログラミングに必要な最低限の基礎知識を本や動画教材を通して学習します。
プログラミングは全て暗記する必要はありません。コード1つ1つを理解するのではなく概念を理解することが大事です。これを念頭に入れた上で勉強することをお勧めします。
プログラミング初心者の方が勉強できるおすすめのサイトをまとめていますので、ぜひご覧ください。
学習サイトを見つけたら、いよいよ勉強に入ります。しかしその前に大事なことをしなければなりません。それがSTEP4になります。
STEP4 開発環境を整える
忘れてはいけないのは開発環境の構築です。
プログラミングにおける開発環境はハードウェアとソフトウェアに大別され、ハードウェアに関してはお手持ちの使い慣れているPCで基本的には事足ります。
ただし、PCのスペックが以下の3項目を満たしていない場合は新しいPCを購入する必要があるでしょう。
- 8GB以上のメモリ
- 256GB以上のストレージ
- IntelCore i5またはAMDRyzen5以上のCPU
各パソコンの設定画面から確認することができますので、環境構築をする前にPCのスペックは必ず確認しておきましょう。
MacBookの場合は、画面左上のリンゴマークをクリック→このMacについてをクリックする事によってメモリを確認することができます。ストレージに関しては、詳細情報をクリックすると確認することができます。
Windowsの場合は、スタートボタンを選択し、設定を選択します。システム→ストレージでストレージの確認をすることができます。
Windowsは機種によって異なる場合がございますので、確認ができない場合は、「パソコン名 メモリ or ストレージ 確認」と調べると確認することができます。
また、iOSアプリなどを開発する時に使う「XCode」という開発環境を使うにはmacOSのPCを購入する必要があります。
しかしながら、環境構築は初心者の方にとってとても大きな壁となってしまうケースが多いです。環境構築の際に予期せぬエラーが出力されるケースが多いです。
プログラミングスクールの場合は、実際に環境構築のサポート等も行ってくれます。少しでも不安な方はプログラミングスクールの検討もお勧めします。
初心者でも3ヶ月でプログラミングがマスターできるGeekSalon
大学生限定プログラミングスクールGeekSalonについて知るSTEP5 作りたいアプリやサイトをイメージする
基本的な文法が習得できたら、簡単なアプリを自分で作ってみましょう。
オリジナルのアプリを作ることで、技術を体系的に身につけることができます。
プログラミングは奥が深く基礎の部分だけでも全て網羅しようと思ったら膨大な時間がかかってしまい、アウトプットになかなか入れません。
そんな状態では、自分がなんのためにプログラミングを学んでいるのかわからなくなり、そのうち学習に飽きてしまうでしょう。
そのため学習のモチベーションを保つには、まず自分の作りたいものをイメージし、作りながら学ぶというのが一番良いと言えます。
作りたいもの・やりたいことは些細なことでも良いです。オリジナリティがなくてもかまいません。
作りたいものが思いつかないという人は、後の「プログラミング初心者は何をやってみる/作ってみるべき」を参照してみてください。
具体的なデザインやオプションなどの細かい機能は後から調整できるので、まずはそのアプリの肝となるメインの機能を何個か書き出し、ボタンの配置位置などの簡単なUIの設計図を作ってみましょう。
STEP6 実装に必要な情報を集める
初心者におすすめの情報収集のやり方は、QiitaやZenn、GitHubなどの知識共有プラットフォームに共有されている自分が作りたいものに近しい成果物をブックマークして保存していくやり方です。
また、YouTubeにも初心者向けの環境構築のやり方から様々なアプリの作り方まで手取り足取り教えてくれるチャンネルがたくさんあります。
有益な情報を無料で発信してくれているので一見の価値があるでしょう。
STEP7 コピペしつつコードを書いてみる
かき集めた情報をパズルのように組み合わせて自分の作りたいものに近づけていきます。
最初のうちは参考にしたコードに書かれていることが100パーセントは理解できないと思われますが、まずは何か動くものを作るところまで行き着くことが大事です。
今は理解できなくても完成した後にコードを少しいじってみたりして、どういう働きをしているコードなのか試すこともできます。
STEP8 検索を駆使してエラーを修正する
プログラミングをする上でエラーは避けては通れません。
エラーが出たらまずエラー文を探し、エラーの原因は何か考えてみましょう。
Google翻訳を使えば、英語で書かれたエラー文に抵抗を感じてしまう方もスムーズに内容を理解できるでしょう。
最初はエラーの原因が理解できても、それをどう解消すればいいのかわからないと思います。
その時はエラー文をコピー、貼り付けてGoogleで検索してしまえば大抵の場合同じようなエラーで詰まっている人がたくさんいて、誰かがその解決法を書いてくれていることが多いです。
STEP9 コツコツ継続する
プログラミングのスキルは一朝一夕では身に付かず、一説では基礎力を身につけるために200時間の学習が必要とも言われています。
プログラミングを早く上達させるためには隙間時間を見つけ少しずつでもいいので毎日継続することが近道です。
最初はきついと感じるかもしれませんが、自転車の漕ぎ初めが辛いのと同じである程度軌道に乗って来れば慣性で作業できるようになります。
プログラミングに限らずとも、スキルをつけるには継続は力なりです。
プログラミング初心者は何を作るべき?
プログラミングを学びたいけどやっぱり何を作っていいかわからないという方もいると思います。
初心者の方は、最初から複雑なものは作らずに、基礎学習の段階で身についた知識を使って短時間で作れるものを作ることをお勧めします。
先に挙げたPython、Java、JavaScriptで作れる簡単な成果物としては、タイマーやメモ帳などのWebアプリやスマホアプリ、シンプルな構造のWebサイトなどがお勧めです。
CRUDと呼ばれる、Create(作成)、Read(読み込み)、Update(更新)、Delete(削除)の機能を搭載したアプリを作成すると基礎知識を身につけることができます。
プログラミングを勉強していて作りたいものがない方はおすすめの成果物を紹介している記事があるのでぜひ参考にしてみてください。
プログラミングを初心者が独学で身につけることは可能?
ここまで述べてきた学習方法を継続して行えば、初心者でも独学でプログラミングのスキルを身につけることは十分に可能です。しかしながら、プログラミングの独学の挫折率は90%と言われていますので継続力のある方におすすめです。
独学する場合におすすめの方法
独学は難しいですが、不可能ではありません。
何より独学で学習するのはプログラミングスクール等に通うよりも圧倒的に低価格で学習を進めることができるというメリットがあります。
ここではプログラミング学習をリーズナブルな価格で進められる学習サービスをいくつか紹介いたします。
Progate
Progateは、プログラミング学習をする人なら誰しも一度は必ず聞いたことがあるであろう有名な学習サイトで、環境構築の面倒な作業をしていなくてもプログラミングの基礎をスライド形式で学べることが魅力です。
スライドで学んだ基礎知識を、実際にコーディングして動くかどうか確かめることができ、間違っていたらどこがダメだったのかも教えてくれます。
無料会員は、基礎レベルの16レッスンを学ぶことができ、有料会員になると応用や実践レベルの79レッスンを月額税込1,078円で学ぶことができます。
ドットインストール
ドットインストールは、Progateと並んでやすくプログラミングの基礎を学べることで有名なサイトで、1レッスン3分程度という短い動画でプログラミングの全体像を概観できるのが魅力の学習サイトです。
月額税込1,080円でプレミアム動画の閲覧や文字起こし・ソースコードの閲覧、現役のエンジニアに講義でわからなかったところを質問できるなどの嬉しいサービスを受けることができます。
Udemy
Udemyは、ドットインストールと同じく動画でプログラミングを学ぶことができる学習サイトですが、講座のバリエーションが豊富で比較的濃い内容が学べるのが特徴的です。
講座の評価は星評価で確認することができ、人気の講座には専用のSlackやDiscordコミュニティが用意されていたり、開発用の素材がダウンロードできたりと手厚いサービスを受けることができるものもあります。
先述した2つのサービスと比べると少々割高な講座もありますが、月に一度の割引タイミングで購入すると2万円の口座が1000円程度で買えることもあります。
独学しない場合におすすめの方法
独学をしないメリットは、自分の置かれた状態からどう学んで行けばいいのか道を示してくれるメンターをつけることができることや、一緒に切磋琢磨できるプログラミング仲間を作れること、自分では理解できないエラーに出くわした時に理解できるようにより噛み砕いた説明を受けることができる環境に身を置くことができることなどがあります。
しかしながらスクールで学ぶとなると数十万円の費用がかかってしまうこともあり自分には少し敷居が高いと思っている方もいらっしゃると思います。
ここではある程度低い予算でこれらの環境を揃えられるサービスを説明いたします。
Menta
Mentaは、1000円から数万円程度の相場でプログラミングやデザインなどのメンターの指導を受けることができるサービスです。
メンターによってはZoomを繋いでのエラーの解決を手伝いや、オリジナルアプリが完成するまでサポート、ポートフォリオの添削をしてくれるなど低価格なのに対して、きめ細かいサービスを受けることができるのが特徴です。
プログラミングコミュニティへの参加
プログラミングコミュニティは、プログラミングを学びたいという意欲を持った人たちが知識の共有や技能を高めあうための集団のことです。
効果的な学習方法の共有やコミュニティのメンバー同士でエラーの相談ができ、共に学ぶ仲間が身近にいることでモチベーションを維持しやすいことが魅力です。
会費もリーズナブルなことが多く、プログラミングスクールに通うよりもずっと安くて挫折しにくく、スキルを高めやすい環境を手に入れることができます。
学生向けのプログラミングコミュニティGeekSalonでは、3ヶ月10万円程度の低価格で、オリジナルプロダクトの企画からリリースまでを専属のメンターがサポートしてくれます。
メンター含めコミュニティのメンバーはみんな学生なので気軽に質問をしたり相談することができるのでプログラミングに興味があり、始めようか迷っている学生の方にはピッタリな学習環境と言えるでしょう。興味がある方はぜひ無料相談をしてみてください。
初心者でも3ヶ月でプログラミングがマスターできるGeekSalon
大学生限定プログラミングスクールGeekSalonについて知るプログラミング初心者は何から学べばいい?:まとめ
ここまで、プログラミングの学習フロー、最初はどんなものを作ったら良いか、独学は可能なのかについて簡単に紹介してきました。
プログラミングにおいて重要なのは、学習フローに従ってアウトプットを増やし、とにかく自分で何か作れそうなものを作ってみることが重要です。そうした小さな成功体験が重なって自信やスキルが身に付いていきます。スキルがつく前にモチベーションを失い挫折してしまうのを防ぐために教え合い認め合える環境に飛び込んでいくのも学習においては必要なことです。
しっかり9つのSTEPを行う事によって90%の挫折率のある独学の壁を越えることもできるかもしれません。
少しでもプログラミングを勉強する事に対して不安な方はプログラミングスクールの無料説明会に参加してみましょう。
最後に紹介した大学生限定のプログラミングコミュニティGeekSalonでは、約半数の方が文系で、9割の方がプログラミング未経験で入会されます。少しでも興味があったら説明会に足を運んでみてください。毎日オンラインで開催中です。
初心者でも3ヶ月でプログラミングがマスターできるGeekSalon
大学生限定プログラミングスクールGeekSalonについて知る