マングース退治

何年か前に、日テレのドキュメンタリー番組でやっていた話。
1970年代、ハブ退治のために奄美大島マングースを放した人がいた。
しかし、マングースがハブを退治する、というのは明治時代(!)の動物学者が出した単なる仮説であって、
実際に野に放たれたマングースは、ハブと闘ったりはせず、養鶏場の卵を盗んだり、天然記念物のナキウサギを襲ったりした。
しまいには、生態系への影響が大きすぎるということで、マングースは行政の手で駆除されることになった。
もともと奄美では、ハブを捕まえて役場に持っていくと何千円かで買い取ってもらえたのだが、今ではハブと並んでマングースも賞金首だ。
そして、その買い取り価格はハブよりも高いのです。おしまい...という話。
検証されていない技術を実戦投入すると、こんなひどいことになるのだ。


自分の仕事を振り返ると、あるプラクティスについて、根拠を確かめずに実践していることが圧倒的に多い。
俺より賢いエンジニアにより何度も検証されてきたことなのだから、いまさら自前で検証する必要なんかない、と思ってわざとそうしてきた。
が、これは社内にマングースの群れを放す行為だったのだ。
自分より賢い人が何度も検証してきた ... それはそうだろうが、賢い人の到達する結論はいろいろなのだ。
例えば「データ構造をどこまで正規化すべきか?」という問題。
情報処理試験的な回答は「第三正規形まで」だろう。
T字形ER手法ならば、完全正規形以外は認めない(ここちょっと自信がないのだが、T字形の正規化は多値従属性/結合従属性を放置しないはずだ)。
下記リンク先によると、クラステクノロジー代表・四倉幹夫氏の回答は、何と「第一正規形まで」だ。
アプリケーションが第三正規形を要求する場合は、第一正規形の実装テーブルから第三正規形のかたちをしたViewを生成するのがベストなのだそうだ。
E.F.Codd の遺産−ECObjectsのDB設計ウラ話
http://www.class.co.jp/column/backnm07.html
こんな根本的な問題でどうして回答がバラバラなのだろう?


今年は、わかった振りをしているだけの概念や技法を、この場で再検討していくことにする。
まずは

あたりを整理しよう。
これ以上社内にマングースを放しちゃだめだ。