プログラミングを覚えるコトを目的にしてはいけない理由
こんにちは。継続の錬金術士なおキーヌです。
ブログ毎日更新は229日目になります。
プログラミング独学をしていく上で大切なことは、作りたいものを楽しく作る。
必死になってプログラミング言語の仕様を覚える必要はないということです。
プログラミング入門者はまずどうやったら目的を達成できるかを考えて勉強するべきです。
それではプログラミング独学法 第一幕の最終回を始めましょう。
プログラミングを覚えるというゴール設定がそもそも間違っている
ツイッターを見ていると会社務めや激務アルバイトは資産にならない。
という意識高いツイートを見ることが増えてきました。
それと合わせてプログラミングとか資産になることをした方がいい。
という決まり文句とセットでツイートされる方が多くみられます。
影響されやすい人はその人の伝えたい本質を見抜けぬまま、
プログラミングそのものを覚えようと勉強し始めます。
この時点で殆どの人が続きません。
それでもあきらめきれない人はプログラミングスクールへ行き、
高い受講料を払い、卒業を迎えるが微妙な知識と経験しかつかないまま再び社会へ飛び出す。
良い職場に巡り合えた人は幸せだが、クソみたいな職場に入ってしまったら最後、
激務に振り回されてさらにちゃんとプログラミング出来ない自分に嫌気がさし、うつになってしまいます。
20代ならまだ取り返しがつきますが、30代から始める人は要注意です。
何もしない人より良いとか言い訳が飛んできそうですが、
そもそも何もしない人は論外なので比べる時点で間違っています。
プログラミングはあくまで手段であって、目的ではありません。
独学開始の時点で勝負はある程度決まっている
結論から言っておくとプログラミングを覚えようとするのではなくて、
何か目的を達成するためにプログラミングするべきです。
1つ問題です。
プログラミングを同時に独学し始めた人で、
以下の二人のどちらが立派なプログラマーになるでしょうか。
どちらもプログラミングを全く知らない状態だと思ってください。
うおおおおー!脱社畜!!!プログラミングを覚えるぜ!言語の入門やるぞおおお!
あー……面倒くさいな。これどうやったら楽にできるんだろ。プログラミング?どれどれ……
特にひっかけ問題でも何でもないです。
単純にトモカズくんのほうが何かを解決するのがプログラミングだったのでそれを覚えようとしています。
一方リキくんはプログラミングを覚えるコトを目的にしています。
実は私も最初はリキくんと同じ感じでプログラミングを覚えようとしていました。
が、はやり続きませんでした。
モチベがある状態は続くのですが、プログラミングの勉強って覚えるってことに焦点を当てると
凄まじくつまらない勉強なので頭がおかしい人でないとモチベを保つのがかなり難しいです。
何度かリキくんとおなじ方法で勉強していましたが何度も挫折です。
私は追い詰められたら自分の思っている以上の力を発揮するタイプなのか、
仕事でプログラミングをしないとまともに仕事が出来ない状況になったため覚えることが出来ました。
この時点で何かを解決するためにプログラミングという道具を使ったからですね。
面倒臭がりな人間ほどプログラマーに向いている
人間視点でプログラミングの一番の恩恵は、人間の手でやると途方もない時間を費やさなければいけないという事を
一瞬で終わらせられるスピードで作業をしてくれるところにあります。
そもそもコンピューターとは人間が楽をするための道具なのです。
コンピューターの前ではマジメで努力家な人間ほどバカを見ます。
例えば
100万行ある文字列の中から特定のワードを抜き出して1つのテキストにしろ。
という仕事を与えられたとします。
やり方は自由です。
どれだけ早く終わろうが達成できれば貰える賃金は同じです。
アナタは手動で時間内にを終わるかわからない仕事をやりますか?
それともプログラミングでツールを作って一瞬で仕事を終わらせますか?
もちろん後者ですよね。
プログラマーに向いている人は本質的に面倒くさがりな怠け者です。
極論を言ってしまえば怠けるために本気を出せばプログラマーになれます。
ここで1つ気付いてほしいのが、とことん怠ける為という目的を持ってプログラミングをしているので
プログラミングを自然と覚えられるようになっているということです。
プログラミング独学法 第一幕の最終回のあとがき
そろそろプログラミング独学に関する記事のネタがきれてきたというか、
飽きてきたので一旦今回で閉幕とさせていただきます。
プログラミング独学においての結論をまとめておきます。
以下のことを覚えておいて独学していけば、「私はプログラミングが出来る」言えるレベルになりますよ。
- まずは作りたいものをみつけるべき
- 作りたいものを浮かべて分解して再構築するのを繰り返そう
- プログラミングはあくまで道具を使う行為
- プログラミングを覚えることを目的にしてはいけない
- 楽をするためにプログラミングという行為をする
- 究極の怠け者になるために本気を出そう
作りたいものが見つからず、ふわふわとした状態でプログラミングを覚えようとしている人が
まず最初にやることは作りたいものを見つけるコトです。
それでは。