デバッグは楽しい?

先日、職場の人としばし雑談。お題は「デバッグは楽しいか?」
結論からいうと私は楽しくない。できれば避けたい。コードを書くときには、できるだけデバッグしなくて済む状況をつくりだすのにエネルギーを割いている。趣味でコードを書くときも仕事で書くときも、基本的には同じスタンスでやっている。デバッグを否定しているのではない。必要なときにはやらざるを得ないし、私自身デバッグのためにかなりの時間を割くことがある。ただ、私の場合は「楽しみ」にはなっていない。
未経験のライブラリクラスや製品を、短いプログラムを作って試してみるということは良くある。行為としてはデバッグに近いことをするが、これはデバッグだと思ってはいない。これは、そのクラスなどが使い物になるかどうかを判断するための「評価」だ。興味深いアルゴリズムを考えたときに即興で短いコードを書いてその実現性を確認してみるということをよくやるが、これも一種の評価だと思う。もちろんどちらも大好きだ。。
お題からは外れるが、私にとってソフトウェア開発の楽しみとは、アーキテクチャを考えること。アルゴリズムを考え出すこと。コードを書くこと。開発を効率化するためのツールをつくること。半完成状態のプログラムをチューニングすること(いわゆるバグ取りではないが、考えてみるとこれはデバッグの一種かもしれない)。これらのことにできるだけ時間を割くためにデバッグやテストにかかわる時間は最小限にしたい。