web-dev-qa-db-fra.com

Manière non ambiguë d'afficher les informations de fuseau horaire de manière compacte

Lors de l'affichage d'une liste d'événements, chacun avec sa propre date, heure et fuseau horaire, je voudrais présenter le fuseau horaire auquel l'événement donné a été attribué. Cependant, il y a potentiellement beaucoup d'informations à transmettre. J'ai envisagé deux options:

  1. Décalage UTC - par ex. 16/08/2010 16h15 (+5: 00 GMT)
  2. Abréviation du fuseau horaire - par ex. 16/08/2010 16h15 HNE

Mes problèmes avec ceux-ci sont:

  1. Dès que je vois le plus (ou le moins) avec le décalage GMT, je sens que je dois faire le calcul. Comment l'utilisateur sait-il si l'heure affichée a déjà été réglée? En outre, si l'heure d'été est en vigueur pour ce fuseau horaire, cela est trompeur.
  2. Il manque des informations ici. Il y a beaucoup de fuseaux horaires et je n'ai pas encore trouvé de liste faisant autorité d'abréviations de fuseau horaire. Le plus proche semble être cette liste TimeAndDate.com . Alternativement, il y a liste de bases de données tz , mais je ne pense pas que les utilisateurs sauraient quoi faire avec cela.

Donc, ma question est, comment puis-je transmettre dans quel fuseau horaire un événement donné se produit, étant donné qu'il va y avoir une liste d'entre eux à l'écran?

8
Ryan Ische

Les fuseaux horaires sont un excellent exemple d'horrible UX dans les concepts de tous les jours. Ce n'est pas du DMMT: si vous me dites qu'un événement est à 19h GMT + 4, alors je dois d'abord penser à ma position par rapport au GMT, puis je dois ajouter 4 heures. Quel bordel!

Pensez plutôt aux différentes choses que vous pouvez faire avec le temps si vous êtes capable de calculer ou de concevoir. Par exemple:

  • Afficher une carte avec une épingle à votre emplacement et une épingle à l'emplacement de l'événement avec une horloge numérique au-dessus de chaque épingle indiquant l'heure qu'il est à chaque emplacement. Cela fonctionne bien si vous disposez d'une page de présentation des événements et que vous savez qui est l'utilisateur connecté.
  • Faites le travail pour moi et dites "(cet événement a lieu à) jeudi 15h15, votre heure" en anglais simple. Ou si vous êtes dans un tableau, mettez "A lieu à (votre heure)" dans l'en-tête de la colonne et imprimez simplement "03h15 jeudi" dans la cellule. Cela fonctionne bien pour les notifications ou les flux.
  • Utilisez du temps relatif pour éviter d'avoir à être précis (cela dépend évidemment du cas d'utilisation). Si les dates sont loin dans le futur, peu importe à quelle heure elles se trouvent? Dites simplement "dans 2 semaines". S'ils sont dans une certaine marge, soyez plus précis: "dans 3h44m". Cette heure doit être relative au fuseau horaire de l'utilisateur.
  • Vous avez toujours besoin d'afficher les fuseaux horaires (pour une raison quelconque)? Affichez une carte comme celle-ci:

map of timezones

Et peut-être mettre en surbrillance le fuseau horaire dans lequel l'événement se produit lorsque l'utilisateur survole un événement dans la liste. Vous pouvez même combiner cela avec ma première suggestion.

Idéalement, utilisez un anglais simple et utilisez autant que possible les métaphores du monde réel pour afficher des informations. Évidemment, vous avez une contrainte: vous devez afficher les informations de manière concise dans une liste. Mais c'est le défi de cette conception.

9
Rahul

si vous en avez vraiment besoin, n'affichez pas les informations de fuseau horaire mais la ville associée à l'événement (ou le fuseau horaire si aucun lieu n'est indiqué).

Mieux, ne montrez pas du tout les fuseaux horaires. Qu'importe si je suis dans le fuseau horaire X, en tant qu'utilisateur, je veux que tout soit normalisé dans mon fuseau horaire. Vous perdez la trace de la simultanéité si vous affichez plusieurs fuseaux horaires sur un seul écran.

Idéalement, vous normalisez le fuseau horaire et fournissez un ti simple à visualiser dans un autre fuseau horaire. Donc, si je veux planifier quelque chose que certains des participants se trouvent dans un autre fuseau horaire, laissez-moi voir quand dans la journée cette réunion aura lieu dans cet autre fuseau horaire avec un simple curseur, qui se déplace vers des pays ou des villes du monde entier.

10
Kaj Kandler

Un petit commentaire sur l'utilisation des abréviations à trois lettres - veillez à ne pas les utiliser comme seul indicateur du fuseau horaire car il existe des cas où les fuseaux horaires ont la même abréviation à trois lettres.

Par exemple, EST peut signifier:

  • Heure d'été de l'Est Australie UTC + 11 heures
  • Heure normale de l'Est Australie UTC + 10 heures
  • Heure normale de l'Est Amérique du Nord UTC - 5 heures
8
adrianh

Lorsqu'un décalage horaire explicite doit être affiché, le World Wide Web Consortium aligne généralement son standard pour les fuseaux horaires sur ISO 8601. C'est-à-dire qu'il préfère "[time] UTC (+/-) hh: mm ".

Alternativement, si vous ne voulez pas utiliser UTC, ils suggèrent d'utiliser la bibliothèque unicode CLDR pour obtenir des identifiants au format "Pays/Ville principale" (par exemple "Amérique/Los Angeles") qui identifient la lumière du jour du pays les règles d'épargne et le temps relatif.

4
Matt

J'aime les abréviations avec le décalage.

Mardi 17 août 2010, 16 h 30 HAE (GMT -4)

Cela me permet de m'associer automatiquement aux fuseaux horaires que je connais et de faire le calcul pour ceux que je ne connais pas. De plus, si vous ne trouvez pas de nom pour un fuseau horaire, il ne semble pas déplacé si vous mettez le décalage.

Un autre bonus à cela est pendant l'heure d'été. EST qui est GMT -5 devient GMT -4. En mettant le chiffre, cela me le rappellera.

Un autre problème est UTC ou GMT. L'UTC semble être plus correct de nos jours mais je suis habitué au GMT, donc je préfère ça.

2
Sruly

Pour faire savoir à l'utilisateur si l'heure a déjà été ajustée - je pense que vous devez être cohérent; soit toutes les heures répertoriées doivent être ajustées (auquel cas vous n'avez probablement pas besoin d'afficher les informations de fuseau horaire), soit toutes les heures ne doivent pas être ajustées (auquel cas les informations de fuseau horaire les plus descriptives doivent être utilisées, comme +5 GMT).

0
Ryan Shripat