みなさん、こんにちは!
タカハシ(@ntakahashi0505)です。
プログラミングを学ぼう!
と思ったとき、まずどのような行動をとるでしょうか?
書籍を買う、ネットを調べる、セミナーに参加する…などが思いつくかも知れません。
でも、ちょっと待ってください。
実はその前に確認すべきことがあります。
「プログラミングを習得するには、どれだけの時間が必要なのでしょうか?」
それをわからないで走り出してしまうと、けっこうお金と時間を投資したのになかなか成果が出ない…ということになり兼ねません。
ということで、今回はプログラミングを習得するためには何時間の学びが必要なのか?を明らかにしつつ、実際にそのための時間を捻出し、その習慣を作る方法を考えていきます。
※この時期はコミュニティ「ノンプログラマーのためのスキルアップ研究会」セミナーVol.1「『プログラミングって何時間勉強すればいいの?』学ぶ時間と習慣の作り方」の内容の一部を加筆修正して記事にしたものです。当日の様子は以下のツイートまとめもご覧くださいませ。
プログラミング習得に必要な時間
まず、プログラミング習得に必要な時間を割り出しましょう。
意外と皆さん、そのことを知らずに学習を始めてしまいます。
ネットを検索するといくつかの例が見つかりますので、見てみましょう。
Rubyを1カ月で学んだu_babaさん
まず、Rubyをたった1カ月で習得されたu_babaさんの例です。
上記記事で紹介されている、u_babaさんの学びをまとめると、以下のようになります。
- 教育スタートアップでサービスを作りたかった
- 30歳からはじめた
- 1日8時間、計240時間
- 教材は、本を5冊、「ドットインストール」、勉強会に参加
- 途中でプロトタイプも作った
ズバリ、240時間です!すごいですね~
3カ月でマスターするトレーニング法
次に、スキルハブ吉田さんがおすすめしている例を見ましょう。
トレーニングのステップについて細かくご紹介いただいていますが、ざっくりまとめるとこのような形です。
- 1日3時間、2~3か月で基礎を身に着ける→180~270時間
- 入門書の写経、作ってリリースすること、コミュニティへの参加
Google Apps Script本を2年で出すことになったTさん
次に、Google Apps Scriptを学んだTさんの例です。
まとめますと、だいたいこんな感じです。
- だいたい200~300時間くらい+仕事でかかわった時間
- 教材は書籍2冊とネット
Tさんの例については、セミナーで話をしている動画を抜粋していますので、合わせてご覧ください。
プログラミング学習に必要な習慣は?
つまり、プログラミングを習得するには200~300時間くらい必要ということになります。
当然、初心者のうちは「モノ」にはなりづらいものです。
ですから、どれくらい先で「モノ」を使えるようになりたいかというところから、1日あたりどれほど学習時間を持つかを逆算する必要があります。
例えば、数か月から半年で「モノ」が使えるようになりたいのであれば、毎日2~3時間を学習に充てる必要が出てきます。
週に2時間だけとか、単発セミナーだけで、なんとかなると思うのはとても危険です。
プログラミングはマラソンのようにずっと走り続けなくてはいけないもの、ペナントレースのように毎日試合があるようなものです。
時間とお金がある程度あれば、u_babaさんのように、短期集中ブートキャンプ的に身に着けることができますが、ほとんどの場合は、今の生活を前提にプログラミングの習慣を組み込む、つまり「習慣化」が必須になります。
プログラミングを習慣化するためのステップ
ビジネスマンの場合、当然ながら働いていますから、毎日2~3時間の捻出は簡単にはいきません。
ですが、その中で時間と習慣を作るということを実現するためのステップがあります。
それは以下のようなものです。
- 現状を把握する
- 投資と浪費を仕分ける
- 浪費をなくす
- 時短する
- 時間を押さえる
この部分、以下の動画でも導入の部分を公開していますのでご覧ください。
以下、簡単にそれぞれのステップについて解説をしていきます。
1. 現状を把握する
まず、多くのビジネスマンが意外にも「自分の時間を何にどのように何時間かけたか?」を正確に把握していません。
毎日仕事がある中で、2~3時間捻出するという困難に立ち向かうわけですから、どこに工夫をする余地があるのかを洗い出す必要があります。
現状を正確に把握すると、色々とやれる余地が見えてくるので、まずはそこがスタートです。
2. 投資と浪費を仕分ける
時間の使い方を「投資」と「浪費」に仕訳します。
自分にとって得な時間の使い方であればそのままで良いのですが、意外と自分にとって損な時間の使い方をしている場合も多くあります。
その浪費の時間を洗い出して、対策の対象とするのがこのステップです。
3. 浪費をなくす
次に、浪費の時間をなくすための対策を考案して実行するフェイズです。
手段としてはおおまかに以下のようなものがあります。
- そのままなくせるものはなくす
- 別の手段や、別の時間に代替してなくす
- 自動化する
自分にとって損しちゃっているところなので、できる限りなくす努力をするのが良いです。
4. 時短する
浪費の時間を極力削減した結果
- 投資の時間
- 浪費だが、どうしても残った時間
だけが残ります。
この時間も、できる限り圧縮して時短をするのがこのステップです。
ポイントはPCを使っている時間です。PCのセッティングと扱い方を見直すことで、かなりの効果を見出せます。
5. 時間を押さえる
ここまでのステップで時間を捻出したとしても
- 仕事が伸びて時間が埋まってしまった
- 割り込み仕事が入った
という理由で、せっかくの時間が失われることが、とてもよくあります。
これは、実は、人間の特性として「当たり前」にあることなので、まずそれを認識する必要があります。
そして、それをブロックするために「カレンダー」を埋めておくというのがポイントになります。
プログラミング学習を当たり前の習慣にしよう
プログラミングを身に着けるには、合計で200~300時間という時間の投資が必要であることを、まず認識する必要があります。
その時間を捻出しないで初めてしまうのは、距離をわからないでマラソンを走ることや、全部で何試合かわからないのにペナントレースを戦うことと一緒です。
それで、毎日2~3時間という時間を設ける必要があります。
正直、最初はかなりの「工夫」が必要になるでしょう。
ただ、そのためのノウハウはたくさんあります。使えるものをたくさん使って、小さなものを積み重ねて捻出します。
それができた暁には、その工夫を「普通」にする必要があります。
つまり、毎日の習慣にすることです。
それができれば、もうプログラミングの習得をグッと引き寄せたといってもよいと思います。
コミュニティではプログラミングを学ぶ習慣をサポートします
コミュニティ「ノンプログラマーのためのスキルアップ研究会」では、プログラミングを継続的に学ぶための支援をしています。
具体的にはを毎月のセミナーともくもく会の開催、オンラインでのコミュニケーションでサポートをします。
以下ページにて詳細の確認およびお申し込みが可能ですので、200~300時間を走り続けたい!という方はご参加いただければうれしいです。
どうぞご活用ください!
「ノンプログラマーのためのスキルアップ研究会」について
コミュニティ「ノンプログラマーのためのスキルアップ研究会」では、毎月の定例会や勉強会、Slackでのやり取りを通して、皆さんのプログラミング学習の質やモチベーションを高めるための活動をしています。 過去の活動については、以下のページをご覧ください。- コミュニティ「ノンプログラマーのためのスキルアップ研究会」の活動レポートまとめ(2017-2018)
- コミュニティ「ノンプログラマーのためのスキルアップ研究会」の活動レポートまとめ(2019)
- コミュニティ「ノンプログラマーのためのスキルアップ研究会」の活動レポートまとめ(2020)
- コミュニティ「ノンプログラマーのためのスキルアップ研究会」の活動レポートまとめ(2021)
- コミュニティ「ノンプログラマーのためのスキルアップ研究会」の活動レポートまとめ(2022)