こんにちは、古賀です。

あなたのプログラミング勉強法は、効率のよいものでしょうか。

そう言われると、不安になりますよね。

なぜなら、僕たちが受けてきた義務教育とは勝手が違うからです。

そりゃ自信持って「俺の勉強法は、効率が良い!」なんて言える人はいませんよね。

僕たちが学生時代に体験してきた
『重要な項目を暗記していくつか練習問題を解けば高得点が取れるようなテスト』とは、少し毛色が違います。

おそらく上記のやり方では、プログラミングの力は伸びないでしょう。

今回は、僕やまわりのエンジニアの勉強の仕方を振り返ってみて発見した
時間を無駄にするプログラミング勉強法についてお伝えします。

これから本格的にプログラミングを始める方は反面教師に、
最近伸び悩んでいるな、と感じている方は勉強法を見直すきっかけになれば幸いです。

1.いろんな言語に手を出す

いろんな言語を一度に学ぼうとしていませんか?

少し僕の話をさせてください。
僕は流行り廃りが気になるタイプでした。
例えば、以下みたいな。
・Ruby on Rails はもう古い、Laravelや
・最近はやっぱりpython だ
・iPhoneアプリもいつか作りたいからswiftだ
Twitterや周りのエンジニアの話で右往左往してしまうんですよね。
例えるならまさに、二兎追うものは一兎も得ず
僕の場合はもっと酷くて、5兎くらい追ってました。
このやり方はご想像どおり、力なんてつくはずがありません。
浅い知識がひろーくつきますが、一つの言語に絞って知識をつけた方が初学者はメリットがあります。
成果物も作りやすいので、転職や就職もしやすいですね。

2.勉強を継続しない/出来ない

勉強を継続出来ない習慣になっている人は、伸びないです。
断言できます。
すこし思い返してみてください。
仕事終わり、自宅での学習で
優先タスクがあって2週間勉強できなかった、なんて経験ありませんか。
ザラにあると思います。
勉強を再開するときは2週間前の内容を思い出す作業が必要です。
そうなるともう勉強続ける気になりませんよね。
その一方で、継続すると成長につながります。
これはシンプルに高いモチベーションのまま量をこなすことができるからです。
野球の素振りなんかで例えるとわかりやすいですよね。
週に一回、100回素振りする野球少年と
毎日100回素振りをする野球少年であれば、後者の方が上達します。
触れる量が多いからです。
また、モチベーションも維持できますよね。
昨日から一歩進めてもいいですし、わからないところを深く調べてもいいですし
とにかく進歩していることを実感できます

3.アウトプットしない

今さら、アウトプットは〇〇の効果があって~
みたいな話は割愛します。
みなさんご存知のとおり
アウトプットしている時としていない時を比べると、記憶の定着率が全然違います。
この事に気付くまでは、ひたすらドットインストール見て予習復習してました。
今思えば、アホですね。
ビジネス書を読んで満足している意識高い系大学生と同じです。
インプットのみでアウトプットしないのは、それくらいもったいないことをしているという事。
どういう形でありアウトプットを必要です。
アウトプットと聞くとQiitaや個人ブログにまとめることを想像するかもしれませんが、
Twitterでもいいですよ。
エンジニア垢を作って、要点だけ呟くだけでも、効果ありますよ。

自分にあった勉強を

この記事をここまで読んでいる時点で、エンジニアとして伸びるタイプだと思います。

なぜなら

「もっといい方法ないかな。」
「無駄なことしてないかな。」
という感情はプログラミング能力を向上させる大きな要因だからです。
この感情を大切に、自分に最適な勉強法で進んでいきましょう。
おすすめの記事