2010-03-14

ものすごく面白い文章

My First BillG Review - Joel on Software

Joel Spolskyは、さすがに名前は知っていたが、相当の文才があると、改めて認識した。これは非常に面白い読み物だ。実際、文章もすばらしい。

なお、この話を理解するためには、以下のリンクも参考にした方が良い。

Fabulous Adventures In Coding : Eric's Complete Guide To VT_DATE
Fabulous Adventures In Coding : Bug Psychology

VT_DATEが、いかにくそみそなフォーマットだったかを説明している。VT_DATEは、30 December 1899からの経過時間で表現される。なぜ30日なのか? 31日ではダメなのか。1900年の一月一日ではだめなのか? 30日である理由は、Lotus 1-2-3のバグに対処するためである。

さらに、フォーマットも、悲惨すぎる。型はdoubleなのだが、整数部分は、起点からの経過日数を示す。ところが、小数部分は、整数による表現から、一日を少数で表現しただけ、経過したということを表すのだ。これはつまり、負数であっても、小数部分によって、時間が前に動くのだ。悲惨すぎる。

きっかけは、old new thingから。

The Old New Thing : Why does the OLE variant date format use 30 December 1899 as its zero point?

追記:Joel Spolskyは、ブログ執筆を引退して、本業に専念するらしい。なんというタイムリーな。

3 comments:

NyaRuRu said...
This comment has been removed by a blog administrator.
NyaRuRu said...

すみません,上の私のコメントは削除していただけると助かります.アンカーで書き直します.

件の記事は「はじめてのBillGレビューのこと」として翻訳され,『Joel on Software』にも収録されていますね.
ご参考までに.

江添亮 said...

この人がライターとして生きていけるのも、納得です。これだけの文才があるのだから。