Les calendriers sont des constructions arbitraires que les humains utilisent pour organiser le temps par commodité. Le calendrier de la Rome antique était géré par le Pontifex Maximus, un chef religieux qui pouvait également être un homme politique. Jules César a exploité ce double rôle à son avantage politique, manipulant les festivals pour perturber son opposition. Ses efforts ont abouti au calendrier julien, qui a servi de calendrier principal pendant environ 1500 ans. Le pape Grégoire a ensuite affiné le calendrier, corrigeant les calculs des années bissextiles et le réalignant avec les saisons, ce qui a nécessité de sauter treize jours. Le texte souligne que les dates ont historiquement manqué de logique intrinsèque. Il introduit ensuite un extrait de code Java problématique impliquant GregorianCalendar et XMLGregorianCalendar. Ce code tente de convertir un GregorianCalendar en XMLGregorianCalendar, puis de le reconvertir, en comparant les deux. Malgré la logique apparente suggérant une comparaison vraie, le processus de conversion en XMLGregorianCalendar est avec perte. Par conséquent, la fonction dans l'extrait de code renvoie toujours false. L'auteur s'interroge sur le but et l'utilité d'une telle vérification, soulignant la faillibilité humaine dans le codage. Le contexte historique sert à illustrer que les systèmes temporels ont toujours été sujets au changement et à l'inconvénient.
GregorianCalendaretXMLGregorianCalendar. Ce code tente de convertir unGregorianCalendarenXMLGregorianCalendar, puis de le reconvertir, en comparant les deux. Malgré la logique apparente suggérant une comparaison vraie, le processus de conversion enXMLGregorianCalendarest avec perte. Par conséquent, la fonction dans l'extrait de code renvoie toujoursfalse. L'auteur s'interroge sur le but et l'utilité d'une telle vérification, soulignant la faillibilité humaine dans le codage. Le contexte historique sert à illustrer que les systèmes temporels ont toujours été sujets au changement et à l'inconvénient.