• souperk@reddthat.com
    link
    fedilink
    arrow-up
    33
    ·
    1 month ago

    Me neither buddy, me neither…

    Falsehoods About Time: … Time always moves forwards.

    I had to learn this the hard way… I was working at a platform that pulled measurements from sensors. The sensors did not declare the timezone for the timestamps of the measurement and the platform broke down twice after daylight saving. The first time there were duplicated records which caused conflicts and the second one we weren’t handling impossible timestamps.

    • AggressivelyPassive@feddit.de
      link
      fedilink
      arrow-up
      23
      ·
      1 month ago

      I had a client whose clock was just a few milliseconds behind the server’s, but due to timezone crap one hour in the past. And the signature was valid for one hour.

      If the network just happened to be too congested, the validation failed. The next request went through just fine. Took us forever to find out.

      • AeroLemming
        link
        fedilink
        English
        arrow-up
        4
        ·
        1 month ago

        I don’t really get why people use any time other than ms/seconds since the epoch for anything other than displaying that time to the end user. Having time just be a single number with no time zone shenanigans makes writing logic like that so much easier.

        • AggressivelyPassive@feddit.de
          link
          fedilink
          arrow-up
          3
          ·
          1 month ago

          Epochs aren’t that simple either.

          First of all, local time can be relevant, so you have to store timezone information somewhere anyway.

          Epochs are also somewhat iffy in regards to leap years or seconds.

          And finally: write me an SQL to retrieve all entries submitted in 2022 using just epochs.

          Timezones are annoying as fuck, don’t get me wrong, but simply ignoring them isn’t a solution either.

          • AeroLemming
            link
            fedilink
            English
            arrow-up
            1
            ·
            28 days ago

            I don’t really remember SQL, does it prevent you from using a range of values? I can understand why leap seconds would be an issue.