<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[5]</anchor-end> <dfn>ambtime</dfn> は、「3分前」や「9年3ヶ月前」のような<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">現在時刻</anchor>からの<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">相対時刻</anchor>による<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">日時表示</anchor>です。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[6]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">閾値</anchor>を設けてそれ以上離れた<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">日時</anchor>は通常の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">絶対時刻</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">日時形式</anchor>にする場合もあります。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="7" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[7]</anchor-end> 現在までの時間経過を (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">時差</anchor>のことも考えずに) 瞬時に把握するのに便利だとして、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SNS</anchor> をはじめとする多くの <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Webアプリケーション</anchor>で採用されています。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="8" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[8]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Web</anchor> 上では、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">絶対時刻</anchor>も知れないと不便であるとして、<code class="HTMLa" xml:lang="en">title</code>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">属性</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ツールチップ</anchor>のような形で<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">絶対時刻</anchor>と併記することが多々あります。</p><figure class="short list"><figcaption><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="9" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[9]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ambtime</anchor> の採用例</figcaption><ul><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Twitter</anchor></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">GitHub</anchor></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Facebook</anchor></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Windows</anchor> (<dfn>friendly dates</dfn>)</li><li><code>time.js</code></li></ul></figure><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="20" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[20]</anchor-end> 
表示が随時更新されず、最初の表示時点のもののままになっていることもあり、
要注意です。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[1]</anchor-end> <cite xml:lang="en">gist: 120040 - GitHub</cite>
(<time>2010-01-05 21:43:37 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://gist.github.com/120040#L43">http://gist.github.com/120040#L43</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[2]</anchor-end> <cite xml:lang="ja">過程と模索、その1つのサンプル</cite>
(<time>2010-01-05 21:44:25 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://ameblo.jp/ksy-dev">http://ameblo.jp/ksy-dev</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[4]</anchor-end> <cite>2009-12-11 - ある1つのサンプル</cite>
( (<time>2013-04-19 07:35:47 +09:00</time> 版))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://d.hatena.ne.jp/ksy_dev/20091211#p1">http://d.hatena.ne.jp/ksy_dev/20091211#p1</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="18" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[18]</anchor-end> <cite>PHPでのAmebaなう更新情報の取得 - ある1つのサンプル</cite> (<time>2019-03-10 21:22:32 +09:00</time>) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://web.archive.org/web/20100505173109/http://d.hatena.ne.jp/ksy_dev/20091211/p1">https://web.archive.org/web/20100505173109/http://d.hatena.ne.jp/ksy_dev/20091211/p1</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[3]</anchor-end> <cite xml:lang="en">gist: 163197 - GitHub</cite>
(<time>2010-01-05 21:48:26 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://gist.github.com/163197/2ae5a503c519343a026a082eb07938792ff238d2">https://gist.github.com/163197/2ae5a503c519343a026a082eb07938792ff238d2</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[10]</anchor-end> <cite>なぜTwitterは相対時刻表記を求めるのか</cite>
( (<time>2017-03-31 11:26:03 +09:00</time>))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://anond.hatelabo.jp/20120916100440">http://anond.hatelabo.jp/20120916100440</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="11" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[11]</anchor-end> <cite xml:lang="ja">NSDate を相対時刻にするライブラリ - 大学生からの Web 開発</cite>
( (<time>2017-03-31 11:27:15 +09:00</time>))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://karur4n.hatenablog.com/entry/2015/06/24/004136">http://karur4n.hatenablog.com/entry/2015/06/24/004136</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="12" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[12]</anchor-end> <cite xml:lang="en">datetime属性を持つtime要素を全部相対時刻にするやつ</cite>
( (<time>2017-03-31 11:27:37 +09:00</time>))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://gist.github.com/hail2u/8d96d6ed7fc5995f6e7c292dfef1fe6c">https://gist.github.com/hail2u/8d96d6ed7fc5995f6e7c292dfef1fe6c</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="13" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[13]</anchor-end> <cite xml:lang="ja">time要素の中身を相対日時へ変換 - ウェブログ - Hail2u.net</cite>
( (<time>2017-03-30 08:43:28 +09:00</time>))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://hail2u.net/blog/converting-time-element-content-to-relative-date.html">https://hail2u.net/blog/converting-time-element-content-to-relative-date.html</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="14" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[14]</anchor-end> 数時間程度の時刻の表示で<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">時差</anchor>を無視して考えられて理解しやすいというのは正しいですが、
「昨日」や「3日2時間前」のような微妙な遠さの時刻だと<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">日界</anchor>が気になってしまいます。
「4ヶ月前」や「1年前」くらいまでいくと最早誤差になりますが、
そこまで多いと<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">絶対時刻</anchor>表記にしたくなるので、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">時差</anchor>からは逃れられません。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="15" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[15]</anchor-end> <cite xml:lang="en-US">Announcing Windows 10 Insider Preview Build 18305 | Windows Experience Blog</cite>
(<time>2019-03-10 21:09:00 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://blogs.windows.com/windowsexperience/2018/12/19/announcing-windows-10-insider-preview-build-18305/">https://blogs.windows.com/windowsexperience/2018/12/19/announcing-windows-10-insider-preview-build-18305/</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="16" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[16]</anchor-end> <cite xml:lang="ja">Windows 10 Insider Previewでテスト中の日常的な日時表現、どう思う? | スラド IT</cite>
(<time>2019-03-10 21:09:05 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://it.srad.jp/story/19/03/10/0428225/">https://it.srad.jp/story/19/03/10/0428225/</anchor-external></p><figure class="quote"><figcaption><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="17" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[17]</anchor-end> <cite xml:lang="en-US">Announcing Windows 10 Insider Preview Build 18890 | Windows Experience Blog</cite>
(<time>2019-05-04 16:54:29 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://blogs.windows.com/windowsexperience/2019/05/01/announcing-windows-10-insider-preview-build-18890/">https://blogs.windows.com/windowsexperience/2019/05/01/announcing-windows-10-insider-preview-build-18890/</anchor-external></figcaption><blockquote><p>Thank you for all of the feedback you provided on Friendly Dates in File Explorer. At this time, we’ve decided not to roll out Friendly Dates to users as part of the 19H1 release. Insiders will see this option go away starting today, regardless of build number.</p></blockquote></figure><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="19" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[19]</anchor-end> <cite>山手線などの駅のホーム上におけるご案内を充実します! ~発車標に列車が駅に到着するまでの時間「約○分後」の表示を実施します~ ~発車標をLCD化(液晶ディスプレイ化)します~ ~英語案内放送を拡充します~ </cite>
(<time>2019-10-15 16:06:11 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://www.jreast.co.jp/press/2019/tokyo/20191015_1_to.pdf">https://www.jreast.co.jp/press/2019/tokyo/20191015_1_to.pdf</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="21" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[21]</anchor-end> <cite xml:lang="ja">より良い相対日時表記についての考察 - シフトブレイン/スタンダードデザインユニット</cite>
(<time>2019-11-08 13:14:31 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://standard.shiftbrain.com/blog/relative-datetime">https://standard.shiftbrain.com/blog/relative-datetime</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="22" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[22]</anchor-end> 
<code>time.js</code> は、一定以上離れた日付は通常の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">絶対日時</anchor>表示にするモードを
<code>data-format=<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ambtime</anchor></code>、
常に相対的な表示にするモードを
<code>data-format=<dfn><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">deltatime</anchor></dfn></code>
と呼んでいます。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="23" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[23]</anchor-end> <cite xml:lang="en">dayjs/Plugin.md at dev · iamkun/dayjs · GitHub</cite>, <time>2020-12-31T05:55:49.000Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/iamkun/dayjs/blob/dev/docs/en/Plugin.md#relativetime">https://github.com/iamkun/dayjs/blob/dev/docs/en/Plugin.md#relativetime</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="24" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[24]</anchor-end> <cite xml:lang="en">Time from now · Day.js</cite>, <time>2020-12-29T03:12:03.000Z</time>, <time>2020-12-31T06:03:27.477Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://day.js.org/docs/en/display/from-now">https://day.js.org/docs/en/display/from-now</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="25" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[25]</anchor-end> <cite xml:lang="en">Relative Time · Day.js</cite>, <time>2020-12-29T03:12:03.000Z</time>, <time>2020-12-31T06:08:24.044Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://day.js.org/docs/en/customization/relative-time">https://day.js.org/docs/en/customization/relative-time</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="26" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[26]</anchor-end> 
欧米サービス、 <cite>Instagram</cite> などは<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">日</anchor>の次の単位が<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">週</anchor>になってるみたいですね。
何年も前なのに「<var>何</var>週間前」と書かれてもいつなのか全然イメージがつかないのですけど、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">週</anchor>をよく使うと言われる欧米人には馴染み深い表記なんですかねえ?
<time>2024-01-21T11:21:10.500Z</time></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="27" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[27]</anchor-end> 
というところがあるので、結局回避できるのは直近の数時間程度の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">時差</anchor>違いの問題だけで、
その他の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文化的要素<title xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">ロケール</title></anchor>はよくよく考えないといけないんですよね。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="28" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[28]</anchor-end> 
でもなんとなくその辺考えなくてもいいような誤解を与えてしまうのが、この形式の罪深いところではないでしょうか。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="29" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[29]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ロケール</anchor>処理という意味だと実は結構難しくて、何分前みたいな単位の部分を<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">単数形</anchor>にするか<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">複数形</anchor>にするか、
というのを<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">言語</anchor>ごとにちゃんとしないといけない (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">言語</anchor>によってはすごく面倒 <sw-see xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"> <anchor>複数形</anchor> </sw-see>) 
というのもあるんです。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="30" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[30]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ウェブサービス</anchor>などで、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">クライアント</anchor>と<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">サーバー</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">時計</anchor>がずれていて、
投稿時刻が「1分後」のように表示されちゃう、という変なやつをたまに見かけます。
そんなの多くないだろ!と思いそうですけど、意外とよく見ます。
<time>2024-01-21T11:26:51.200Z</time></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="31" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[31]</anchor-end> 
そういう場合10中8,9は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">クライアント</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">時計</anchor>が狂ってるんですけど、稀に<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">サーバー</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">時計</anchor>が全然狂ってるじゃん、ってこともあります。
普通は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">サーバー</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">時計</anchor>こそ狂わない (ちゃんとした技術者がちゃんと設定してるので。)
ものなんですけどね。偶発的なトラブルではなく偶発的にサーバーの時計が狂っているとしたら、
それはサービスの品質がなにかの犠牲になっている、ということです。
そういうのがこういう細かいところに表れてくるんですね。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="32" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[32]</anchor-end> 
投稿時刻が<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">未来<title xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">未来の日時</title></anchor>になることなんてありえないから、
「後」になるものは全部一律で「たった今」みたいな表示にしちゃえばこの問題は解消するのでしょうけど、
大抵は
「投稿時刻」
専用ではなく汎用の日時表示処理を通しているから、あり得ない「後」の表示がちゃんと用意されちゃってるんですよね。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="33" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[33]</anchor-end> 
まあ<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">未来<title xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">未来の日時</title></anchor>がありえない <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ambtime</anchor> の用途が相当大部分を占めてそうなので、
それ専用の処理を用意しておいても損はないかなあという気もしますけど。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="34" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[34]</anchor-end> 
ただ、たいてい過去だけどたまに未来、というケースに不具合を生んじゃう温床になりそうなのと、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">クライアント</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">時計</anchor>が狂っているというそもそも異常な場合にしか発生しないものなので、
そのためにわざわざ対策するのもちょっとなあ、という気持ちもありますね。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="35" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[35]</anchor-end> <cite xml:lang="ja">XユーザーのM4y4さん: 「mixiのつぶやきが、543年前って表示されてるから、アセった!タイ暦になっていたからでした!」 / X</cite>, <time>午後1:22 · 2011年5月1日<attrvalue xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">2011-05-01T04:22:37.000Z</attrvalue></time>, <time>2024-08-21T05:18:45.000Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://x.com/mayang_island/status/64545232078897152">https://x.com/mayang_island/status/64545232078897152</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="36" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[36]</anchor-end> 
<anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="35" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;35</anchor-internal> どういう実装だとこうなるんだろう。
ロケール依存の現在年とサーバーが返した西暦年を計算してる感じ?</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="37" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[37]</anchor-end> 
関連: <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">カウントダウン暦</anchor></p></body></html>