- バックエンド / リーダー候補
- PdM
- Webエンジニア(シニア)
- Other occupations (19)
- Development
- Business
日付や時刻データの扱いについてまとめたスライド「日付時刻A to Z」を作ったので公開します。
これは何?
「日付と時刻」を正しく扱うために、日付/時刻にまつわる諸概念やありがちな間違いを紹介したスライドです。このスライドは大きく3つのパートに分かれています:
- 第1部「日付編」
- §1 天体の周期
- §2 暦
- §3 紀元と通日
- 第2部「時刻編」
- §4 時間と分
- §5 秒
- §6 相対性理論
- 第3部「コンピューティング編」
- §7 文字列表現
- §8 数値表現
- §9 時刻同期
第1部と第2部では、「日付」や「時刻」の概念を定めるのに必要な知識を整理します。第3部ではその日付時刻をコンピューターで扱うときに特有の事情を補足しています。
このスライドが作られた経緯
ウォンテッドリー社内では毎週1回お昼の時間に任意で集まって技術の話をする "Tech Lunch" というイベントがあります。テーマは自由で、社内でやったことの紹介やアナウンスもあれば、個人でやったことの自慢をすることもあります。
最近はトピックがやや枯渇気味だったこともあり、新しい発表テーマを何か考えようとしていました。そこで以前から気になっていた「日付と時刻」というテーマを調査・整理し、まとめることにしました。
このテーマについて発表するにあたり、その中核として次のような点に注目することにしました。
- 普段何気なく使っている「日付」や「時刻」という概念の定義を再確認し、メンタルモデルと実態との齟齬をなくすこと。
- 日付や時刻を情報処理で使う上での様々な罠についてなるべく意識できるようにすること。
この方針でまとめていった結果、前者のトピックを第1部「日付」第2部「時刻」とし、後者のトピックは第1部・第2部でも言及しつつ第3部「コンピューティング」で再度特集するような形式になりました。
また、このトピックについて調べるにつれ、日付時刻とは情報・通信の世界に閉じたものではなく、人類の社会的な営みとの兼ね合いで形作られてきたシステムだということがわかり、その点が非常に面白いと感じるようになりました。そこで、いずれのトピックについても、なるべく現実世界の制約とどのように関連しているのかがわかるように努めました。
結果として毎週25分の時間を3回分フルで使う長いシリーズになってしまいましたが、総じて有益なものにできたのではないかと思います。
謝辞
本スライドについては公開前に何人かの友人に内容を見てもらい、有益なフィードバックをもらうことができました。この場を借りて感謝を申し上げます。
お願い
なるべく適当なことは書かないようにしたつもりですが、もし間違いや誇張などがありましたら指摘いただけると嬉しいです。