プログラミングの楽しさ

プログラミングの何が楽しいというかというと、
「あーしようか、こうしようか、どーしようかな。」
という、設計だと思う。もちろん、自分の自由という条件付きで。

これは、戦略的な作戦を練ることに似ている。
あーするとダメだからこっちを変える。
こっちをかえると向こうがおかしくなるからこうする。
みたいに、色々つじつまを合わせて、効率よく敵に勝つのだ。

昔LEGOブロックで遊んだことはないだろうか。
ブロックで何かを作り、ちょっと壊しては改良し
その繰り返しを楽しんだのではないだろうか?
「こーしよう、やっぱりこーしよう、あれもつけよう。」
組み立てながら自由な想像が実現されていく。

組み立てて実現するのが、いわゆる実装だ。
実装して、動くところを見るのも楽しい。
動かないと本気でブチギレ、根性とWEBで原因を調べる。
動かない事が多いのはLEGOと違うところか。

LEGOは思いついたらすぐ組み立てればよい。
思いつきから実現までが短ければ短いほど楽しいものだ。
思いついても実現までに手間がかかったり、難しければ嫌になる。
実はプログラミングにおいても同じで、
簡単に書けて即実行できるような言語はとても流行る。
書いて即実現できるHTMLも、流行している言語の一種だ。
高度で大規模な事を簡単にしたいならPerlやRubyもある。

プログラミングの目的とは、詰まるところ”自動化”になる。
いろいろな作業を自動化すれば良いではないか。良いではないか。