車輪の再発明、Don't Repeat yourself、ドッグフードを食べる、ハイゼンバグ

シェアする

  • このエントリーをはてなブックマークに追加

私はIT業界・ソフトウェア業界で長く仕事をしておりますが、IT業界・ソフトウェア業界でしか使われない変わった表現があります。
いずれも日本初ではなくて、おそらくアメリカ発で、IT業界・ソフトウェア業界全体で広く使われる用語です。
ちょっと紹介してみましょう。

 

sharin

 

スポンサードリンク

車輪の再発明 (Inventing the wheel)

だれかがすでに作ったことと同じようなことをするプログラムを新たに作ってしまうこと。
「車輪の再発明をするな」という風に否定的に使われることが通例です。
私は以前、Apacheのドキュメントを読んでいると、プラグイン開発を新たに行う場合、車輪の再発明をせずに、まず、使えるプラグインはないか探してみよって書かれていました。

ただ、一方、WordPressのプラグインなどを見ていると、車輪の再発明だらけのような気もします。

オープンソースのプログラマーは他人が似たようなことをやっていても、自分でより優れたものを作りたくなるものなんでしょう。
Wikipediaには以下のように書かれていました。

車輪の再発明(しゃりんのさいはつめい、英: reinventing the wheel)は、車輪を題材にした慣用句であり、世界中で使われている。「広く受け入れられ確立されている技術や解決法を知らずに(または意図的に無視して)、同様のものを再び一から作ること」を意味する。

 

スポンサードリンク

Don’t Repeat Yourself (DRY)

システムやソフトウェアを構成する設定や設計に関する情報について述べたものです。

複数の場所に同じ情報が置かれていると変更時に整合性が取れなくなる危険性が高まるため、一箇所で管理して必ずそこから参照するようにすべきとする原則です。

車輪の再発明と似ていますが、DRYは主にシステムの設計で使われます。

 

転じて、プログラムコード中で同じ動作をするコードを何度も書かずに、一度書いたものを再利用するようにすべきとする意味で用いられることもあります。

こちらは本来は、“Once and Only Once”(OAOO)原則と呼ばれるものです。

DRYとOAOOは、同義と言っていいでしょう。

 

スポンサードリンク

ドッグフードを食べる (Eat your own dog food)

自分たちが開発中かすでに出荷している自社製品を自分たちでも使うこと。
自社製品をドッグフードに例えているところが面白いですね。
他人に使ってもらう製品なら、自分たちがまず実験台になれっていう戒めでしょうか。

確か、マイクロソフトのWindows NTの開発チームがWindows NTを開発するのにWindows NTを使って開発していたとかいう話の中で使われていました。

 

ハイゼンバグ (Heisenbugs)

再現が容易でない特異なバグのこと。
客先では起きるけれど、自社の開発環境では発生しないとか、あるいは、バグを調査するためにデバッグ用モジュールを使ってデバッガーを使ってテストしてみると再現しないようなバグのことです。

IT業界にいると数年に一回ぐらいこの種のバグに悩まされます。
私も過去、半年ぐらいかけて、ようやく直したものとかもあります。

Wikipediaには以下のように書かれていました。

ハイゼンベルクの「ある物事をよく見れば見るほど、他の物事をよく見ることができなくなる」という言葉に由来する

IT業界にいると納得できる表現です。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です