web-dev-qa-db-ja.com

Webサイトが日付を不正確な表現で表示するのはなぜですか。 "一年前"?

多くのサイトでは、実際の日付を表示するだけでなく、1 year agoなどの不正確な表現で日付または時刻を表示します。これが私が特に迷惑であることがわかったケースです: enter image description here

この動画はほとんどが最近の科学的研究に関する多くのニュースを含んでいるため、11か月ずれていると、報告されている時間のほぼ2倍であるため、興味が減ります。

なぜサイトはこれを行うのですか?これはユーザーエクスペリエンスが悪いように思うので、実際の日付は、実際の日付とは大きく異なる可能性のある見積もりよりも見たいだけです。

86
DLeh

飛行機のクラスを受講したときの話を友達に伝えているとします。ストーリーがいつ発生するかを説明したい。時間はどの形式で指定する必要がありますか? 「日付は2014/12/31、時間は16:05:03 PSTでした」と言うべきですか?

もちろん違います。ストーリーの要点は、受講した正確な時間ではありません。あなたは飛行機を操縦する経験、おそらく空中で犯した間違いについての滑稽な逸話を伝えることに集中したいと思います。ここで過度に具体的であると、奇妙で​​気が散ることになります。

コンピューターは、いくつかの計算上の利点があるだけで、正気で役に立つ人間のように動作する必要があります。mostについて話すときmostのYouTubeビデオ状況、正確な投稿日は関係ありません。特別なケースでさらに精度が必要な場合は、ビデオページ自体を開いて日付を確認できます。 YouTubeはこれまでのところ順調です。

しかし、ここには問題があります。

あなたが言及したビデオの実際の年齢は1年、11か月、9日で、これは宣伝されている「1年前」にさえ近いものではありません。 YouTubeは2年前と言っていたはずです。それが、人間の役に立つことです。

118
Daniel De Laney

コメントするには十分な評判がありませんが、この「親しみやすい」時間のある多くのサイトでは、実際にホバリングして正確な時間を取得できます。

右側のこの質問の「質問された」時間と「アクティブな」時間で試してください。

47
gamesmad

これは、相対タイムスタンプの使用です。 相対タイムスタンプでは、精度は重要ではなく、スキャンの即時性が精度よりも優先されるため、このようなことが発生する可能性があり、「1年前」が2015年8月15日まで表示されます、2年前に表示されます。このアプローチについては多くの論争がありますが、私見では、相対タイムスタンプを使用していても、たとえば月単位で時間を測定する場合でも、もう少し正確なものを追加できるのは正しいことですこれは、精度とアイスキャンの中間で許容できる可能性があります。しかし、Adaptive Time Unitsセクションを読むと、得ているのは例外ではなく標準であることがわかります。

ただし、UXの決定を行うと、これらの決定の一部にはトレードオフのコストがかかります。YouTubeが何が起こっているのかをYouTubeが知っているに違いありません。しかし、彼らはあなたの問題を問題として認識する非常に少数の人々と、高速スキャンのデータ表示を好む非常に多くの人々を持っているかもしれません。したがって、あなたは数字の重みによって正確性の低いデートを取得します

24
Devin

これらの相対時刻/日付スタンプの実装で一般的なバグ(IME)を検出しました。精度を段階的に変更すると、丸めのために多くの情報が失われ、丸めは常に下がっています。

Androidアプリが「59分前」(必要以上に正確)に取得し、「1時間前」が次の60分間表示されるのは一般的です(組み込みライブラリのためと思います)。必要以上に精度が低くなります。例として「23か月前」を指定するようにコードを記述します。それでも、私が正しいと言っているわけではありません。「2年弱前」を指定することもできます。 「約2年前」。

1,2,3,4,5,10 minutesの後に¼、½、¾hourと言ったものにした方がいいと思います¾時間、最大48時間、日から8、週から5、月から23、最後に年までの整数時間。これにより、最大比率が2 *ではなく〜1.5 *になるため、精度の低下が急激ではなくなります。

UXの推論については、タイムゾーンがそれに入ると考えていました。投稿された時刻とユーザーの時刻を両方ともタイムゾーンと共に標準の日付/時刻ライブラリにスローして、差を取得してから丸めます。その場合、ユーザーはタイムゾーンを気にする必要はありません。もちろん、すべてをユーザーのタイムゾーンに変換して(すでにご存じだと思います)、それを提示することもできますが、必ずしも役立つとは限りません。見出しとタイムスタンプを想像してみてください。「ニュースの最新情報:朝のラッシュアワーでの大量のパイルアップ。今日16:50」。

12
Chris H

これの考えられるUXの理由の1つは、ユーザーが日付を見ても年に気付かず、月/日が近いため、投稿が(おそらく何年も前に。この種のユーザーエラーは、関連性のなくなったコンテンツに対する恥ずかしい回答/コメント/フォローアップにつながる可能性があります。

この回答は、最後に余分なボーナスがある重複を避けるために他の回答と関連しています

私はそれに賛成だ

  • ストーリーのコンテキストが最も重要な要素です。あなたは去年の夏に起こったことについて話しているかもしれません、そしてあなたは11ヶ月前に起こったすべてを持っています。したがって、ストーリーの他の部分と比較する必要がある場合は、より高い精度が必要です。

  • 表示するデータのコレクションが多いということは、ユーザーが「今」の瞬間に関連する日付をすばやくスキャンして、必要なものを除外することを意味します。

  • みんなを喜ばせることはできませんが、挑戦し続けることができます。YouTubeは、ビデオページでより正確な日付を表示することを選択しています。

  • 最も簡単な解決策は、不正確な表現を使用して、モバイル(日付をタップして形式をスワップする)とデスクトップ(カーソルを置いてツールチップを表示する)の両方で機能する正確なタイムスタンプを表示する方法がある場合です。


私はそう思わない

  • 日付を10進数(1.9年)で表示する必要があります。変換を行うのは困難であると同時に、表示されるさまざまな数値がすべて表示され、過負荷になるためです。代わりに、「1か月前」のすべてのビデオと「2か月前」のすべてのビデオを頭の中でグループ化する方が簡単です。さらに、YouTubeを見てリラックスしているときに、ビデオのリストがスプレッドシートのように見えたくない場合は、リラックスしているのではなく、オフィスに戻っていることになります。

  • すべてのユーザーに対して単一のソリューションを見つけることができ、ここでの最適化はありません。ユーザーが異なれば、別のものを欲しがったり、異なる方法で考えたりすることもあります。たとえば、人は非常に大きなワーキングメモリを持っている可能性があり、平均的なiq人よりも複雑な情報を手間をかけずに処理できます。

設計の機会

このページを読むことで、利用可能なアクションはdisplayのみであるにもかかわらず、いくつかの異なるシナリオと満足するユーザーのセグメントが存在するため、どちらが表示するのが最善であるかに同意できないことに全員が同意できます。

まず第一に、一般的に私の控えめな意見では、タイムスタンプのレンダリングには、「ほぼ2年前」、「1年以上前」などのほとんどのユースケースに適した好みの表示形式を含める必要があります。 1秒の精度の正確なタイムスタンプ(そのようなデータの透過性が問題ない場合)。

したがって、この種の情報がある場合は、ブラウザアドオンを作成して、それを必要とするユーザーに権限を与え、自分のマシンでローカルに日付を表​​示するテキストを変更することを検討します。ブーム!ユーザーにツールキットを提供しましたが、多くの場合、ツールキットは素晴らしいユーザーエクスペリエンスをもたらすことができます。
頭に浮かぶ実装の1つは、このアドオンが(ほとんどのアドオンと同じように)小さなアイコンを追加してから、アイコンをスクロールして、異なる精度を入れ替えることです。

このようなテキストの変化を見るのは素晴らしいことではありません:
「1年前」->「1年11か月前」->「1年11か月3日前」->「2013年8月11日」->「2013年8月11日正午頃」- > "2013年8月11日12:34"-> ...