これまで何度もプログラミングを習得したいと取り組んできたのだけれど、いつも同じようなところで理解できなくなり、挫折を繰り返してきました。
どういうことろで躓くかというと、変数や配列、関数の理解はできるのですが、それを使ってどうすればいいのかわからなくなるのです。
また本に書いている基本的なやり方は理解できるのですが、応用となると全くわからないのです。
目的が明確でないのに、道具の使い方ばかりを覚えようとしている感じとでもいいましょうか?
例えて言うと、包丁の使い方や鍋ふりは覚えたのだけれど、何を作るのかを決めていないような感じです。
それで、Perlに始まり、PHP、Javascriptとやってきて一度も自分が作りたいものを一度も作れていないのです。
しかし、それは言語の選択ではなく、単純に目的と取り組み方に問題があるのだと気が付きました。
目的は明確です。
「自由に作りたいものをプログラム出来るようになりたい。」ということです。
それでは何を作りたいのか?ですが、ここから先が抜け落ちていました。
ちゃんと考えたこともありません。
目的がハッキリしていないのにどんな道具を使えばよいかなんて、わかりっこありません。アタリマエのことです。しかし、人は一度にやろうとして難しく考えがちです。しかしほとんどの人はそんなに有能ではありません。
一度には無理です。
そうしたらどうすればよいか?それは分解して考えられる、またはできそうと思えるくらい小さくして取り掛かると良いことに気が付きました。
やっとこんな歳になってから気がつくなんて!
しかし、続けてこなかったら気がつくこと無く死んでいました。
だから諦めずに挑戦を続けることは意味があるのです。
具体的な目標を持つ。
最初から一度にやろうとしない。分からなければできないことを分解して単純化してみる。それでも分からなければ更に分解してできるところまで分解してやってみる。
一つできたら分解した残りをまたやってみる。
これの繰り返しです。
なによりもやりたいことを具体的にすることが行動の指針をずっと保つためのコツです。
偉そうに書きましたが、ずっと挫折し続けてきたプログラミングの勉強が段々と分かってきて楽しいのです。これは何もプログラミングに関することだけではありません。すべてのことに共通するポイントです。
人はついつい最短の方法を選びがちですが、具体的な目標があれば一見回り道に見えることやり方は、案外回り道ではないはずです。
「遠回りすることが一番の近道。」
急がば回れやな!
大丈夫!きっとうまくいくよ。