- cross-posted to:
- memes@lemmy.ml
- cross-posted to:
- memes@lemmy.ml
LibreOffice calc has
- 0 = 1899-12-30,
- 1= 1899-12-31,
- 2=1900-01-01
I wonder if they were trying to one-up excel.
I mean… They’re all kind of arbitrary in their own way, but one could argue that the excel time being invalid is actually useful because it serves as a null value - you know it’s incorrect, whereas on the other systems it could be the default date or it could be the actual date.
I work in the accounting team of my company, doing python development, and a lot of the sources I get came from the accountants that only use excel and every once in a while the date columns came completely fucked with that integral number excel uses sometimes and is a pain in the ass to translate to datetime.
January zeroth, 1900. A red letter date.
Fucking Microsoft.
On Linux, 0 often works out to 12/31/1969 after local time zone conversion…
If you think that’s bad, look at what “1” means.
(And, honestly, at least windows’ “last big calendar change” and excel’s “start of the century when we wrote it” are reasonable points. The unix “let’s make it recent so we can fit an absurdly small unit as an integer!” Epoch is just… Weird.)
“start of the century when we wrote it”
This meme wouldn’t exist had they done that. But they chose the zeroeth, not the first, of January for Excel.
Yep. “1” is 12:00am on 1-Jan-1900
Numbers less than zero just give a weird error. Between zero and less than one give a nonsense date-formatted non-date.
🧐: 0 is the origin of time, the big bang (if you believe in that kind if thing)
The problem then is figuring out when earth (and then human) time starts, but we can just add some arbitrary offsets that feel right and everyone agrees on.
Time is a pain in the ass and unfortunately not this simple, since it’s affected by energy and doesn’t pass at constant rates. The amount of time that’s passed since the Big Bang is different on earth than it is on a neutron star, for example, so one fundamental reference time isn’t possible the way it is for other units.
Listen. Let’s just do it simple. Everyone sync their clocks with mine right now. It says it’s 10:57 at the moment, but we’ll just subtract that in the future going forward. Ready? 3, 2, 1, Go! Now we know where 0 is, whew. Problem solved, scientists!
Edit: wait, now it says 10:58…
0 means now 🙂
Now do 03:14:08 UTC on 19 January 2038!
I think we’re mostly using 64 bit machines now. Even loads of embedded stuff is running on 64 bit processors now.
There will still be a lot of old software and hardware that needs updating before the 32 bit Unix time overflow
I’d never noticed that in this order, it’s almost π!
Off by 0.001 and some change; that coincidence is going to haunt me.
the actual last 32 bit micro happens in 3:14:07 but that’s the wrong way :)
Easy. Just be 64-bit. (Or unsigned, but that’s not as good.)