2010年11月01日

【IT用語】1970年1月1日

世界が誕生した日。

この日以前をBC(Before Computer)と呼ぶ。

世界がまだゼロだった時点という意味からnullの日とも呼ばれる。

たまに何かの一覧を表示するアプリケーションで、2000年代のデータが並ぶ中にひょっこりと1970年1月1日のデータが紛れ込んでいるのを見かけることがある。

あれは世界が生まれた日を祝福するために、プログラマがわざと紛れ込ませている。けして日付のパースに失敗したとか、nullチェックを忘れたなんていうしがない理由で紛れ込んでいるわけではない。

この日以前は世界は存在しなかった。つまり1970年以前の日付は存在しない日付である。数学で言えば虚数みたいなものである。だからこの日以前を扱おうとするような異常系データを投入すると、エラーが発生するシステムもある(あぁ、そっか。負の値がここに入ると・・・そうなるか)。

でも、それは異常系データなんだから仕方ないことだ。

昔の人たちは1999年に地球が滅ぶと思っていた。

だからコンピュータの日付は1999年12月31日までしかカウントしないシステムもあった。

1999年をクリアしても、2000年2月29日はになると落ちたり、2038年になると落ちるシステムなんかも存在した。いや、2038年に落ちるシステムはまだ存在しているかもしれない。

これらの問題は1999年に滅ぶはずだった地球が生き残ってしまったのが悪いのである。けして作った人間に責任があるわけではない。