2005-07-28

_疲労蓄積中

なんかまたキャパシティの限界に近付いているような気がする。

_x86_64

最近微妙に興味があるんですが、 持ってないことにはどうしようもありません。 Athlon64あたりなら比較的手頃だと思うんですけど、 それでも案外高いですねえ。 今そんなに金ないし。 誰かくれないかな? (昔から同じことを言って恵んでもらっているような気もする。)

_デバッグ能力

私は随分以前に

新規にコードを起こせる人間は非常に少ない。 だから、これが出来る人間は恐れずにどんどん書いちゃうことが大切。

というような趣旨のことを書いたことがあります。 この考えは今でもあんまり変化してないんですけど、 少々感じたことがありましたので、別のことをちょっとだけ。

上に書いたのは私が運営しているenbug.orgなるジョークサイトの背後にある思想なわけですが、 これを「エンバグ能力」とでも名付けるとするならば、 これの対として「デバッグ能力」というものも考えられます。 そして、どうもこれが開発効率に結構な割合で効いているのだなあと思うことがありました。

業務に関わることなので、それが具体的にどういうことだったかは記しませんが、 デバッグしなきゃいけない場面というのは結構あって、 どれぐらい効率良く片付けられるかで、全体の開発時間に大きい影響があります。 デバッグの対象は必ずしも自分の責任ではなくて、他人の後始末をやらないといけなかったりもするので、 実は経験とか洞察みたいなのが活きてくるみたいです。

開発の対象がそれなりに複雑であったりすると、 仮にソースコードが見れるとしても、 ある程度ブラックボックス的に扱うことになります。 そのとき、いかに迅速に当たりを付けられるかが重要。

アルゴリズム的なアプローチとして有名なものに、 二分探索の応用なんてのもありますよね。 (大体)逐次的に実行される一連のコードがあって、 そこのどっかでおかしくなっているだろうと考えられるとき、 一個一個順番に調べると異常に手間がかかりますが、 二分探索で追い詰めていくと早いという代物ですね。

まあ、そういう本を読んだら書いているようなものもいっぱいあると思うんですけど、 何かそうじゃない別のものもあるような気がします。 プログラマの習性とかに関わるのかもしれません。 どうもうまく言葉に出来ないんですよね。

こういう壊れたブラックボックスの解明ってやつは、 私の見てきた限りでは、どうも根っからの情報系の人は苦手なように見えます。 出来ないんじゃなくて、苛々するみたい。 よく分かんない何かを探索、みたいな行為に慣れてないのかな。 私はそういうのを見ると、むしろわくわくしちゃうんですが。

[]