I’m definitely in the “for almost everything” camp. It’s less ambiguous especially when you consider the DD/MM vs MM/DD nonsense between US dates vs elsewhere. Pretty much the only time I don’t use ISO-8601 is when I’m using non-numeric month names like when saying a date out loud.
Yeah, it’s pretty much everything for me too. The biggest exception being when UI is involved and a longhand date format would be more friendly.
Friendly to who?
The time reapers
In Canada we use MM/DD and DD/MM so you never quite know which it is! There’s an expense spreadsheet I fill out for work that uses one format in one place and the other format in another…
Holy cats, that sounds like a nightmare.
That would ruin my entire day
Hey, that sounds like my cloud storage providers auto billing system.
“Your auto renewal will draft on 08/09/23.”
Is that August 9th or September 8th? Literally depends on where the person you ask is in the world.
And you can do a simple sort on the combined number and youve sorted by date.
Can’t believe he missed the opportunity to add 41332 to the number of ways of how not to write dates.
I must be missing something.
Experience with excel.
I feel better that I don’t understand now.
Excel doesn’t display ISO dates unless you define a custom format.
Excel ::shudder::
They’re trying to make it look fake!
Everyone tries to make it look fake. Fuckers!
I recall writing a script that produces that 01237 with smaller digits around it for the current date. It lists the numbers that occur in the date (0, 2, 3 and 9 for 2023-09-09), the smaller digits show at which position they show up in a YYYYMMDD format (the 0 shows up on positions 2, 5 and 7)
The script has not been pushed online cause it was so dang bad
ISO-8601 over all other formats. 2023-08-09T21:11:00Z
Simple, sortable, intuitive.
Awful to actually read, though. Using T as a delimiter is mental… At least the hyphen provides some white space
Honestly, even a lowercase t.
deleted by creator
Why are you splitting and delimiting a date object? Convert it to a shallower object if that’s what you need
While you are definitely right, I and many others use yyyy-mm-dd outside of software. And that’s when the T becomes super lame.
Using T as a delimiter is mental
You get used to it.
Good luck using colons in a filename.
Linux has been able to handle that since the 90s.
Tough luck if you are using NTFS file system. All my homies use EXT4.
btrfs/zfs > ext4
I mean yes, but I haven’t used any of those yet, so I can’t fully agree.
Too long. Even 2023-08-09 is too long for me. But since I like the readability I use 2023.08.09. Less pixels and more readable then 20230809.
You should be localizing it before displaying to users. Let their browser/platform decide.
Personally I can’t stand the format you’ve shown. I also can’t stand periods being used for phone numbers, e.g.
555.555.5555
.My company has decided to standardized on phone numbers with dots instead of dashes. They’re in email signatures, memos, client proposals. I absolutely hate it and it rubs me the wrong way every time I see it. It’s wrong.
In Germany this is standardized, too. DIN 5008 for phone numbers. Areacode Number-extension. For example 0123 456789-01
I use a standardization library for phone numbers. It makes parsing any user input dead easy, storing it as a standard string (can’t think of the standard name) and then outputting in the country’s respective format. I don’t have to inject a bunch of JavaScript crap that’s like “wrong format” and harass users; the backend sorts it all out.
Same number of pixels, they are just different colours. But you still paid for them.
Although I actually like that format a lot, we use characters to help elicit context. 2023/08/09 is fine since we have been using / for dates for so long. Also it blows my mind why people don’t use : in 24 hour times. 16:40 is great, no am pm bullshit and you immediately know I’m talking time.
ISO 8601 is always the correct way to format dates.
Christ, do this many people really find iso8601 hard to read? It’s the date and the time with a T in the middle.
Not “many people.” Americans. Americans find it hard to read. I’m not 100% sure but I’m fairly certain everyone else in the world agrees that either day/month/year or year/month/day is the best way to clearly indicate a date. You know, because big to small. America believes month/day/year for some stupid fucking reason.
I’m pretty sure it’s because of the way we say it. Like, “May 6th, 2023”. So we write it 5/6/2023.
That said, I think it’s fucking stupid.
Yer, just like the most important day for the seppos… The 4th of July…
I will never stop being impressed by the absolute insanity that is British rhyming slang. Apparently I’ve never heard seppo before, short for septic tank, rhyming with Yank. I just learned a new mildy derogatory term for Americans, nice
In British English you say the date before the month as well. I know that even saying the month first sounds very jarring too me.
I’m not an American and English isn’t my first language, so the US way to write dates always confused me. Now, I finally understand it! Many thanks, this is legitimately sooooo useful!
I am an American and I use it religiously for the record. Especially for version numbers. Major.minor.year.month.day.hour.minute-commit. It sorts easy, is specific, intuitive, and makes it clear which version you’re using/working on.
America believes month/day/year for some stupid fucking reason.
It’s because of Great Britain. We adopted it from them while a bunch of colonies and it regionally spread to others.
America didn’t change, probably because we have been so geographically isolated (relatively speaking), whereas the modern day UK did change to be more like Europe.
People get so goddamn hot and bothered by things that ultimately don’t matter almost like it is a culture war issue. Americans maintain the mm/dd/yyyy format because that’s how speak the dates.
I wouldn’t say it is us Americans who “find it hard to read” if someone from elsewhere in the world sees an American date, knows we date things in the old way they used to date things, and then loses their minds over having to swap day for month. Everyone just wants to be contrarian and circle jerk about ISO and such.
Us devs, on the other hand, absolutely should use the same format of yyyy-mm-dd plus time and time zone offset, as needed. There’s no reason, in this age, for dates to be culturally distinct in the tech space. Follow a machine-first standard and then convert just like we do with all other localizatons.
But hey, if people want to be pedantic, let’s talk about archaic gendered languages which are completely useless and has almost zero consistency.
Bruh even Britain uses day-month-year, even speaks them as “9th of September”.
“September 9th” doesn’t even make sense in English as there is only 1 September in a year.America did this.
There is no excusing that.
Day/month/year is not in the same category as y/m/d. That crap is so ambiguous. Is today August 9th? Or September 8th? Y/m/d to the rescue.
It’s only ambiguous to Americans.
Or anyone who has to work with Americans. Especially when you also work with other countries as well. You can’t assume dd/mm/yyyy or mm/dd/yyyy blindly in either case. yyyy-mm-dd solves the issue entirely because both sides at least agree that yyyy-dd-mm isn’t a thing.
You’re almost there, just use - instead of / and everyone knows what you mean
Because who cares what day it is without knowing the month first.
Who cares what month it is without knowing the year first
Who cares what year it is without knowing which dimension first
Who cares what dimension it is without knowing which timeline first
Of course, don’t you forget the current month all the time? I know I do!
I actually do, and I know I’m not alone.
How often do you mentally need to update the month in your head though? I can literally tell you.
Ah yes, because all dates you see every day have to do with the current month
10 feels like an October…
I think it’s fair that programmatic and human readable can be different. If someone is putting in the month word for a logging system they can fuck right off though
If someone is putting in the month word for a logging system they can fuck right off though
That way you can sort the months of the year, in order:
- April
- August
- December
- February
- January
- July
- June
- March
- May
- November
- September
I use it all the time when writing dates.
2023-08-09: just read from the end. 9th August 2023.
As long as they use letter for months, like Jul 09, 2013 its fine. Otherwise prefer a sorted timescale version. Either slow changing to fast changing yyyy mm dd or fast to slow dd mm yyyy.
Nah, letters bring another complexity - besides with them Feb gets sorted after Dec.
The letters make no sense to me. Like Jul, Jun, I’m constantly mixing them up. Give me a good solid number like 07 or 10. No mixing that up. Higher numbers come after lower numbers, simple as.
what
It warms my heart to see so many comments in the camp of “I use it everywhere”. Absolutely same here. You are my people.
Upvoted because I appreciate the exposure for this dating method, but I personally use it for everything. Much clearer for a lot of reasons IMO. Biggest to smallest pretty much always makes the most sense.
The fact that “YYYY-MM-DD HH:MM” displays from set to subset is visually satisfying to me. I use the format everywhere.
I use it everywhere too. Screw the naysayers
Not only visually satisfying, but also logically sound
Hell I use it in my diary. It just works
I wish we this for work.
Not on paper documents though. Here in Europe I have to write dd-mm-yyyy.
If you’re writing on paper, 10 August 2023 is superior.
I really wonder how americans were able to fuck this one up. There are three ways to arrange these and two of them are acceptable!
Edit: Yes, I meant common ways, not combinatorically possible ways.
Hmmm more like 6 ways but I get your point
Three ways that people actually use. YYYY-MM-DD, DD-MM-YYYY, and MM-DD-YYYY (ew).
AFAIK no-one does YYYY-DD-MM, DD-YYYY-MM, or MM-YYYY-DD… yet. Don’t let the Americans know about these formats, they might just start using them out of spite.
YYYY-DD-MM, DD-YYYY-MM, or MM-YYYY-DD
What the actual fuck
‘hey man, what date is it today?’ ‘well it’s the 15th of 2023, August’
Lmao, I want to try responding like this and see what the reactions are
I want to try this, too. Make it more possessive, though. The 15th of 2023’s August. Really add to the confusion.
I’ll avoid those at all cost and go with the new standard of YY-MM-DD-YY. What’s the date today? 20-08-10-23
whoa, take it easy there Satan.
Need more julian dates, YYYY-JJJ.
What, 2023-223 for the 223rd day of the year 2023? That… is oddly appealing for telling the actual progress of the year or grouping. No silly “does this group have 31, 30, 29 or 28 members”, particularly the “is this year a multiple of four, but not of 100, unless it’s also a multiple of 400?” bit with leap days.
You’ll have oddities still, no matter which way you slice it, because our orbit is mathematically imperfect, but it’s a start.
So we need to correct our orbit is what I’m hearing!
That’d be a wack premise for a crazy scientist story
deleted by creator
Twelve ways if you count two-digit years. My nephew was born on 12/12/12 which was convenient.
for the americans, that’s 12/12/12
Thanks bro, I was really confused
My grandmother was born in 1896 and lived to be 102, just long enough for the pre-Y2K computer systems in hospitals to think she was a two-year-old.
Ouch!
I lost about an hour of my life trying to create a historical timeline in MS Excel. Eventually learned this is impossible with dates earlier than 1900.
this guy does combinatorics
It’s how the dates are typically said, here. November 6th, 2020 = 11/6/2020. [Edit: I had written 9 instead of 11 for November.] (We basically never say the sixth of November. It sounds positively ancient.) It’s easy to use, but I agree that YYYY-MM-DD is vastly superior for organization.
Where is here that November = 9? Probably somewhere you’ve had a long day
deleted by creator
Do people outside of the US not say dates like “June first” etc? M/D/Y matches that. It’s really not weird at all, even if the international ambiguity is awful.
Nah man. Use 8601 for everything. They’re intrinsically chronologically sortable.
Or unix epoch time
In a programmatic context? Sure.
In an “I want to be able to comprehend this by glancing at it” context: absolutely not.
2023-08-10 15:45:33-04:00
is WAY more human legible than1691696733
.What, you don’t remember your time in Unix timestamps? Filthy casuls.
It’s super easy arithmetic too, just remember ”Pi seconds is a nanocentury.”
Whenever I’m passing a date from a website backend to frontend I’ll usually send it inside something like
<span>
then have JavaScript convert it to a string based on the browser’s localization settings.So many websites I see for error reporting, etc always throw everything out as UTC and it drives me crazy. It would be nice to just have an HTML tag for ISO-8601 (or even UNIX as done here).</span>
Your prayer has been answered! Hear ye:
That looks like it’s only useful for machine-readable dates so it wouldn’t be useful for killing off the JavaScript portion of my “hack.” I cry at night for this
Looks like my code example glitched here. Basically a an HTML span tag with some CSS class for JavaScript to process.
ISO 8601 gang. You’d never want to describe dates that way but for file management the convenience is massive.
If you’re using a *NIX command line, something like
mkdir $(date +%F)_photos
is super handy.
I do. Anything I have to put a datecode on, always gets a stamp of YYYYMMDD.
That’s not ISO8601
That is the basic format of ISO8601, hyphens are only used in the extended format which is encouraged to be used in plain text.
See ISO 8601:2004 section 2.3.3 basic format
Nah, for everything.
Typisk svensk!
.
There are two ways of writting dates: the “yyyy-mm-dd” one and the wrong one
ISO 8601 ftw. Here’s the date, time, and duration for our next meeting:
2023-08-10T20:00:00PT2H30M
But where is a timezone?
PT, Pacific time. /s
Timezone is optional, and when missing is read as local time.
In my mind, default is UTC unless otherwise specified.
luckily Local time can be any timezone!
nearly forgot that 8601 has support for durations as well
It handles ambiguity too. Want to say something lasts for a period of 1 month without needing to bother checking how many days are in the current and next month?
P1M
. Done. Want to be more explicit and say 30 days?P30D
. Want to say it in hours? Add theT
separator:PT720H
.I used this kind of notation all the time when exporting logged historical data from SCADA systems into a file whose name I wanted to quickly communicate the start of a log and how long it ran:
20230701T0000-07--P30D..v101_pressure.csv
(“
--
” is the ISO-8601 (2004) recommended substitute for “/
” in file names)If anyone is interested, I made this Bash script to give me
uptime
but expressed as an ISO 8601 time period.$ bkuptime P2DT4H22M4S/2023-08-15T02:01:00+0000, 2 users, load average: 1.71, 0.87, 0.68
better than the absolutely deranged MM/DD/YYYY and imo the best when it comes to international communication
YYYY-MM-DD for everything. My PC clock, my phone and even my handwritten notes all use that format.
The only other acceptable format is military notation: DD MMM YYYY.
That’s quirky - how is there anything logical about the military time format?
The 3 "M"s are not numerical, but indicate characters. For example 01 Jan 2023.
Considering how there’s almost no computers anymore with such limited resources that they can’t store a string or convert to one, it’s kind of crazy anybody bothers with the ambiguity of using numbers for the month.
The limited resource is not Compute Power, but Engineer time. Sure, you could ask someone to implement wrappers everywhere in the system so that the display is human-readable - or you could put one label somewhere clarifying the date format to readers.
Implement wrappers everywhere? Why can’t they just write a single function that takes an ISO date a spits out a string (human readable) date? I’d put money down that such a function already exists in almost every library that deals with dates.
That’s why I said “implement” and not just “write”. The process of wiring in that existing function has non-negligible cost, as does keeping it updated/patched.
Sure, it should be pretty small - but it’s non-zero. Is it worth it? That’s a product decision.
Hmm good point actually
Yes spreadsheet apps like excel do this. If I remember correctly MMMM would write the full month. January.
i just write mmmmmmm because you can never have too many m’s.
It’s written like 07 Aug 2013. It’s consistent in character length, doesn’t confuse internationals, doesn’t take much space and is written exactly like being said around here. It’s just not that great for file names.
Yeah, ok. Expanding the month to 3 chars does reduce potential confusion
I feel the need to be pedantic and point out that this is only necessary, however because of the ridiculous degenerate convention of MM DD YY(YY?) used by said country…