日記
インターネットタイム? (20:18)Edit

一歩さんのところで知ったインターネットタイム(っつーか、ずいぶん昔に見た覚えがあるな)。何かというと、スウォッチが作った(お遊び的)規格で、スイスにあるスウォッチ本社での0時を基準に1日を1000に分割した全世界=インターネット標準時間。単位は@で「ビート」と読むらしい。

確かに地域の枠を越えてつながるインターネット上で、共通の時間認識を広めるってのは悪くないよなーと思うけれども、実際のところこんなの全然意味ないじゃん。GMT(グリニッジ標準時)と比較して便利なのは、「時と分」の二つの12進数字で表現されるGMTよりも、0〜1000までの単純な十進数字の方がシンプルだってことと、インターネット標準時という新しい概念を表すためには新しい表現方法を採用した方がわかりやすいってあたりか。でも、それだったらたとえば1200@と書いたらそれはGMTで12:00のことだとしたっていいじゃん。

せっかくインターネット標準時みたいなネタを考えるんだったら、普通の時間系とは違っていることに意味がある規格を作って欲しいなー。たとえば、1日じゃなくて1年を1000000(100万)に分割して、その単位を「@1@」(読み方不明)とするのはどうだろう? ちょっと桁が多くて直観的じゃないけれども、インターネット時刻を1日なんてせせこましくてローカルな単位で表すよりは、年みたいな世界中で共感可能な単位で表現した方がいいんじゃないか。

そうすると「@1@」はだいたい30秒ちょっとになる。たとえば日本時間で2003年3月7日17:30は、GMTで2003年3月7日8:30だから、だいたい「@0179052@」と表すことができる。年号付きで表すと「@2003/0179052@」って感じか。「今はだいたい2003年の17%くらいを過ぎたところなんだなー」なんて感じの時間感覚が、インターネットタイムよりもよほど面白い気がするんだけど。どうせならば数字は下の桁ほど省略可能にして、「@2003/017-@」なんて感じの表現を許容してもいいかもしれない。適当な名前を付けて広めれ《ら抜き表現》。

  • そうだ名前は「ITime」にしよう。「IT+Time」とか「Internet Time」風でもあるし、「IT好き」な方々にも大受け(わらひ)。
  • へっへっへ、ページごとの作成・更新日にITime表記も追加するようにしちゃったぜ。ほかの日付にも追加しよう。

ITime表示Flash(MX)を作ってみようかと思ったんだけど、なんかいまいちきれいに書けない。Flashでsprintfみたいなことってどうやるんだろう? あと日付時刻関数(クラス)の使い方もなんかこなれていない感じ。ちなみに以下のような感じのActionScript。ITimeは表示用のダイナミックテキストオブジェクトね。そのうちちゃんとしたのを作ろう。ただFlashは会社のなんだよなー。JavaScriptかJavaAppletにしておいた方が無難かなー。だれかカッコよくてジャマじゃないの作ってプリーズ。

now = new Date();
year = now.getUTCFullYear();
current = Math.round(
Date.UTC(now.getFullYear(), now.getMonth(), now.getDate(),
now.getDay(), now.getHours(), now.getMinutes(), now.getSeconds())
/ 1000);
start = Math.round(Date.UTC(year, 0, 1) / 1000);
end = Math.round(Date.UTC(year + 1, 0, 1) / 1000);
currentITime = Math.round((current - start) * 1000000 / (end - start));
currentITime = Math.round(currentITime);
max = 7 - currentITime.toString().length;
for (i=0; i<max; i++) {currentITime = "0" + currentITime;}
ITime = "@" + year + "/" + currentITime + "@";

Published At2003-03-07 00:00Updated At2003-03-07 00:00