ALL Life Program Thought

【完全初心者】絶対に間違えないプログラミング学習方法【理由あり】

こんな悩みの方を解決

プログラミングの学習方法が分からない。
参考書・Web学習サイト・プログラミングスクール…結局、どれにすれば良いの?

プログラミングスキルを持っている人ってどうやって勉強していたの?

効率的な学習方法ってあるのかな?

その悩み 解決します。

 

本記事の信頼性

Nakamura(@nkmr_dai

今回は、これからプログラミング学習を始めたい方に

  • どうすれば正しく学習ができるのか

を分かりやすく説明していきます。

僕自身、社会人になるまで プログラミングの「プ」の字も知らなかったので、
丁寧に説明ができればと思います。

それでは、本記事の最後にまたお会いしましょう。

学習方法の答えってあるの?

結論、学習方法の答えはあります

そもそも学習する目的は何でしょうか。
それはプログラミングスキルを習得する」ことが目的ですよね。

プログラミングスキル習得が目的なので、
スキル習得のメカニズムを理解すれば学習方法効率的な学習方法はハッキリ見えてきます。

スキル習得のメカニズムを知る = 正しい学習方法/効率的な学習方法が分かる

スキル習得のメカニズムって何?

結論から言うと、
スキル習得の実現は「フレームワーク×学習手段」のメカニズムによって達成できます。

詳しく説明します。

スキル習得の実現は「フレームワーク×学習手段」のメカニズムによって達成される

フレームワークとは

フレームワークとは 枠組み のこと。

まずは、馴染みがあるであろう 受験勉強を引き合いに説明します。
受験勉強のフレームワークはこのような形。

受験勉強では、
暗記や解法を学び→問題集を解いて→答え合わせを行い→問題点の把握/解消を行って→また勉強へ戻りますよね。
中心にある モチベーション や習慣化はフレームワークをぐるぐる回すためのガソリンの役割を果たします。

実は、プログラムの学習方法においてもフレームワークは受験勉強と同じです。

プログラム学習においても、
コーディングを学び→実際にコーディングを実施→答え合わせを行い→問題点の把握/解消を行って→またコーディングの勉強へ戻ります。

このフレームワークをぐるぐる回すことが、プログラムスキルを習得するために必要なことであり、
そのために「学習手段」を適切に選ぶことが重要になるわけです。

早く回せれば回せるほど スキルを早期で習得することが出来るため、
「学習手段」の選択は、それだけ重要になります。

学習手段について、詳しく説明します。

プログラムスキルを習得するためには、フレームワークを何度も回すことが必要

学習手段とは

馴染みがあるであろう受験勉強を引き合いにすると、
受験勉強には学習手段が大きく3つあるのが分かります。

受験勉強の学習手段

  1. 参考書、通信教材(独学系)
  2. サテライト予備校、オンライン学習サービス(オンライン系)
  3. 塾・予備校・家庭教師(オフライン系)

フレームワークにこの学習手段どのようにマッピングするのかが、
目的を達成するための肝(キモ)となります。

受験勉強においては、手垢がついたやり方=王道のやり方ではありますが、
独学系(参考書)オフライン系(予備校)ハイブリット式を多くの人は採用しているのでは無いでしょうか。
受験した時は 僕もその1人でした。

僕=予備校生が受験勉強の際に使用している「フレームワーク×受験勉強」のマッピング状態はこのような形。

メイン予備校(オフライン系)でフレームワークをぐるぐる回し、
サブ参考書(独学系)を回してました。
(サブの「問題点の把握/解消」では 予備校の先生を使っていました。)

そして、モチベーションと習慣化は予備校で補っていました。
ライバルがいるため強制的に頑張らないといけないですので…。
(独学系メインは 強烈なメンタルが必要です。)

プログラムの学習方法について説明しましょう。
プログラム学習方法も 大きく3つあります。

プログラム学習の学習手段

  1. Webサイト、学習本(独学系)
  2. オンライン学習サービス[Progateなど](オンライン系)
  3. プログラミング教室、オンラインプログラミング教室(※1)、エンジニアから直接教わる(オフライン系)
    ※1:講師が質疑応答をするためオフライン系としている。

プログラム学習において選べる手段は 受験勉強とほとんど同じです。
フレームワークにこの学習手段をどのようにマッピングするのかが、
目的を達成するための肝(キモ)となります。

プログラミング学習においても、王道のやり方は 独学系オフライン系ハイブリット式です。
僕や先輩エンジニアも その1人です。

僕が実際に使用した「フレームワーク×プログラム学習手段」のマッピング状態はこのような形。

メイン参考書(独学系)でフレームワークをぐるぐる回し、
サブ先輩エンジニア(オフライン系)を頼っていました。

そして、モチベーションと習慣化は 会社からミッションとして任命されてしまったため、
逃げ出すことが出来ない状況まで追い込まれたから最後まで回しきれたのだと分析できます。
(再掲:独学系メインは強烈なメンタルが必要)

本記事をまとめるにあたり自己分析も兼ねていたのですが、
僕自身スキルを習得できたことはメカニズム上 必然だったと思います。(逃げられない環境だった。。。)

話を戻しましょう。

スキルは「フレームワーク×学習手段」で習得することができ、
フレームワークのサークルをぐるぐる回すことで知識が蓄積され目的が達成されます。
また、フレームワークの回転数が多い人 が最短の道のりで目的を達成成長できます。

つまり、選ぶべき学習手段は
フレームワークを止めることなく回し続けることができる学習手段
ということになります。

・選ぶべき学習手段はフレームワークを止めることなく回し続けることができるもの
・プログラミング学習においても、王道のやり方は 独学系+オフライン系のハイブリット式
・早くスキル習得したい場合は、フレームワークの回転速度が早いものを取り入れる

プログラミング学習を挫折してしまう人/継続できる人の特徴

挫折してしまう人の特徴は「問題点の把握/解消」を上手く解消が出来ない人です。 


問題点の把握/解消」で 長時間止まってしまうモチベーション低下
その結果、習慣化(サイクルを回す)が崩れ 勉強を続けられなくなります

誰にでも 一度や二度は経験あるのではないでしょうか。

先輩エンジニア
INPUTして やっとの思いでOUTPUTしたけど、動作不良で問題解決に時間がかかりサークルの輪が徐々に大きくなると 次第にOUTPUTするのがしんどくなる。だから、やめてしまう。 言い換えれば、早くOUTPUTまで辿り着けば モチベーション(ガソリン)は補充され成長が実感できるから継続できる。これが真理だと思う。

「分からないことがありOUTPUTに進めない」とか、「OUTPUTで動作エラー時に原因が分からず諦めてしまう」とか、 OUTPUTができないから成長を実感できず挫折してしまう同僚を多く見てきたので、僕も 「問題点の把握/解消」をいかにクリアするのかがスキル習得の一番に重要な要素だと思います。
Nakamura

継続できる人(フレームワークを回せる人=スキル習得できる人)は
問題点の把握/解消」を解決するのが早い or 解決できる学習手段を採用しています。

先輩エンジニア
スキルを習得する人は 問題点の把握/解消 がとても早い。
だから、OUTPUTまでの道のりが短く、成長を実感でき継続できる。
(もしくは、鉄のメンタルを持っている変態か、やらざるを得ない境遇の人間か。 )
要は、「問題点の把握/解消」をいかに早く解消し OUTPUT体験を短いスパンで経験できる人が、成長を実感できるため継続できる。

挫折する人/挫折しない人のいずれは、「問題点の把握/解消」が大きな要因であることが分かります。

では、「問題点の把握/解消」をどうにかすれば良いってことですよね

1つの結論ですが、もしお金を投資するならば「問題点の把握/解消」に集中的に投資するべきだと思います。

詳しく説明します。

・挫折してしまう人の特徴は「問題点の把握/解消」を上手く解消が出来ない人
・お金をかけるなら「問題点の把握/解消」を解消する手段に投資すべき

正しい学習方法を伝える

さて、ここまで述べてきましたが、各ポイントをおさらいしておきましょう。

ポイント

①プログラムスキルは「フレームワーク×学習手段」のメカニズムでスキルは習得できる
②  選ぶべき「学習手段」は「 フレームワーク」を回し続けられるもの
③ 「挫折する人」はフレームワークの「問題点の把握/解消」がボトルネックになっている
 =「問題点の把握/解消」を解決する「学習手段」を選択するべき

もう答えはでているようなものです。

結論から言うと、プログラミング学習において、
オフライン系独学系ハイブリットな学習方法でフレームワークをぐるぐる回すのが一番の近道であり、
絶対に間違えない学習方法です。
(例①:プログラミング教室 +市販参考書やスクール教材)
(例②:オンラインプログラミング教室+市販参考書)
(例③:教えてくれる人+市販参考書)

・プログラム学習において正しい学習方法は、オフライン系独学系のハイブリットな学習方法一択。
オフライン系は「プログラミング教室(オンライン教室含む)・現役エンジニア等の教えてくれる知人」から選択
独学系は「市販参考書・プログラミング教室の教材」から選択
・ハイブリットな学習方法でフレームワークは回すべし 

高校や大学の受験を引き合いにした場合、
オフライン系+独学系のハイブリットな学習方法をとるのが一般的だと説明しましたが、
実はかなり理にかなっています。
 例:予備校+市販参考書 

繰り返しになりますが、
フレームワークの「問題点の把握/解消」を制する者が、スキル習得を出来るになります。

そして プログラミング教室オンライン学習サービス優位点はまさにココ
「問題点の把握/解消」をプロは知ってますから、早くサイクルが回り、習慣化が崩れない

だから スキル習得を早く出来価値がある=ゆえに高い。笑

・プログラミング教室は「問題点の把握/解消」を解消するサービス=価値がある=高い

でも、不思議ですよね。
大学受験の予備校は年間100万円前後(1ヶ月あたり約8万円) 費用が発生するにも関わらず、
プログラミング教室では 期間3ヶ月で30万円前後(1ヶ月あたり約10万)となり、
意外にも大きな差はありません

プログラミング教室と大学受験予備校の費用は、1ヶ月あたりに換算すると大きな差は無い。

しかし、プログラミング教室は高く感じてしまう。

でも 今一度考えてみて下さい。
プログラミング教室や大学受験予備校が高いのは、
サイクルを回す仕組み(特に問題点の把握/解消)というバリュー(価値)を提供しているから高いのです。
だから、親も無意識にこの仕組を理解しているから、予備校の費用を出してくれるケースが多いのです。

今回説明しているフレームワークを知ってもらえれば プログラミングスキルを習得する上で
プログラミング教室スキルを取得できるバリューのあるサービスであり、
価格帯も 大学受験予備校と同等の価格であることから 妥当なものであると納得してもらえるかと思います。

ただ、当然ですが、本記事読者の各家庭環境のコストの兼ね合いもあると思います。
実際に僕も結婚したての頃に Noスキルから プログラミングスキルを取得せざる負えない状況となり、
月額 8万円とか 家賃並だから無理だなってなってました。(予備校費用だしてくれた親は偉大だったと実感)

そこで、実際に 僕が実践した、
「コスト」を考慮し「問題点の把握/解消」を早期解決できるフレームワークを構築した 学習方法紹介/説明します。

おそらく、これが一番コスパ良いです。

詳しく説明します。

コスパが良い+正しく学習する方法(結論)

前段で結論づけてますが、プログラミング学習において、
オフライン系独学系ハイブリットな学習方法でフレームワークをぐるぐる回すのが一番の近道であり、
絶対に間違えない学習方法です。
(例①:プログラミング教室 +市販参考書やスクール教材)
(例②:オンラインプログラミング教室+市販参考書)
(例③:教えてくれる人+市販参考書)

言い換えれば、
有識者の確保(オフライン系」と「自分に合う市販参考書独学系」の組み合わせを実現させれば良い。

そこで僕は、ベースを市販参考書、サブをプログラミング教室を用いてフレームワークを回しました。

この手法のポイント

①あくまで独学がベース。市販参考書とWebサイトを駆使して学習を進めるだけ進める。
②分からなくなったらプログラミング教室の無料体験会に行き有識者に不明点を聞く。
②プログラミング教室では、プログラム言語の基礎から始めるため、そこで基礎知識を復習する。
④受講する体験会メンバーは同一スタートラインの人。絶対に負けられないというモチベーションを補充。
⑤[金銭に余裕あれば]プログラミング教室は無数あるため、自分に合う教室が見つかれば そこに入会する。

知り合いのプログラマーがいれば、その人を利用して全然問題有りません。
ですが、正直、普通に生活していたらプログラマーの知り合いはいないと思います。

そこでプログラミング教室無料体験会を利用する。

当時 プログラマーの知り合いも お金も無かった僕は、
この方法でプログラミングスキル(HTML/CSS/Javascript/PHP/VBA-DOM)を取得しました。
(お金が無いなら、足で稼ぐ精神くらい代償とすべき。)

学習における一番に時間がかかる箇所は、悩んでいる時間です。
僕の経験上、独学では1週間以上悩むことはザラにあり、その時間があれば有識者に聞いた方が
圧倒的に早くスキル習得のフレームワークは回ります。

だから、この手法は おそらく1番効率的+コスパが良い学習方法だと思います。

もし金銭に余裕があるなら 迷わずプログラミング教室に行くべきです。

おすすめするプログラミング教室(無料体験会有)

プログラミング教室で 無料体験会を行っている企業は 無数にあります。
入会も視野にした 教室の選定となると、3つの教室がおすすめです。

おすすめプログラミング教室

1.TECHCAMP(テックキャンプ)(New:無料オンライン説明会 有
2.CodeCamp(コードキャンプ)
3.DMM WEBCAMPビジネス教養コース注意:無料説明会のみ

あとは実際に無料体験会に参加し、
自分に合う講師教材と 出会えることができれば入会する…という流れで問題ないです。

おすすめするプログラミング教室の説明します。

TECHCAMP(テックキャンプ)

※時期によって、TOPページが変化している可能性があります。

TECHCAMPはいわずとしれたプログラミング教室です。

本田圭佑(サッカー)や堀江貴文(ホリエモン)も賛同しているお墨付きのプログラミング教室で、
短期集中でプログラミングスキルを習得したい場合TechCampを選択肢から外すのは ありえません

TECHCAMPを取り入れた学習フレームワークはこのような形になります。

もしTECHCAMPに入会する場合は、TECHCAMPは超短期間でプログラミングスキルを習得する教室のため、
メインをTECHCAMP、サブを市販参考書にしてフレームワークをガンガン回して下さい。

■TECHCAMPについて
実績、知名度ともに業界最大級の未経験を対象としたプログラミングスクールです。(卒業生は9,000名以上)
受講期間中はいつでもメンター(講師)に質問ができ、1人1人の目的達成のためにトレーナーが徹底的にサポートしてくれます。
無料体験会は全国の6教室で行っており、入会すればとオンラインでも学習が可能となっています。

■メリット・デメリット
 [メリット]
・無料体験会で講師と直接コミュニケーションがとれる
・物理教室で学習するためエンジニアの卵と一緒に学習が行える=モチベーションが維持できる。
・オンラインコンテンツもあるためインターネットがつながれば学習場所はフリー物理教室+オンラインは珍しい
値段が 同業他社と比べ 安く7日以内であれば返金保証もしている。

 [デメリット]
・月額料金が低く見えるが、入学金を徴収するため 費用について間違えないように注意(それでも安い)
短期集中で授業するため長期休暇を取れる人でないと受講するのは現実的ではない
・物理教室関東・中部・近畿にしかないため行ける人は限られる
 ※関東:渋谷・新宿・池袋・東京大手町
  中部:名古屋
  近畿:梅田

■TECHCAMPの訴求ポイント
・トレーナーがマンツーマンで最適な学習プランを提案してくれる。
・受講期間中はトレーナーと定期的に面談を行い、適切な学習内容や学習計画をアドバイスしてくれ、目標達成までサポート。
・あらゆるプログラミングスキルが学び放題。
・最新のテクノロジースキル(AIなど)が学べる環境を用意している。
・分からないところは何度でも質問ができるため、挫折することがない(平日は16-22時、土日祝は13-19時)
・オンライン問わず毎日メンターに質問し放題なため、途中で諦めてしまうことが無い。
プログラミング学習は悩んでいる時間が無駄と捉えていて
 TECHCAMPでは1秒でも早く悩みを解決できる環境を用意しているため、最短で目標を達成することができる

<オンライン説明会 ができました ※New>
完全無料のオンライン説明会(TECH::CAMPオンライン説明会)ができました。
所要時間は20分程度ですので、まずはオンラインで説明を聞き 肌に合うか確認すると良いと思います。

■TECHCAMPの無料体験会はこちらからどうぞ(バナークリックでも飛べます)

TECHCAMP 無料体験会申込はコチラから

CodeCamp(コードキャンプ)

※時期によって、TOPページが変化している可能性があります。

CodeCampを取り入れた学習フレームワークはこのような形になります。

■CodeCampについて
オンライン・マンツーマン指導のプログラミングスクールとしてNo.1の実績を持つサービス。
高い学習効果が評価されテレビや新聞、ビジネス誌など 多くのメディアで紹介されている。
講師は全て現役のエンジニア。
未経験から確実に習得するために開発されたオリジナルカリキュラムでWebデザイン、Webサービス開発、アプリ開発などを幅広く学習することができる。

レッスン満足度は94.6%
多くの受講生が、現役エンジニアの手厚いマンツーマン指導によって確実にプログラミングを習得している。

■実際に受講してのメリット・デメリット
 [メリット]
無料体験会手軽オンラインで行える
講師陣現役エンジニア
マンツーマン指導のため授業がわかりやすい
・インターネットがつながれば学習場所フリー
・Webブラウザで受講するため学習環境の構築が手軽(インターネットにつながるPCあればOK)
7時〜24時までオンライン学習受講可能受講しやすい

 [デメリット]
モチベーション維持習慣化自分次第
通いのプログラミング教室と価格が同等であり割高感がある(4ヶ月コースで約35万円)
・個人的には、身振り手振りでコーディング不明点を確認したい人間のため合わなかった。
  (ただ、ここまで手厚いオンライン学習サービスは他に無いため、無料体験は試し見る価値は絶対にあります。)

■CodeCampの訴求ポイント
・実績No.1のオンライン・プログラミングスクール(受講者20,000名以上)
・マンツーマンだから自分のペースで確実に習得できる
・レッスン満足度94.6%、現役エンジニアから実践的なスキルを学べる
・オンラインで365日/7時〜24時迄、時間と場所を選ばずに学習できる
・就職/転職やキャリアについての相談が無料でできる
・PCとネット環境があればすぐに学習が始められる
無料体験レッスンを受講する受講料が1万円引

■CodeCampの無料体験会はこちらからどうぞ(バナークリックでも飛べます)

CodeCamp無料体験申込はコチラから

DMM WEBCAMPビジネス教養コース(注意:無料説明会のみ)

※時期によって、TOPページが変化している可能性があります。

DMM WEBCAMP ビジネス教養コース無料説明会のみ無料体験会はありません。(2020年3月現在)
なぜ紹介したかと言うと、1番手っ取り早くスキルが身につく全額返金保証値段が割安であるから。

スキルが身につかなければ全額返金保証され無料体験会と同等なので、紹介させていただきます。

DMM WEBCAMP ビジネス教養コース を取り入れた学習フレームワークはこのような形になります。

■DMM WEBCAMP ビジネス教養コースについて
ビジネス教養コースでは、マンツーマンサポートと業界最長の"教室通い放題"によって「学習を継続」に重きをおいています。
確実にWebスキルを身につけることができるプログラミングスクールです。
受講者満足度も90%以上となり、業界内で高い水準を保っています。

■メリット・デメリット
 [メリット]
マンツーマン指導通いの教室
最短 1ヶ月(約13万円)でプログラミングスキルを習得できる(理由:マンツーマン指導で手厚い
受講から8日以内であれば全額返金保証TECHCAMPは7日のため1日長い
通いの教室は利用し放題

 [デメリット]
無料体験会がなく心理的ハードルが高い
無料説明会渋谷新宿難波の3つだけなので行ける人が限られている
・オンライン学習サービスは無く、すべて通いで行う必要があるため受講できる人は限られる

■DMM WEBCAMP ビジネス教養コースの訴求ポイント
・短期で学びたい人向け
・1ヶ月で集中して一気に学ぶことができる。
・受講期間 最短1ヶ月(13万円)であり、時間とやる気があればもっともコスパの良いプログラミング教室の1つ
・受講から8日以内であれば全額返金保証(TECHCAMPは7日のため1日長い
・プログラミングやデザイン未経験者でも安心のサポート体制を用意
 特に受講者アンケートでは「サポート体制がしっかりしていて魅力的」という声を多くもらっている。

■DMM WEBCAMP ビジネス教養コースの無料説明会はこちらからどうぞ(バナークリックでも飛べます)

DMM WEBCAMPビジネス教養コース無料説明会はコチラから

市販参考書の選び方

1冊目:とにかく薄く/初心者向けの参考書を選択するべき

初学者の人が 初めに手に取るべき市販参考書は、とにかく薄く/初心者向けのものを選択しましょう。

理由は、フレームワークを回すことを目的にした時に、
薄く/初心者向けの方が フレームワークを回しきれるからです。

薄い/初心者向けの参考書を やりきった時に、
達成感を感じることができると思います。

この達成感モチベーションを生み習慣化定着させてくれます。

そのあとに、標準的な厚さの市販参考書を購入して下さい。

2冊目以降:市販参考書を選ぶポイント

初心者向けの参考書をやり終えた人は、初心者向けではない参考書を購入しましょう。

参考書を選ぶポイントは、3つあります。

市販参考書選択時のポイント

1.主観で良いので分かりやすいと感じる内容か
2.重版されているか
3.発売日が直近1年以内のものか(重版修正が直近で行われているか)

詳しく、説明します。

ポイント1:主観で良いので分かりやすいと感じる内容か

主観はとても大切です。

あなたにとって、分かりやすいデザインでなければ、どんなに良い中身であったとしてもINPUTは達成できません。

世に出ている参考書は無数にあるため、あなたにとって「分かりやすい」と感じる内容であるかを判断軸の1つに置きましょう。

ポイント2: 重版されているか

残念なことにプログラミング書籍は、誤字脱字が多いです。

説明する文章で誤字脱字があるのは まだ良いのですが、
紹介されたソースコードが間違っているものもあり、
この場合、初学者は プログラミング学習を断念せざるを得ません。
(断念する理由:正しく挙動しないプログラムの原因調査をするだけで疲弊し、自分には才能が無いと間違えて捉えてしまう)

だから、重版している本が重要となります。

重版都度、誤字脱字が合った場合 訂正して重版されるため、信頼性が高いです。
また多く重版されているものは、
当然ですが それだけ支持されている=売れている=分かりやすい参考書である可能性が高いからです。

以上より、可能な限り 重版されている参考書を購入することをオススメします。

ポイント3: 発売日が直近1年以内のものか(重版修正が直近で行われているか)

ITテクノロジーは日進月歩で進化しています。
例えば HTML/CSSの言語を例にすると、 HTML/CSS自体は古くからあるプログラム言語ではありますが、
レスポンシブサイト構築技術は 最近の書籍で無いと記載されていません。

ですので、発売日が直近から1年以内のものか、直近の重版時に加筆修正等がされている書籍を選ぶべきです。

編集後記

いかがでしたでしょうか。

プログラミング学習は、継続さえできれば 誰にでも獲得できるスキルです。

多くの方が 挑戦して 挫折してしまうのは、
ご紹介したフレームワークの「問題の把握/解消」を上手く解消が出来てない=継続が困難になるからです。

本記事を執筆するにあたり先輩エンジニアと会話したのですが、

先輩エンジニア
「今は良い世の中になった。プログラミング教室や参考書、Webでもポイントで調べられるようになったから学習において悩む時間が圧倒的に少なくなった。 」

と目を細めていました。

あとは あなたの努力次第です。

もし 金銭に余裕がなければ その分「時間」や「足」を使い、
参考書や無料体験会を駆使して どんどんフレームワークを回して貰えれば と思います。

もし 金銭に余裕があるならば「問題の把握/解消」を解消するサービス=プログラミング教室に投資を行い、
最短距離で プログラミング学習を進めて下さい。

今後、日本では 年金問題や働き方改革によりサラリーマンでは生活が苦しくなる時代に突入します。

いざという時に稼げるスキルがあれば、精神的な安定にも繋がりますので、
本記事をご覧になった皆様=プログラムスキルを取得したいと思っている人は、
プログラミングの道は絶対に間違えではないので、そのまま邁進していただければと思います。

理由なんて、「お金のため」でも良いと思います。
高尚な理由なんていりません。

本記事が ご覧いただいた皆様の背中を少しでも押せるものになれることを強く願っております。

末筆となりますが、ここまで 読んでいただき、ありがとうございました。




-ALL, Life, Program, Thought
-, ,