手抜きの美学

これも以前書いた気がするー。

手を抜けるところは徹底的に手を抜く。ときどき「手を抜くということを知らない完璧主義者」に出会うことがありますが、なんとももったいないことをしているなあと思うことがしばしば。90%の確率で成功するはずのことを、しかも失敗してもぜんぜん影響のないことに対して考えうるかぎりの心配をして、その心配を取り除くために全力を傾けられるその姿勢はいいと思うのですが、あまりにも労力の無駄遣いと云うか、見ていてもったいないと思うことしきり。その労力を別の部分に振り向けたらいいのにと、いらん心配をしてしまいます。

失敗してもいい部分はどんどん失敗したらいいと思うのですねえ。私も小さい頃は「失敗しちゃいけないんだ」と思い込んでいたクチで、これはいまでも覚えているある出来事が原因だったりするのですが(というか、たぶんそれが原因だと思うのですが)、ずいぶん長いことこれに苦しめられてきました。でもいつのまにか、気がついたら、失敗してもいいや、って思えるようになっていました。不思議なものです。失敗してもリカバー出来るならどんどん失敗するほうがいい、失敗の経験がないよりはあったほうがずっといいと思います。「なんだ、失敗しても世界が崩れたりしないじゃないか」と思えたら勝ちですね、たぶん。

手抜きの美学というのは、プログラマの美学というか、哲学とでもいうべきものです。いかに短いコードで、効率のいいプログラムを書くか。素人が根性出してがしがし書いたコードはたいていどこかで破綻するもので、冗長な部分を削って、短くしていくことで哲学を追究していきます。これは主観丸出しのただの感想ですが、完璧主義者だなあと思う人はたいてい同時に根性至上主義者で、考えうるかぎりの失敗をすべて一律にカバーしようとする傾向がある気がします。そういうひとに何かを提案すると、返ってくる答えが「絶対失敗しないって云いきれる?」

まあ、そんな「絶対」だなんて、誰にも云えませんけどねえ……