極限まで設計されつくしたプロジェクト
「Why you don't want to code for a government department」という記事がありました。 半分笑えて、半分引きました。
この記事を書いている人が昔QAの研修に行った時の話でした。 研修では、以下のようなコードを書いてアセンブラ出力を見るという事をしていたそうです。
unsigned int fac( unsigned int i )
{
if ( i < 2 ) {
return 1;
}
return i * fac( i - 1 );
}
隣の人のコードを見たら以下のような書き方をしていたそうです。
unsigned int aq456( unsigned int aq457 )
{
if ( aq457 == 0 )
return 1;
if ( aq457 == 1 )
return 1;
return aq457 * aq456( aq457 - 1 );
}
不思議に思って「何でそんな書き方してるの?」と聞くと、その男性は政府の仕事でプログラムを書いていたという話をしていたそうです。 そこでは、関数名や変数名まで全てドキュメント化してからコード書きが行われるということでした。 さらに、それらの頭文字2文字はaa、ab、acというようにプロジェクト毎に決まっていたそうです。
今回はQAだったので、その反対でaqにしたそうです。
いやぁ、究極に設計されつくした開発手法ですね。。。 ソースコードが漏洩したときの難読化という意味合いもあるのかも知れないと好意的に考えてしまいました。
最近のエントリ
- 日本のIPv6採用状況が50%を超えている件について
- 「ピアリング戦記」の英訳版EPUBを無料配布します!
- IPv4アドレス移転の売買価格推移および移転組織ランキング100
- 例示用IPv6アドレス 3fff::/20 が新たに追加
- ShowNet 2024のL2L3
- ShowNet 2024 ローカル5G
過去記事