It actually is the best for displaying all-number dates to people as well because no one in their right mind will ever do yyyy-dd-mm.
So if you see the year first, you know the format. When the year is last and you see a date like 03-02-2023, you have to take into account the nationality of the author to know if it’s March 2nd or February 3rd.
But 2023-02-03 it becomes clear that it’s February 3rd.
If the date format is not YYYY-MM-DD it can fuck right off.
My favorite thing about this date format is using it in file names. Sorting the files by name also sorts them by date.
Meeting notes 2023-06-29.txt Meeting notes 2023-06-30.txt Meeting notes 2023-07-01.txt
Thi is the way.
ISO 8601. Unironically the only ISO number I also remember.
I also remember as PHP programming language still won’t do it with this function: DateTimeInterface::ISO8601 DATE_ISO8601 https://www.php.net/manual/en/class.datetimeinterface.php#datetime.constants.iso8601
You need the DateTimeInterface::ISO8601_EXPANDED which can actually accept non compliant strings too.
PHP - wherever you see an intuitive solution it’s wrong or has important caveats.
Everything is right about it:
for storing dates it’s awesome, for displaying dates it’s time to teach your programmer how to format shit for humans.
It actually is the best for displaying all-number dates to people as well because no one in their right mind will ever do yyyy-dd-mm.
So if you see the year first, you know the format. When the year is last and you see a date like 03-02-2023, you have to take into account the nationality of the author to know if it’s March 2nd or February 3rd.
But 2023-02-03 it becomes clear that it’s February 3rd.