2007-09-05

こらー、上段右から二番目はお前じゃないだろ!

倉田てつをというよりほとんど南光太郎公式サイトだ。でも Black は傑作なのでみんな見るといいよ。

サーバメンテナンス

emptypage.jp をホストしてるサーバが、9月13日(木)の7:00から10:00の間で90分ほど、さくらインターネットのメンテナンスでしばらくアクセスできなくなるそうです。困る人はいないでしょうが、wz2chbbs 巡回してる人(推定3名、自分含む)はびっくりしないでね。

FreeBSD の 4.1 から 6.1 になるそうで。もっとも、管理者じゃないからそれでどうにか便利になったりするわけじゃないんですけど。

更新情報

拡張子付きのコマンドが実行できなくなっていた不具合等を修正した、cmdlinex 2.18 を公開します。情報をいただいた大田黒さん、ご協力ありがとうございます。

以下雑談。

このマクロは、もともとはもう六年以上前に書いたものが土台だけど、それにしてもそのコードのひどさにはわれながらあきれる。おそろしいのは、書いてた時はこれがわかりやすいと思って書いていたに違いないということで、それが今見たら中学生が書いたもののように見えるという。紆余曲折で今では使われていないルーチンとか、仕様変更で間を削ったせいで意味のない条件分岐とかが残ってしまっているのも、アホっぽさに拍車をかけてます。

時間を置いてコードを見返すと、取り組んでいた問題の現実の複雑さを忘れてしまっているせいで、もっとシンプルに書けるはずと思い込んでしまうという誤謬もありますけどね。

コーディングスタイルも、今とぜんぜん違う。昔は if ( cond ) と書いていたのだけど、今は if (cond) と書く。比較しようとして代入してしまう誤りを防ぐための、if (3 == x) という書きかたを愛用してたけど、これもいまはやらない。数値比較をわかりやすくするために、if (0 < b) と、いつでも小さいほうを左側に書くようにしていたけど、今は場合によっては if (b > 0) と書いてもいいという考え。要するに、普通になった。ひねくれ者は、普通になるまでにものすごい遠回りをしなきゃいけないのです。

マクロのコンセプトとしても、今ならリダイレクトを自前で解析したりとかはしないだろう。指定されたコマンドラインにテンプレート処理をして、あとは cmd.exe に丸投げするだけにすると思う。当時は気持ちがはやっていて、至れり尽くせりにするべきだと思い込んでいた。しかしその代償は未だにコードが完成していないという事実。

数年前に自分の書いたコードを目にしたとして、今書いてもやはりこれと同じコードになるであろうという感覚を覚える日は来るんだろうか。いや、たんに成長が止まっただけかもしれないから、そんな日は来なくてもいいかもしれない。

数年前にも同じようなことを書いたような気がするけど。

しかしたった(?)六年で、こうまで考えが変わってしまうんだから、何年か前に言ってたことで、今も同じ意見でいるものなんてなくても不思議じゃない。