プログラミングの基礎学習は1ヶ月もいらない




「プログラミング学習したいけど、どのくらい学習すれば良いのか分からない、、」

 

「そもそも、どのくらい時間がかかるんだろう」という方がいらっしゃるのではないでしょうか?

 

今回はそういったお悩みにお答えしていきます。

 

結論から申し上げると、プログラミングにおける言語学習は1ヶ月もいりません。

 

何故そういった事が言えるのか、筆者の経験談を用いて解説していこうと思います。


汎用性の広いPythonを0から習得するためのフロー及び実際にPythonで開発を行い開発案件を獲得するまでの筋道について解説しているチュートリアル資料と

コーディングの参考となる実際にPythonを使って作ったツールのソースコードを無料で配布していますので、こちらも併せてご覧ください。

初心者・入門者でも30日間で学習できるおすすめPython学習方法

 

1. プログラミングの基礎学習について

そもそもプログラミング基礎学習をする上で、どこまで学習していけば良いのか分からないという方もいらっしゃいます。

 

多くの人は基礎学習の重要性ばかりに目を向けてしまいがちです。

 

しかし、プログラミング学習において重要なのはいかにアウトプット前提で動けるかということです。

 

本来、座学で私達はインプットを中心に考え学習しているのが基本的な流れになります。

 

当然、その背景には小中高大と受験という課題が提示されているため、その課題をクリアする為に筆記試験に合格するための最善としてインプット中心の学習が行われています。

 

ですが、プログラミング学習において、インプット作業はさほど重要ではありません。

 

なぜなら、プログラミングの本質の一部として他者の取り組みをサポートするツールとしてプログラミングを利用するからです。

 

学んで役に立つことではありますが、実務で活かせるかどうかが顕著に現れるのがこのプログラミングです。

 

そのため、インプット学習に目を向けていると肝心のアウトプットによる成果物がいつまでたっても作成できず、学習を挫折してしまいがちになるわけです。

 

また、さらなる悩みとして初学者は当然右も左もわからない状態からスタートするわけなので、どこまで学習するべきかわからず、参考書やオンライン学習教材の隅から隅まで網羅して、時間を多く費やしてします。

 

実際にこういった悩みを持つ方は基本的に下記の項目を学習していけば、基礎の学習は概ね完了です。

 

・変数

・リスト

・ループ

・条件分岐

・関数

・クラス

 

多言語に渡って触れてきた筆者でさえも、経験から基礎固めはこの程度で十分足りると感じています。

 

基本的にどの言語であろうと、コードの記述方法が違えど扱う概念はある程度決まっているので、基礎学習に時間をかけるより、実際に実務で利用されている生きたコードにいち早く触れるステップを組み込んで学習することを強くお勧めします。

 

細かい部分は省きましたが、基本的にこれらの項目をある程度理解できれば、簡易的なアプリケーションの開発やPythonであればスクレイピングなど着手して問題ないかと思われます。

2. プログラミングは暗記ゲーではない

プログラミング初心者が学習において陥りやすいのが、基礎の構文を暗記しようとする事です。

 

基礎の構文のみでしたら、記憶する事はできるかもしれませんが今後学習を行っていくには記憶だけではどうしても難しい部分が出てきてしまいます。

 

また、プログラミングは学習の連続です。

 

一つの言語を学習してそれで終わりという事はなく、仕事のプロジェクトによって扱う言語は左右される事もあります。

 

大事なのは暗記ではなく理解をする事です。

 

プログラミング言語の基礎は書き方は違えど、概念の部分は同じです。

 

そのため、記憶するのではなく理解する事で新しく学習するものでも最初に学習したプログラミング言語より爆速で習得する事が可能になります。

 

よく、エンジニア業界では「ググって。」という単語が飛び交うのが一般的ですが、まさにわからないときはGoogle先生に聞くことが学習においても重要な考え方になります。

 

受験ベースとプログラミングベースでの取り組みの一番の大きな違いは、記憶で戦うのと調べながら戦うという違いがあります。

 

当然、カンニング行為となってしまうで記憶を頼りに今まで努力の集大成を結果としてつなげるのが受験です。

 

一方で、プログラミングによる成果物の作成は、むしろカンニングありきです。

 

むしろ実務をこなしている筆者ですら、ググりまくっています。わからないことなんて数えられません。日夜新しい技術が生まれるIT業界のため、当たり前のように調べながら学習を継続しています。

 

その場で調べてその場で理解する、この繰り返しがプログラミング学習において必要な姿勢です。

3. 大事なのは「実践しながら学ぶこと」

結局のところ、実際に使ってみないと学習の定着はしません。

 

なるべく、学習したらすぐに使ってみるのが一番効率のよい学習になります。

 

つまり、上記でもお話した通りアウトプット前提の学習方法になります。

 

人は自分のルールに対して甘い傾向があります。

 

「明日までにこれをやるぞ!」

「この日までにここまで終わらせる!」

 

こういった計画的に取り進めるのが得意な人はうまく行くと思います。

 

ですが、軒並みこの手法でうまくいかず断念している人を幾度となくみてきました。

 

やはり、インプット作業ばかりを中心に取り組むことによって、いつまでも自信がつくことはなく、自分自身の満足がいくまで学習を続けてしまうので、基準が自分の中から生まれないのです。

 

他者がどのレベルでどこまでの学習で止めているのか、何を作ったことで現在の学習までを理解したと判断しているのか、様々な初学者や実践者の情報を収集して取り組んでいきましょう。

 

それは自ずと、あなたの理解度の基準として持つことができますし、成果物も手に入りますので学習継続の糸口になります。

 

さらに、実践しながら学ぶことで知識でとどまることなく実務に生かす方法などを思考することができてきます。

 

事実、私達は手に入れた知識を活用して今を生きていることに他ならないので、使ってなんぼのプログラミングであれば、どんどん実践経験を積んでいきましょう。

 

必ずやめてほしいのは、「参考書やオンライン学習教材の流し読み」です。

 

これだけ注意しながら、書くことを当たり前にしてみてください。

 

エンジニア業界であまりにも有名な名言がありますが、「いいから黙って手を動かせ、ハゲ。」という言葉通り、アウトプットしまくりましょう笑

4. プログラミング学習の手を止めない

大切なのは学習の手を止めない事です。

 

もっと言えば、インプット作業はほどほどに自分なりに考えながらアウトプット前提の学習をやめないということになります。

 

SNS等で自分よりも早くプログラミング学習を進められている方がいて、「この人に比べて自分は全然できてない、、」と気を落とす方がいます。

 

しかし、学習の進捗は人それぞれであって他人と競争したところで何の意味もありません。

 

戦うべきなのは過去の自分です。

 

過去の自分よりも、何か新しいことに取り組んでいるのあれば十分な成長となっています。

 

成長していないと感じてしまうのは、インプットばかりで自分自身で完結していることに他なりません。

 

アウトプットの重要性をこれでもかと書きなぐっていますが、常に足りないのはアウトプット前提のプログラミング学習だと認識していただければと思います。

5. まとめ

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

 

今回はプログラミングの基礎学習は1ヶ月で足りる理由、そして効率の良い学習の仕方をお伝えしていきました。

 

9割近くの人がインプット作業に疲れて次のステップに移行できず断念してきたのを見てきました。

 

必要なのは、アウトプット作業です。

 

たまに、アウトプットするネタがないと言いますが、果たして本当でしょうか?

 

おそらく、誰も作ったことのないものを考えて作成しなければならないという固定観念に縛られているだけだと思います。

 

そして、いつまでたってもその固定観念に縛られていると成果物は出来上がりませんし、ましてや新しいものを作成するアイディアも浮かびません。(コード記述としてです。)

 

まずは真似ることからでも構いません。

 

そこからインプット作業をアウトプット作業に移行させて、学習ステージを変化させてみてはいかがでしょうか?

 

最後まで一読していただき、ありがとうございました!



ABOUTこの記事をかいた人

sugi

大学卒業後、IT企業に就職を果たす。システム開発・人工知能に触れながら大手企業と業務をこなす。2年半後脱サラし、現在フリーランス活動中。 2019年2月から起業する予定。 自社サービス及び製品を開発し、売り上げを立てている。