プログラミング学習

絶対にやってはいけないプログラミング学習法5選

プログラミング学習者
プログラミング学習者
最近プログラミング学習に伸び悩んでいるな…もしかしたら非効率な学習法を無意識のうちに行っているかもしれない。

やってはいけないプログラミング学習法を教えてほしい!

やすお
やすお
今回はそんな要望にお答えします!

 

プログラミング学習はむやみやたらに突き進んでいくと非効率ですし、どこかで大きな壁にぶつかりやすいです。

しかし、当記事で紹介する5つのことをしっかり意識ですることで爆速で成長できるので、ぜひとも参考にしていただきたいです。

①暗記する

プログラミング学習で最もやってはいけないことは暗記することです。

理由は・・・

やすお
やすお
現場ではプログラミングする時はググって調べることが当たり前になっているからです。

人間の記憶よりも公式リファレンスの方が正しいので、暗記するよりも調べたほうが圧倒的に効率的なんですよね。

暗記ではなく考え方を学ぼう

大事なのは、暗記することではなく考え方を学ぶことです。

例えば、プログラミングのアルゴリズムにはfor文というものがあります。プログラミングをやっていると下記の様ばソースコードを見たことがあるのではないでしょうか?

for($i = 0; $i < 10; $i++) {
文
}

 

生徒
生徒
ドルアイイコール・・・ゼロセミコロン・・・
やすお
やすお
それだといつまで経っても終わりませんよ!

意外と、これをそのまま暗記してしまおうと思いがちなのですが、それだと少し難しい処理が入ってしまうと応用が利かなくなります。

具体的には少し抽象度を上げて考えてみましょう!

for (<初期化式> ; <条件式> ; <ステップを進める式>){
  文
}

 

プログラミングを勉強するときは、文法をそのまま覚えるのではなく、

  1. これは指定回数まで条件を繰り返す文法である。
  2. 初期値と条件とステップを進める式を設定する必要がある

考え方を覚えることが大切です。

実際に現場でコードを書くときにfor文が何かさえ分かっていれば、後は調べれば使うことが出来ます。

結果として暗記してるのはOK

僕は暗記に関して下記のツイートをしました。

これは、「まぁ結果的に暗記してしまうのはいいよね!」って話です。

暗記しようと思って暗記する必要はなく、繰り返し勉強するうちに暗記してしまっている状態になっているのが理想的な形です。

なぜならそれは何度も繰り返し勉強した証にだからです。

②難しい技術書を買う

難しい技術書を買って満足して放置するみたいな人も良くいますが、(昔の自分です)かなりもったいない事なのでやめましょう。

難しい本は進まないので挫折しやすい

何故難しい技術書を買ってはいけないかというと、プログラミングに対してマイナスのイメージを持ち、結果として挫折してしまいやすいからです。

例えば、数学を勉強するのに専門書から入ると挫折しやすいのは想像にかたくないですよね?

逆に、「中学3年間の学習を復習する○○」みたいな本だと「自分にもできそう!誰もが思うはずです。(数学が苦手でなければ)

プログラミング未経験者が読んではいけない技術書 TwitterやFacebookなどのSNSでは「この本いいよ!おすすめ!」みたいな感じで、ときどき、オススメの技術書が紹介され...

新しい分野は入門書からはじめる

新しい分野の学習を始めるのに一番の方法は「やさしい入門書から入る」ことです。

具体的には下記のような特徴がある本です。

  • サルでもわかる○○などの入門書
  • イラストがたくさん入っている。
  • 図がたくさん入っている。
  • 漫画

下記では分野ごとに入門書を紹介しているので、興味のある方はご参照ください。

プログラミング初級者におススメの技術書を現役エンジニアが紹介します(各分野ごと) Progateや、プログラミング学習を行ってみて本格的にエンジニアを目指されている方は、次は技術書で学習することをおススメします...

③完璧に理解する

プログラミングは漆塗りの勉強法

生徒
生徒
漆塗りって何ですか?
やすお
やすお
勉強法には漆塗りの勉強法と瓦貼りの勉強法があります。

例えば、語学学習って何度も繰り返しながら覚えていきますよね?

反対に数学などは、1次方程式が分からなければ2次方程式を理解することが出来ないように、一つ一つ完璧に理解しなければ次へ進めません。

プログラミングは漆塗りの勉強法に相性が良く、何度も繰り返し理解しながら勉強するのが最も効率が良いので、初めから完璧に理解する必要はありません。

一週目の理解度が低くても2週目に理解が深まることがあるので、完璧に理解する必要はないです。分からなければガンガン飛ばしていきましょう!

④インプットを重視する

プログラミングを勉強している方を見るとインプットをメインに学習している方が散見されます。

実はインプット重視の学習は非効率です。

重視すべきはアウトプット


上のツイートでも述べている通り、アウトプット8、インプット2くらいの割合でやった方が圧倒的に成長できるんですよね。

何故かというと、プログラミングはインプットよりもアウトプットから得るれるものの方が多いからです。

プログラミングの本質は「問題解決」です。

実際に、本のコードを写して動かすことも大事ですが、それだけだと自分で考えてコードを書くといった作業ではないので、問題解決能力が上がりません。(エラーも起こりませんよね)

また、実践で使わないと忘れてしまいますし、外部に公開しないと批評される機会がないのでフィードバックを受けて成長することもできません。

Qiitaやブログ、Githubでアウトプットしよう

アウトプット重視で学習するために、実際にアプリを作ったりQiitaやブログを開設して記事を書いたりなどのアウトプットを行うことをおススメします。

人の目にさらされる緊張感があると集中して勉強できますし、成長も早いです。

エンジニアは常にアウトプットをしておこう!Qiitaの記事を消す無意味さ 先日、僕はこのようなツイートをしました。 感情的に行動したら損をします。 未経験者や駆け出しエンジニアの方々は、Qiit...

⑤目標を決めない

目標を決めずにダラダラ勉強するのが最も効率が悪いですし、時間が無駄になってしまいます。

やるからには何か具体的な目標を決めましょう。

プログラミング学習の目標を決めよう

プログラミング学習をするときには何か目標を設定するとモチベーションを維持しやすくなります。

プログラミング学習の目標
  • エンジニア職に転職するため
  • フリーランスエンジニアになるため
  • 自分のアプリを作るため
  • 現職でスキルアップをするため
  • 競技プログラミングを始めるため

人それぞれ色々な思惑があると思いますが、なんとなくやるより全然前向きですよね。

プログラミング学習には終わりがないので、目標を持たないと永遠に勉強してしまうことになります。

学校の勉強だって高校受験や大学受験という目標があったから続いていたと思います。(僕はしませんでしたが…)

終わりに

以上5つがプログラミング学習をするときにやってはいけないことでした。

まとめておきます。

  1. 暗記する
  2. 難しい技術書を買う
  3. 完璧に理解する
  4. インプットを重視する
  5. 目標を決めない

最近プログラミング学習で伸び悩んでるな~と思う方は、ぜひこちらの逆を意識してみてください。

ABOUT ME
田中 やすお
WEBエンジニアとして都内某所で働いております。 Fラン大学→ニート→フリーター→営業マン→転職してまた営業マン→職業訓練→WEBエンジニア→フリーランスエンジニア 未経験からエンジニアになる方法や、エンジニアにまつわることを発信していきます。よろしくね('ω')
WEBエンジニアになって年収1000万円稼ぎたい人へ

僕は元々Fラン大学出身で、ブラック企業の社畜だったのですが、30代前半でWEBエンジニアとしてIT企業に転職して人生が大きく変わりました。

WEBエンジニアは実務経験1年程度あれば月収50万円は稼ぐことが出来ますし、実務経験2~3年程度あれば年収1000万円稼ぐことも可能です。

もちろん稼ぐためには努力は必要です。しかし、逆を言えば「努力が必ず報われるのがエンジニア」という職業です。

エンジニアになって稼ぎたい!理想の働き方をしたい!と思っている方は「未経験からエンジニアになる方法」を読んで、ぜひ挑戦してみてください。