Hacker News new | ask | show | jobs
by groundCode 2981 days ago
I always thought it neatly mimicked the way we think of age. When you are born you start at 0. You only turn 1 after you have lived a year.
1 comments

That's an argument for starting at 1, not at 0.

At age 0, you have no elements in your array of years. So the first year is also element 1.

If you want code to reflect the way you've done counting and arithmetic your whole life, you'd want it to start at 1.

That would be defining it as a time span and using the time since start as index.

Which to me is one step away from using the timepoint as the index iteself (zero as start), verus (1 year from zero).

How would you index the time before the first birthday?

Insofar as a timespan is the same as counting years, then yes. If elements in the array are years, then the time before your first birthday doesn't appear.