• ILaughBecauseFunny@feddit.dk
    link
    fedilink
    arrow-up
    12
    ·
    13 hours ago

    Issue: there are 27 different ways of writing a date.

    Engineers: We most make a common standard that is unambiguous, easy to understand and can replace all of these.

    Issue: there are 28 different ways of writing a date.

    Joke aside, I really think the iso standard for dates is the superior one!

  • arc@lemm.ee
    link
    fedilink
    arrow-up
    29
    ·
    1 day ago

    The sane way of dealing with it is to use UTC everywhere internally and push local time and local formatting up to the user facing bits. And if you move time around as a string (e.g. JSON) then use ISO 8601 since most languages have time / cron APIs that can process it. Often doesn’t happen that way though…

    • nBodyProblem@lemmy.world
      link
      fedilink
      arrow-up
      1
      ·
      11 hours ago

      The BEST way is to use the number of seconds after the J2000 epoch (The Gregorian date January 1, 2000, at 12:00 Terrestrial Time)

    • expr@programming.dev
      link
      fedilink
      arrow-up
      7
      ·
      24 hours ago

      Generally yes, that’s the way to do it, but there are plenty of times where you need to recreate the time zone something was created for, which means additionally storing the time zone information.

    • hazypenguin@feddit.nl
      link
      fedilink
      arrow-up
      4
      ·
      24 hours ago

      Definitely. If your servers aren’t using UTC, then when you’re trying to sync data between different timezones, you’re making it harder for yourself.

  • driving_crooner@lemmy.eco.br
    link
    fedilink
    arrow-up
    3
    ·
    17 hours ago

    In the last company I work for, the department was created from zero, and my boss just let me take all the technical decisions so from the begging everything was wrote in ISO-8601. When I left it was just the way it was, if you try to use any other date format anywhere something is going to give you an error.

  • WoodScientist@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    46
    arrow-down
    2
    ·
    1 day ago

    I propose that we amend the ISO to require the days of the week be named after their etymological roots in that language.

    English Days of the Week:
    Day of the Sun
    Day of the Moon
    Day of Týr
    Day of Odin
    Day of Thor
    Day of Frēa
    Day of Saturn

    Imagine dating a meeting, “Day of Odin, May 7, 2025.” Imagine a store receipt that says, “Day of Thor, June 5, 2025.” Imagine telling a friend, “July 4th falls on a Day of Frēa this year!”

    THIS IS WHAT WE COULD HAVE. THIS IS WHAT WE HAVE LOST. THIS IS WHAT WAS STOLEN FROM US.

    We could bring it back. We could make this the norm. We could make this real. We could summon this bit of ancient magic back into our world. Let’s remember what we actually named these days for! BRING BACK THE DAY OF THOR!

    • m_f@discuss.online
      link
      fedilink
      English
      arrow-up
      1
      ·
      12 hours ago

      Do you mean the post titles? I’ve been using the same format as was used since before I took over posting, but if people want ISO format that works for me

  • vga@sopuli.xyz
    link
    fedilink
    arrow-up
    17
    ·
    edit-2
    1 day ago

    ISO 8601 allows all kinds of crazy time stamps. RFC 3339 is much nicer and simpler, and the sweet spot is at the intersection of ISO 8601 and RFC 3339.

    Then again, ISO 8601 contains some nice things that RFC 3339 does not, like ranges and durations, recurrences…

    https://ijmacd.github.io/rfc3339-iso8601/

      • GreyEyedGhost@lemmy.ca
        link
        fedilink
        arrow-up
        13
        ·
        1 day ago

        If I, my software, or my data last this long, I will have nearly 8000 years to resolve it. Which is to say, the year 9998 is going to get busy.

      • Saleh@feddit.org
        link
        fedilink
        arrow-up
        14
        ·
        2 days ago

        Can be solved with a small shellscript adding a leading zero to all filenames with the format.

      • thesmokingman@programming.dev
        link
        fedilink
        arrow-up
        3
        arrow-down
        1
        ·
        2 days ago

        I’d be curious to see a sorting algorithm that doesn’t handle YYYYY-MM-DD with YYYY-MM-DD properly. If you drop the dashes you still get a proper numeric order. If you sort by component, you still get the proper order. Maybe a string sort wouldn’t? Off the top of my head the languages I’m thinking either put longer strings later, giving us the proper order, or could put 1YYYY- ahead of 1YYY-M so maybe string sorting is the only one that’s out.

        • HailHydra@infosec.pub
          link
          fedilink
          English
          arrow-up
          15
          ·
          edit-2
          2 days ago

          Lexical sorting (string sorting/alphabetical order sorting) is what I believe they were referring to when talking about file names.

          The fact that you don’t have to do any parsing of the string at all, just do a straight character-by-character alphabetical sort, and they will be sorted by date, is a great benifit of this date scheme. That means in situations where no special parsing is set up (eg, in a File Explorer windows showing a folders contents sorted alphabetically) or where your string isn’t strictly date only (eg, a file name format such as ‘2025-05-02 - Project 3.pdf’) you can still have everything sorted by date just by sorting alphabetically.

          Its this benifit that is lost when rolling over to 5-digit years.

          • JackbyDev@programming.dev
            link
            fedilink
            English
            arrow-up
            2
            ·
            1 day ago

            I bet you could make a one liner to rename files with YYYY-MM-DD to 0YYYY-MM-DD fairly easily. Not a problem.

          • The_Decryptor@aussie.zone
            link
            fedilink
            English
            arrow-up
            2
            arrow-down
            1
            ·
            1 day ago

            It’s an easy fix at least, just check if you’re comparing numbers on both sides and switch to a simple numerical sort.

            I think Windows used to get this wrong, but it was fixed so long ago that I’m not even sure now.

    • blazeknave@lemmy.world
      link
      fedilink
      arrow-up
      8
      ·
      1 day ago

      Omg thank you!! Everyone sees my notes thinks I’m crazy for obsessing… It’s the correct fucking sort!

  • essteeyou@lemmy.world
    link
    fedilink
    arrow-up
    32
    ·
    1 day ago

    My goodness, some of the comments in here must come from people who thought that those writing the standard were morons who did no research.

    • Katana314@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      arrow-down
      1
      ·
      15 hours ago

      I don’t think they’re morons…just slaves to convention and compatibility. Not many ways to get away from that and justify it.

    • argh_another_username@lemmy.ca
      link
      fedilink
      arrow-up
      9
      arrow-down
      1
      ·
      edit-2
      1 day ago

      But… that’s not the right way. Are you saying the ISO8601 violates ISO8601?

      • so, apparently not I just whooshed, I didn’t even noticed the dates are ambiguous.
    • Artyom@lemm.ee
      link
      fedilink
      arrow-up
      3
      ·
      1 day ago

      Might be the best xkcd alt text of all time. I knew if from memory, and as soon as I saw the comic I thought “I bet someone quoted the alt text in the top comment”.

  • thesmokingman@programming.dev
    link
    fedilink
    arrow-up
    45
    ·
    2 days ago

    There are several people in the comments saying they have to use 27 Feb 2013 because they work with people all over the world. I’m really confused - what does that solve that 2013-02-13 does not? I know that not every language spells months the English way so “Dec” or “May” aren’t universal. Is there some country that regularly puts year day month that would break using ISO 8601 or RFC 3339?

    • Saleh@feddit.org
      link
      fedilink
      arrow-up
      35
      ·
      2 days ago

      I think learning all abbreviations for different months in different languages is more complicated than just learning that the time is sorted from largest to smallest unit.

        • modeler@lemmy.world
          link
          fedilink
          arrow-up
          8
          ·
          1 day ago

          I know, right! I’ve been campaigning for this for everyday numbers. For example, twenty seven should be written smallest first: 72. Likewise this year is 5202, and next year 6202. That way no-one’s going to be confused at all.

        • MapleMan@lemmy.ca
          link
          fedilink
          English
          arrow-up
          9
          ·
          1 day ago

          If you name files or other data with ISO 8601 then they’re always sorted chronologically when you go largest to smallest.

    • dragon-donkey3374@sh.itjust.works
      link
      fedilink
      arrow-up
      1
      arrow-down
      20
      ·
      2 days ago

      When someone asks you what date it is, no one says it’s 2025 May 5th. We all know what year it is, and we all know what month we are in. It’s the day component that is usually the unknown.

        • Imgonnatrythis@sh.itjust.works
          link
          fedilink
          arrow-up
          3
          ·
          2 days ago

          Guilty of that myself this very day. I did it a very spectacular way too. Some coworkers came up to me and said “man, April was a busy month for you!” I boldly replied “and it ain’t even over yet!” I was promptly corrected.

      • SwingingTheLamp@midwest.social
        link
        fedilink
        arrow-up
        6
        ·
        1 day ago

        That’s locality of reference, though, similar to how you can say “here” or “there” for spatial coordinates. Everybody is aware of the year and month, so you omit it as given. The order of significance is still year, month, day.

        Imagine if a harried time traveler jumped out of their time machine and asked you the date. Would it make sense to say, “Why, it’s the 1st.” (Or more possible, if a friend awoke from a coma.) If you ask somebody when they were born, most people will give the year at minimum. Of course, there are some weirdos out there, and you recognize them when you ask when they were born, and they say, “on a Tuesday.” Same for the date of the Norman invasion of Great Britain. If you don’t already have some sense of history, then knowing it happened about the 20th isn’t very edifying.

      • i_love_FFT@jlai.lu
        link
        fedilink
        arrow-up
        7
        ·
        2 days ago

        Writing dates is usually in order to keep track for the future, when the year and month may be different.

    • Lovable Sidekick@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      arrow-down
      2
      ·
      edit-2
      2 days ago

      It solves the familiarity problem, when getting somebody to do something by a date they readily understand at a glance takes precedence over making everybody in the world change a lifelong habit.

    • sajuukar@retrolemmy.com
      link
      fedilink
      English
      arrow-up
      13
      arrow-down
      15
      ·
      2 days ago

      27 Feb 2013 is unambiguous- regardless of where you’re from or how you write your dates, you can’t confuse 2013 for the month or day, you can’t confuse Feb for a day or week, and if you can’t figure 27 out, then we have bigger problems!

        • EightBitBlood@lemmy.world
          link
          fedilink
          English
          arrow-up
          4
          arrow-down
          20
          ·
          1 day ago

          2013-02-27 is also unambiguous.

          Hey what’s today’s date?

          It’s 2025 -

          No like the DAY?

          Yeah, it’s 2025, 02 -

          Not the month, the day - What’s today’s actual date?

          Like I was saying, if you’d let me finish, “2025 - 02 - 27”

          I’m mostly joking, but when it comes to info about dates, I think the most evctive format it one that organizes the information within a heirachy that provides follow up answers.

          Formatting dates as day / month / year does just that. Provides the day it is, followed by the month and year as that is the order that information is usually needed in.

          I find providing the year first (or month) is much more ambiguous as neither are the day the actual date falls on.

          • thebestaquaman@lemmy.world
            link
            fedilink
            arrow-up
            4
            ·
            1 day ago

            Counterpoint: What you say applies in daily life, not when querying an archive of any kind. Year-month-day is the natural sorting order if the question is “which file/folder/column in the spreadsheet is the one I need?” In which case you narrow it down to first the year, then the month, then the day.

            I started using YYYY-MM-DD to name files and directories once I noticed that they then became automatically sorted chronologically when I sort the containing directory alphabetically by file name.

          • goldfndr@lemmy.ml
            link
            fedilink
            arrow-up
            4
            ·
            edit-2
            1 day ago

            If you need to ask for the current date so often, I suggest getting a watch. (not sure if joking vs predisposed for this part)

            If you’re asking so often about recent things then, yes, hearing the redundant parts out loud is only irksome because they’ve already been delivered to you (by yourself).

            On the other hand, if you’re asking someone when an arbitrary event happened (e.g. when reminiscing), having the year first quickens context.

            • someacnt@sh.itjust.works
              link
              fedilink
              English
              arrow-up
              1
              ·
              24 hours ago

              I was said that western mindset goes from small scale to larger scale, like 02-05-2025. Hmm, maybe that’s West vs East propaganda material?

          • faythofdragons@slrpnk.net
            link
            fedilink
            English
            arrow-up
            9
            arrow-down
            1
            ·
            1 day ago

            We need to get rid of the month/day and just refer to days by number. Today is day 121 in the year 2025, it’s super clear.

      • scratchee@feddit.uk
        link
        fedilink
        English
        arrow-up
        5
        ·
        edit-2
        2 days ago

        Which I was the justification used when my work decided to use 2025-May-01.

        It’s close enough to the iso date that nobody will be confused but with that 1 extra layer of security blanket to separate months and days.

        Of course, that does ruin sorting, so I think it was a bit silly, nobody has ever used yyyyddmm so it’s all a bit theoretical to me.

      • I used to work for a company that agreed with you, well at least some clown in management did. Even though it was an Australian company, at least part of the problem was we had an office in Manila, and they speak “American English” which seemed to include the awful date system too. We dealt with a lot of files being issued to clients / received from vendors etc. Because the “official” system used those fucked up dates, everyone ran their own secondary sets of data folders in / out with everything done in ISO dates so you could actually sort it properly.