this post was submitted on 19 Sep 2024
1471 points (98.6% liked)
Programmer Humor
32562 readers
376 users here now
Post funny things about programming here! (Or just rant about your favourite programming language.)
Rules:
- Posts must be relevant to programming, programmers, or computer science.
- No NSFW content.
- Jokes must be in good taste. No hate speech, bigotry, etc.
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Why the fuck would you spell it "1st" if it's not 1?
Edit: Which is not pronounced "onest". I think people might be missing the point here; I'm actually a fan of zero indexing.
I feel like the joke would've landed better if it said "first". I know it's pronounced the same way, but I'm gonna argue anyway that there's a subtle difference. I've heard 0th used in cs to describe what was at the 0-index, so in that context 1st would be"second", but "first" generally means "nothing before it". English is weird. I wonder if anyone knows whether the word "first" or "1st" came 1st (lol)?
Ordinal vs. cardinal. It's "first" not "onest", right? Even the ancient proto-Germanic speakers could tell there's a difference. (In fact, it's basically a contraction of "foremost", and has nothing to do with numbers; their weak numeracy was an advantage on this topic)
If we weren't implicitly choosing 1-indexing it would be 1nd for "second" (and still not "onend" or something). That breaks down once you get to third and fourth, though.
programmer linguistigs is certainly something to behold.
Fun fact, Noam Chomsky's linguistic theories were and are the foundation of parsing.
They said 1st as an abbreviation of first (it's a normal abbreviation 1st, 2nd, 3rd ... 7th abbreviate first, second, third ... seventh)
Sure, but you have to see how it's an own goal if you're showing up to table 0.
Interestingly, we've got the same glitch in the Gregorian calendar, where the year 0 doesn't exist. So the 21st century started in 2001…
Yup. We should really zero-index century names and years AD/BC as well, but we don't. If we were still using Roman numerals it would be no big deal, but we rarely do, so there's a confusing clash. I'm not sure if it was this programming humour community or another where I had a big exchange on the topic before.
I suppose you could have some kind of positional system that's one-indexed, so 999AD = 1111999AD, and 2000 would be written 2111, but you'd have to completely redo the way arithmetic works, and that defeats the point a bit. And, the new 999 would not be our 999, because it's effectively base 9.