プログラミングを覚える勉強法…なんてあるのか?
色々な方法があるかと思いますが、私は「とにかく手を動かして書く」というのが最もてっとり早いと考えています。
プログラミングはあくまで、実現したいことや、問題を解決する為の道具にすぎません。
道具の使い方を覚えるなら、使ってみるのが一番だと思いませんか?
使ってみると言っても、何から手をつけて良いのか…
とは言え、何も取っ掛かりが無いのはキツいのかもしれません。
そこで、私のおすすめするサイトをなどをご紹介したい…と思ったのですが、以下のサイトで素晴らしくまとめていらっしゃるので、ご参照下さい。
>>0からプログラミングを学ぶ時、まず見るべき7つのまとめ | All For Unknown
私が持っている古臭い情報より、よっぽど役に立つと思います!
でも、あなたは続く自信がありますか?
最初にお話した通り、プログラミングはあくまで道具だと私は思います。
例えば、「スコップの使い方を覚えたいんですけど?」と言われたら、「穴でも掘ったら?」と言いたくなりますよね。
でもそれって、多分つまらないし、続かないと思います。
続く人と続かない人がいる
書籍や上記のサイト等で情報を集めて、黙々と手を動かすことの出来る人もいるでしょうし、なかなか続かない人もいるはずです。
続く人は、目標の立て方が上手だったり、成果が目に見えにくくても頑張れるタイプの方なんだと思います。
一方、続かない人は、常に効率良く動きたいと考えていたり、成果がわかりやすい場合に力を発揮出来るタイプなんだと思います。
私は、単にお馬鹿なので、続かない人間なんですが…。
続けるにはどうするか?
先ほどのスコップの例に戻りますが、小さな子どもは、スコップを使い砂場であそびますよね。結構、飽きずに遊んでいます。
子供の場合は楽しさと直結しているのでしょう。一方、同じ事を中高生や大人がやると、すぐ飽きそうですよね。
でも、砂場に金塊が埋まっている(笑)と思えば、掘るでしょうし、大人でもガーデニングや畑が好きな人は、自分の庭や畑の手入れなら飽きずにやってますよね。
要は、「目的がハッキリしていないのに、道具だけ使えるようになろうと思っても無理がある」と私は思います。
目的とモチベーションの維持がポイント
「XXXしなければならないから、プログラミングスキルが必要」という人は、「どうやって勉強したら良いですか?」という質問はしないハズですし、覚えるのも早いと思います。
その「XXX」を実現しやすい言語で試行錯誤を繰り返し、作ればいいだけですから。「しなければならない」という気持ちが強ければ強いほど、挫折も少ないでしょう。
逆に「なんかアプリつくってみたいなー」程度だと、まぁ…続かないですよね。対価が無いに等しいですから。
続かないパターンの多くがコレだと思います。
身近な改善に目を向けてみる
確かに、そうそう目的がある人ばかりではありません。むしろ目的がないから、道具の使い所を探している状態とも言えると思います。
では、目的を探すにはどうしたらよいかですが、私は「身近なところで自動化出来るものは無いか?」という観点で探してみることをオススメします。
何かPCで毎日繰り返しで行っていることはありませんか?
今まで、手動で30分掛かっていたものも、自動化すれば、ダブルクリックして待ってれば終わり、という状況にできます。
言い換えると、「面倒くせー」と思うものを自動化出来ないか考えてみるということです。
課題が見つかればOK
課題が見つかれば、8割は終わったようなものです。そこから、実現する方法を調べましょう。
恐らく、何通りも解決方法が出てくるでしょう。その中から、自分の気に入った言語を使い早速課題にとりかかる訳です。
もしかすると、「手動でやってたほうが早い…」「掛ける時間がもったいない」と思うかもしれません。
しかし、コレは考えないようにしましょう。初めは時間が掛かるものですが、課題を解決するたび、徐々に時間は短縮されます。
プログラミングも書けば書くほど、自分の中にストックができてきますから、「こうやればすぐ出来るな」という、イメージが沸くようになります。
完成すれば、達成感もありますし、何より、時間の節約や労力の軽減という、目に見えるメリットが得られます。
ちなみに、言語の選択については触れません。自分の感覚に任せて、好きなやつでやりましょう!
究極は働くこと
もしかすると、課題が見つからないかもしれません。それでも尚、プログラミングを身に着けたいのであれば、働くのが最も手っ取り早いです。
当然、プログラマーではなくてもいいのです。PCを使う仕事であれば、問題無いと思います。
仕事は、言い換えれば、勝手に解決すべき課題を定期的に与えられる状況です。
私が、アルバイトでも派遣でも構わないので、IT業界に入って働いた方が良いと考える理由はコレです。
効率化で他人の数倍結果を出す
私の経験上、PCを使っていても、プログラマーがいない職場であれば、驚くほど、手作業が多い現状に出くわすハズです。
ですから、大切なのは、与えられた仕事を、言われたままこなすだけではなく、それを出来るだけ効率化(自動化)出来ないか考えてゆくということです。
効率化して、空いた時間はサボるのではなく、更に仕事をして、自分の評価とスキルを上げることに集中しましょう。
これにより、徐々に金銭的なメリットも得られるようになります。お金を稼ぐということは何よりの動機(目的)になりますよね。
繰り返しますが、プログラミングは道具です。繰り返し書き続ければ、習得可能です。ですから、続けることが肝心です。その為に、まずは道具を使う目的を探すことが、成功の秘訣だと思います。
こちらもどうぞご覧ください。