プログラミングを学び、プログラミングができることを、自分の力にしていくにはとても時間がかかるというイメージがあります。
では具体的にどのくらいの時間がかかるのでしょうか。
それは、どのレベルまで学習をするかによりかかる時間は違います。
ここでは、どのくらいの学習時間によって、どのぐらいのプログラミングスキルのレベルまで達成できるかについてお話します。
また合わせて、プログラミングの学習時間を短縮できる方法についてもお話していきます。
あなたがプログラミング学習を何の目的で行うか。
それによってどこまで、何時間プログラミング学習を行えば良いのか。
これらを意識した上で、記事を読んでいただければと思っています。
内容は以下です。
プログラミング学習にかかる標準的な時間
プログラミングの学習にかかる一般的な時間として3段階でお話をします。
基本的なプログラミングスキルを習得
まず、基本的なプログラミングのスキル習得にかかる時間は、200~300時間と言われています。
1日の学習時間 | 達成までの期間 |
---|---|
2時間 | 3ヶ月~5ヶ月(100日~150日) |
3時間 | 2ヶ月~3ヶ月(66日~100日) |
4時間 | 1.5ヶ月~2.5ヶ月(50日~75日) |
8時間 | 1ヶ月~1.25ヶ月(25日~37日) |
これはプログラミングというものがどんな内容かを概念的に理解できるレベルです。
簡単なアプリやツール類であれば、自分の力で作ることができるでしょう。
ただ、Web システムなどを最初から最後まで構築するなどについては、まだまだ足りない部分があります。
初級プログラマーとして実践で活躍できるレベル
初級プログラマーへの達成時間は、だいたい2700時間と言われています。
1日の学習時間 | 達成までの期間 |
---|---|
2時間 | 3年9ヶ月(1350日) |
3時間 | 2年6ヶ月(900日) |
4時間 | 1年10ヶ月(675日) |
8時間 | 1年(337日) |
1日2~3時間の勉強でここまで達するのは時間もかかる為、少し現実的ではないですね。
初級プログラマーとは簡単なアプリケーションを一定品質にて開発できる。
また、部分的な機能の提案や設計が可能となります。
まだまだ初心者ですが、プログラマーの現場での実務についても、力を発揮できるレベルになります。
一人前のプログラマーとして実務可能なレベル
一人で作業をこなせるプログラマーには、だいたい3年と言われています。
あえて1日何時間の表は記載しません。
ここまでのレベルに達するには既にプログラミング学習というよりプログラミングを職業としている場合が多いからです。
一人で一定規模であればシステムの開発ができるでしょう。
また、顧客との調整や、システム開発全般的な対応が可能となります。
そして、プログラミング以外のシステム構築に必要な知見も身につけている状態になっているでしょう。
もちろん、まだまだわからない部分は沢山ある状態ですが、一人で解決へ進める事ができるための全般的な経験と知識がある状態にはなっています。
また、3年近くやっていると、自信もついている為、少し難しい開発に対してもチャレンジして乗り越えていけるようになっているでしょう。
では、続いて、この学習時間を短縮する方法についていくつかお話していきましょう。
プログラミングを教えてもらうことで時間短縮
まずは、プログラミング知識を経験者に教えてもらうことで、学習の時間を短縮する方法です。
独学ではなくて、外部(周りの人達)からプログラミングの知識を教えてもらうことで、一人で勉強するよりも学習スピードを上げる、そして学習時間短縮につなげていきます。
自分にわからない問題があり、3時間ほど悩んで調べて解決する事があったとします。
ただ、これを既にプログラミング経験があり答えをわかってる人に間違いない内容で正解の説明を受けると、3分で答えを知ることができ課題が解決できるということもあります。
したがって、プログラミング経験者から知識を教えてもらうというやり方についてはぜひ取り入れて学習を進めることをした方が圧倒的に学習時間短縮にはなります。
それでは、プログラミング経験者から教えてもらいながら、プログラミング学習を進めていく具体的な方法について3つお話します。
プログラミングができる友達から教えてもらう
自分の周りにプログラミングができる友達がいれば、その人から教えてもらうようにしましょう。
これは、プログラミングに詳しい友達が周りにいるのか、その友達にどれだけ教えてもらえるのか、みたいなことも関係してきます。
随時わからないことがあれば聞けるのか、まとめてたまにポイントだけ確認させてもらうのかなどは、考慮が必要でしょうか。
ただ最大のメリットとしてはコストがかからないということですね。
初心者教育のプロであるプログラミングスクールを利用しよう
次の方法としては、プログラミングスクールを利用する方法です。
全くの初心者であればこの方法が一番良いと考えています。
それはなぜか。
プログラミングの知識、経験がある人たちに教えてもらえるということ。
それに付け加えて、初心者にプログラミングを教えるというノウハウをしっかり持っていることが大きいです。
プログラミングがわからない人にプログラミングを教えるプロということだからです。
また、プログラミング学習で一番の課題である「継続できない」ということについても、基本はサポート体制が整っています。
ただデメリットはもちろんお金がかかるということです。
様々なスクールと様々なコースがありますので、自分のお財布に見合ったものを選択したら良いでしょう。
その自己投資について、プログラミング学習後には、大きなリターンを得ることができる。
その事を考えたときに、プログラミングスクールを選択することは、間違えではないと言えます。
一番実力がつく方法としてはプログラミングの現場にて鍛えること
一番プログラミングの実力がつく方法としては、プログラミングの現場にて鍛えることです。
具体的には、プログラミングができる会社の中で、プログラミングの業務をすることで力をつけていく方法になります。
ここでは同じチーム内の先輩などから、プログラミングのわからない部分についてはアドバイスを貰ったりして作業を進めていくことになるでしょう。
ただ、会社やプロジェクトの雰囲気などにもよりますし、先輩も仕事をしているのですから、基本的には自分自身で解決していく事がメインと考えてください。
あくまでもサポートをしてもらえるイメージです。
あと、大きなメリットの1つとして、システム開発を進める上で、プログラミング以外の内容を網羅的に身につける事ができるということもあります。
例えば、サーバー、データベース、リリース作業、開発でのスケジュール、課題管理、顧客やチームとのコミュニケーションなどなどです。
このように現場でしか学べない事は沢山あります。
したがってプログラマーとして、一番実力が付く方法としては、現場で鍛えることになります。
ただ、デメリットとしてはプログラミングをできる会社に就職するということが条件になります。
したがって一定量の知識がついた後に、早めの就職というのが望ましいでしょう。
この現場での力の付け方について、以下の記事を参考にしていただけると幸いです。
プログラミング学習を楽しむ事
そして2点目ですが、プログラミング学習をどれだけ楽しんでできるか。
この意識をどう持って学習に望めるかがポイントとなります。
とても苦手意識をもって、苦しいけどなんとか頑張って1時間プログラミングの内容を覚えていく。
というより、自分が作りたい機能をどのような仕組みで作るか、それには何のプログラミングをすればよいかなどを楽しく考える1時間。
同じ1時間の学習をした場合、結果は異なってくるでしょう。
プログラミング学習をどのようにしたら楽しんで行えるか。
そちらについては、以下の記事にまとめています。
参考までに読んでいただけると幸いです。
目的を意識することで最短時間で学習
3点目、プログラミング学習を進める上でとても大切なことになります。
それは何のためにプログラミング学習を行っているかということです。
つまり、プログラミング学習を行っている「目的」は何かです。
この目的が定まってないと、どいう手段で、どのレベルまでプログラミング学習をすればよいかゴールがふわふわしている状態で進めることになります。
ゴールが定まってないと計画がたてれません。
そうなった場合、行わなくて良い学習をしてしまい、遠回りが発生して、結果的に学習時間が沢山かかってしまうということになります。
目的をしっかり定めて、そこに向かう最短のルートを計画して無理なく進めること。
それを初めに行っておくことが、結果的には最短の時間で目的達成をできる事となるでしょう。
目的と学習方法の関係性について、以下の記事でまとめていますので参考までに読んで頂ければ幸いです。
まとめ
プログラミングの習得にかかる時間について説明をしてきました。
またその時間をうまく短縮する方法についてもお話をしてきました。
以下の内容でしたね。
プログラミングを学習すること、それはどうしても長い時間が必要になってきます。
それには日々の継続を必ずやっていかないといけないです。
一般的なプログラミング学習の時間については、今回お話をしてきました。
ただ多くの人がそこまで時間、学習が続かずに挫折してしまい、目標に達成することができないです。
今回のお話でプログラミング学習の時間について、自分がどのくらい継続すれば良いかが見えているはずです。
自分はいつまで学習すれば目標に達成できるんだろう。と悩みながら闇雲に勉強を進めるのではなくて、今どこまで学習をしていて、いつゴールに到達できるかを確認しながら進める事で、挫折を防ぐ一つの方法になるかと思います。
継続をして、しっかりと知識をつけて、目的を達成していきましょう。
以上です。
コメント