Hacker News new | past | comments | ask | show | jobs | submit login

To continue the thought... What about time on different planets? Our time is based on solar revolutions (mostly). If Mars had the same, their time would be different from ours very quickly.



Computers don't care much, since they will just keep using seconds since 1970, which is the same everywhere.

However, if you start regularly traveling quickly though space, the question of aligning offsets caused by relativity could get problematic.


This is already a bit of an issue. GPS satellites have to deliberately run their clocks at the "wrong" rate to cancel out the time dilation caused by their different gravitational potential.


> seconds since 1970

In UTC or TAI? (I.e., with or without leap seconds?)


UTC.

You can use TAI as the base for your system, but it'll be non-conformant (and you'll drift out of sync with the rest of the world obviously).


...but if you use UTC, as is standard, it's not exactly "seconds since 1970", as kazagistar claimed (and as you explain in a nearby comment), which was my point.


unixtime is an integer, it has no concept of some seconds being different to other seconds - leap seconds only matter when converting this integer into a "human readable" format :)


> unixtime is an integer, it has no concept of some seconds being different to other seconds - leap seconds only matter when converting this integer into a "human readable" format :)

Except that's not how UNIX timestamps work (incidentally that'd be TAI time, which some non-conformant systems use for UNIX timestamps, and which DJB advocated for a few years ago, issue being TAI isn't really human-friendly).

A UNIX timestamps is UTC, it's defined as 86400 * days since epoch[0] + seconds since midnight[2]. Since UTC takes leap seconds in account, so does a unix timestamp, which in most implementations means a repeated second (and if you have sub-second timestamps, lots of repeated timestamp). Which has lead to the invention of stuff like "leap second smearing" as lots of software doesn't deal well with repeated timestamps, or more generally non-monotonic clocks.

By the by, because UNIX timestamps are now defined based on UTC and UTC didn't exist before January 1st, 1972, timestamps below +63072000 are imprecisely defined and not-entirely-specified approximations of GMT.

[1] 1970-01-01T00:00:00Z

[2] UTC


I've seen 'sol' used to refer to the period of a solar day on Mars, which is about forty minutes longer than ours here on Earth. You still have to convert, but at least it's clear (ish?) that conversion is required without having to look at the context.


But what do you use when you have robots on both Mars and Venus?


Mathematicians.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: