うさぎ組

ソフトウェア開発、チームによる製品開発、アジャイル、ソフトウェアテスト

俗・設計書論争での独り言

設計書論争での独り言 - うさぎ組を書いたら、翌日会社で議論になり、更に@さんが詳細設計書について思うこと 続き - 無料でプログラミングを教えます日記を書いてくれたので、このエントリへの返事を書こうと思う。

なんであの記事を書いたか

まず、前の記事で僕が「@への返事」としていたのは彼が「きょんくんのブログ期待しているわー!」と発言したことに対してであって、彼のブログへではないです。
なので、彼のブログへの何か大きな反論とか補足とかそういうのではありません。
彼が会社で言っていたように「今まで気になる事があって書いていなかったんだけど、いい機会だから書いた」的なノリです。

なので、これは会社のときにも話したけど、わら人形論法とかではないです。説明たりていなくってごめんね。

一緒に仕事したくない発言

あと

設計書否定するなら、ここにある事くらい論破するくらいの人じゃないと一緒に仕事したくない。逆に、ここに同意するくらいなら設計書否定すんなよ。自分の仕事を呪え。

としたのも、TLで「ひどい詳細設計書書かされているので、詳細設計書なんていらない」って言っている人達へです。それは「Haskell使っているのに、上司の命令でクソな命名規約つけられてるので、Haskellなんていらない」って言っているのとかわりません。頭おかしいと思います。


コードについて

補足すると、僕は弊社のメンバーのコードに何も不満はないというか、勉強になることがおおいです。もちろん両手あげて褒められるコードばかりでないのは、ケースバイケースですけど、それを無視して僕はこのコード書いた人と仕事したくないなんて言うことはありません。


気になったところ

昼間に話した事の多くは@のエントリに書かれているのでいいんだけれど、最後の補足の「テストはビルドがおわってからではないと。。。」はちょっと見当違いだと思う。
ある言語ではコンパイルが20minかかるけど、他の言語ではコンパイルが3minでテストが10minだった。っていう状況もあるし、ビルドが終わってからどうとか言う話は、業務系ソフトウェア開発においてはさして重要ではない。
焦点は「いかに迅速にエラーを検知できるか」であって、それを検知するプロセスではない。IDEやflymakeのようなものでコンパイルタイムエラーが機敏に反応してくれることはとてもいいし、そこに静的検証が入るのはうれしいけど、そこにテストが混ざっている事はなにも不思議ではないし、僕は出来る限り、裏で自動ビルド(テストまで)をしている。テストを走らせるのが最良といっているわけではなくて、エラーを迅速に受け取れればなんでもいいよね。っていうだけ。
そのつもりで書いていたならごめんなさい。
まぁ、補足的なものにここまで突っ込むかよ。っていうのはおいといて気になりました。


最後に

@ DSLについては僕もやっとこさ本腰いれはじめたところですし、OCamlとF# にも少しなれてきたところなので、またお話しましょう。