wind force weak

PROBLEM : Not all "TIMESTAMP" are created equals

At start, the problem was "simple". The date we were entering in our system (let's say 2023-09-01) was not retreive has 2023-09-01 but instead i got 2023-08-31...

We need literature about this...

Let heard what ChatGPT has to say about it

Question : What is an UTC date ?

UTC stands for Coordinated Universal Time. It is a time standard that is often used as the basis for timekeeping and synchronization of clocks worldwide. UTC is sometimes referred to as GMT (Greenwich Mean Time), although GMT is technically an older time standard that has been largely replaced by UTC.

An UTC date refers to a date and time expressed in the UTC time zone without any adjustments for daylight saving time or time zone offsets. UTC is used as a reference point because it does not observe daylight saving time changes, and it provides a consistent timekeeping reference for different regions around the world.

For example, if you have an event scheduled for "2023-09-30 12:00:00 UTC," it means that the event is scheduled to occur at noon on September 30, 2023, according to the Coordinated Universal Time standard, and it doesn't change with seasonal shifts in time.

UTC is often used in various fields such as aviation, computing, and telecommunications to ensure consistent and synchronized timekeeping across different regions and systems. It's especially important in situations where precise timing is crucial, such as in global financial transactions, satellite communication, and international travel.


Question : What is an ISO 8601 date ?

ISO 8601 is an international standard for representing dates and times in a way that is both human-readable and unambiguous. It defines a format for date and time representations, making it easier to exchange date and time information between different systems and countries. The ISO 8601 date format has the following general structure:

YYYY-MM-DDThh:mm:ss.sssZ

Here's what each part of the format represents:

Here are a few examples of ISO 8601 date and time representations:

ISO 8601 is widely used in various industries and applications, including computer programming, data exchange, and international standards for document and information representation, because of its clarity and consistency in representing dates and times.


Question : What is a Timezone ?

A time zone is a region of the Earth that has the same standard time. It is a way to keep track of time by dividing the world into segments, each of which observes the same local time throughout the year. Time zones are necessary because the Earth is divided into 24 longitudinal sections, each 15 degrees of longitude apart, and as the Earth rotates, different parts of the world experience daylight and darkness at different times.

Key points about time zones include:

Time zones are essential for coordinating activities, scheduling events, and maintaining a standardized way of measuring time across the world. They help ensure that people in different parts of the globe can communicate and work together effectively, despite the Earth's rotation causing variations in local time.


Question : Why do we say there is not a 1:1 relationship between a Timezone and the Date ?

There is not a 1:1 relationship between a timezone and the date because timezones are not static; they can change over time due to various factors, including political decisions, regional preferences, and adjustments for daylight saving time (DST). This lack of a 1:1 relationship means that a specific timezone can have different offsets from Coordinated Universal Time (UTC) at different points in time, which in turn affects the local date and time.

Here are some reasons why timezones are not fixed and why their relationship with the date can change:

Due to these factors, it's important to consider the historical and current rules for a specific timezone when working with date and time information. This complexity can make date and time calculations challenging, especially when dealing with international or historical data. To ensure accurate and reliable date and time handling, it's often recommended to use well-established libraries and tools that account for timezone changes and DST transitions.


IMPLICATION : Know what you want

Due to business requierements

After a huge modelisation of what we want (DRAWING)

If the event is tangible/material and linked to a geographical point in space. We should store a local date.

For exemple :

The Leakfinder in Tahiti, found the leak at 19h01. So using our system we should vizualize in Paris that he found it at 19h01 (and not 7h01).

If the event is untangible/immaterial and not bound to a geographical point in space. We should store an UTC date.

For exemple :

The network index was updated at 22h07 in Paris. So using our system the Leakfinder should vizualize in tahiti that the index was updated at 10h07 (and not 22h07). Because the leakfinder don't give a shit about the hour the system was updated in Paris.


"SOLUTION" : Touch it with a stick