La rotation de la Terre n'est pas parfaitement constante, et le temps universel coordonné, base de la quasi-totalité de la mesure du temps civil, est défini par rapport à un étalon atomique très précis plutôt qu'à la rotation réelle, légèrement irrégulière, de la planète. Pour éviter que UTC ne s'éloigne peu à peu de la rotation réelle de la Terre, une seconde supplémentaire, dite seconde intercalaire, est parfois insérée : c'est pourquoi UTC et l'étalon de temps atomique strict sur lequel il repose divergent très progressivement, puis sont périodiquement réalignés.
Pour presque toutes les applications qui manipulent des fuseaux horaires ou des horodatages, il s'agit d'une anecdote plutôt que d'une préoccupation pratique. Une seconde intercalaire est un événement extrêmement rare et programmé délibérément, et la grande majorité des logiciels, y compris pratiquement tout ce qui repose sur l'horloge d'un système d'exploitation standard, la gère de façon transparente au niveau du système bien avant que votre code applicatif ne voie un horodatage. Il est très peu probable que vous écriviez du code qui se comporte différemment à cause d'une seconde intercalaire, sauf si vous travaillez dans un domaine qui exige spécifiquement une précision inférieure à la seconde sur de longues durées, comme certains systèmes scientifiques, financiers ou de navigation par satellite, ce qui représente une part réellement étroite de l'ensemble des logiciels.
Là où les secondes intercalaires deviennent parfois une vraie préoccupation technique, bien que généralement mineure, c'est dans les systèmes qui effectuent des calculs de durée très précis de part et d'autre d'une seconde intercalaire, où une arithmétique temporelle naïve peut se tromper d'exactement une seconde si elle ne tient pas compte de l'ajustement. La plupart des applications généralistes, tout ce qui calcule une durée en secondes entières ou en unités plus grandes pour des besoins métier ordinaires, ne le remarqueront jamais, puisqu'un écart d'une seule seconde reste largement dans la tolérance de pratiquement tous les usages courants.
Nous en parlons ici surtout parce que cela complète le tableau du fonctionnement réel du temps civil, aux côtés des sujets plus importants en pratique que sont les passages à l'heure d'été et les changements de règles de fuseau horaire, traités ailleurs. Les secondes intercalaires sont une particularité réelle et intéressante de la façon dont UTC est maintenu, mais vous n'avez pas besoin de construire une logique défensive autour d'elles pour l'immense majorité des applications, y compris pratiquement tout ce qui est construit autour de la localisation, de la planification ou du traitement des horodatages avec notre recherche de fuseau horaire. Si votre domaine exige réellement une précision inférieure à la seconde sur de longues durées, c'est une préoccupation spécialisée qui mérite d'être traitée explicitement et séparément, bien au-delà du périmètre des logiciels de localisation habituels.
Une adresse dans un centre-ville bien cartographié ne vous apprend presque rien sur la façon dont votre système gère une route rurale, une frontière contestée ou une requête près des pôles. Testez délibérément les cas difficiles.
Tous les jeux de données contenant des informations de localisation apparemment publiques ne peuvent pas légalement être utilisés dans un produit payant. Ce sont souvent les conditions de licence, et non la disponibilité technique, qui fixent la véritable limite.
Lorsqu'une requête ne peut réellement pas être résolue de manière fiable, ne rien renvoyer est une meilleure réponse que renvoyer une supposition présentée comme un fait. Voici le raisonnement derrière ce choix.