The technical actions needed to ensure the continuity of UTC

87 points by gliffie 6 hours ago on hackernews | 41 comments

smartmic | 5 hours ago

Short: no more leap seconds

jcranmer | 5 hours ago

TL;DR: No more leap seconds. The replacement will not be leap minutes but leap hours.

krunck | 5 hours ago

Am I wrong in interpreting this as just pushing the problem (divergence between International Atomic Time and the rotational speed of the earth) 100 years in the future?

layer8 | 5 hours ago

Several hundred years at least (see my sibling comment). And in all likelihood this will be handled by shifting the time zones by an hour, or possibly by omitting one DST adjustment in spring.

In the very far future, leap seconds would become inadequate anyway, as you’d have to insert them every month, then every week, then every day, due to the deceleration of Earth’s rotation.

andy81 | 2 hours ago

If DST is still around in 1000 years, please drop my brain-jar in front of a spacebus.

Leap seconds never did me any harm but DST is a constant menace, adding complexity everywhere.

hnuser123456 | 5 hours ago

This essentially means being less anal about ensuring the earth has the exact same clock time at the exact same earth-sun-relative rotational position. Turns out the earth spins up and slows down semi-randomly with a magnitude big enough to require positive or negative leap seconds every few years, and it's just not worth the effort. Leap minutes might only be needed around every 100 years, but that would still be annoying, so they dropped all the way to leap hours, probably not needed for thousands of years. As long as the sun rises in the morning and sets in the afternoon, that saves on a lot of frequent minor adjustments. Timezones are already an hour wide anyways, and the sun isn't in the same spot when you're on the western vs eastern edges.

Sure, you could also run a relativistic simulation of the solar system, galaxy, and cosmos to establish a more monotonic clock and calendar independent of imperfect orbital parameters, but that's a bit much for discerning whether or not it's lunchtime.

wahern | 4 hours ago

> Sure, you could also run a relativistic simulation of the solar system

Barycentric Coordinate Time: https://en.wikipedia.org/wiki/Barycentric_Coordinate_Time

dist-epoch | 3 hours ago

in 100 years the Sun will be inside the Dyson sphere, so there will be no need for further solar time adjustment

layer8 | 5 hours ago

…the next which is expected in roughly a 1000 years: https://www.ucolick.org/~sla/leapsecs/futuredelt.svg

throw0101c | 4 hours ago

> …the next which is expected in roughly a 1000 years: https://www.ucolick.org/~sla/leapsecs/futuredelt.svg

Which doesn't seem like that is soon, but time/calendar issues can creep up and then it's a big hullabaloo:

* https://en.wikipedia.org/wiki/Gregorian_calendar

layer8 | 4 hours ago

It can be handled like DST changes and/or changes in time zone rules. Software based on the tz database should already be able to handle it.

throw0101c | 4 hours ago

> The replacement will not be leap minutes but leap hours.

People have a hard time with leap years, which happen regularly every four years, so I'm curious to know how well a "one-off" event at a basically random time in the future will work.

ameliaquining | 3 hours ago

The actual rationale here is that it's not worth trying to figure out whether a hypothetical leap hour in a thousand years would be worth it, or how to pull it off if so, because no advance preparation for that scenario that we can do today has enough value to outweigh our ignorance of what the world will look like then. If they decide not to do it, they can just change the rules again; there'll be plenty of advance notice.

frangonf | 5 hours ago

Goodbye sundial welcome cesium clock. Astrology app devs: remember to carry the drift in Temporal for the Ascendant, specially around 2267 you might get your love and money life predictions messed up.

basilikum | 4 hours ago

They don't care that the dates of the astrological signs have shifted and assign zodiac signs to you that have nothing to do with the constellation of stars at your birth, so I have a feeling they won't care about that either.

nxobject | 3 hours ago

Having heard that neutrinos explained the scientific basis of zodiac signs on personality, I'd hope that they'd be more busy trying to set up their underground neutrino detectors /s.

hnuser123456 | 5 hours ago

A practical solution. As long as we can keep 12:00 near high noon and 00:00 near "high midnight(?)", that should be good enough.

vikingerik | 3 hours ago

We don't even keep very close to that as it is. Between daylight summer time changes and some time zones already being very far off from geography, some places like western Spain or China are already as much as 3 hours off from actual solar time.

Vvector | 2 hours ago

Solar noon already varies by up to 30 minutes throughout the year, due to axis tilt and elliptical orbit.

BoppreH | 5 hours ago

Context: BIPM is responsible for the UTC time standard, and in this document they decide to stop adding (or removing) leap seconds, starting on 20th of May 2027 and lasting for the foreseeable future (until one leap hour is needed, but even then it's unclear if they'll do something). Together with the decision to not add a leap second in December, the 27 leap seconds that have been added so far should be the only ones, ever.

The page lists several good reasons for this, including:

- It's a common source of bugs.

- Solar time is not that important in a world of coarse timezones.

- IoT and anything that cannot receive time updates have trouble with leap seconds.

- Negative leap seconds have never occurred before, but might occur in the future, and almost no software has tested this case.

I'd also add:

- Unix timestamps are actually defined as "seconds since epoch minus however many leap seconds have happened". It's a hack to keep code that assumes "86400 seconds in a day" from breaking. It means that during a leap second the Unix timestamp goes back and repeats a previous value, making them ambiguous and non-monotonic.

- Leap second unpredictability can make it impossible to calculate how many seconds are between two UTC dates or Unix timestamps, for example the countdown to the year 2038 bug.

- The proper ISO8601 formatting of leap seconds ("23:59:60") is widely unsupported, breaking parsers, along with the assumption of how many seconds are in a minute, hour, or day.

---

EDIT: I've emailed hn@ycombinator.com to change the title. It's avoiding editorialization, but I think it's also preventing the post from getting the attention it deserves.

I'm booking a yearly one-second-long holiday on my calendar, to celebrate all the headaches this will save me. Happy end of leap seconds!

layer8 | 5 hours ago

> - Leap seconds make predicting the clock time of timestamps in the future impossible.

I don’t see that reason listed on the page, and future wall-clock times remain unpredictable due to changes in time zone rules.

What will become predictable is the relationship between posix time and elapsed time (in the sense of TAI), at least within the next few hundred years.

BoppreH | 5 hours ago

Good, point, I've reworded that bit.

likpok | 5 hours ago

> @dan: can we rename this to "BIPM decides to stop adding leap seconds to UTC" or something similar? This title is really downplaying the situation, I think readers over here care a lot about this.

@-tags like this don't do anything, you're better off sending an email. I think hn@ycombinator.com is the address.

BoppreH | 5 hours ago

I'm well aware that HN doesn't have @ tags, but I would be surprised if dan doesn't have something listening for this specific string. And not a big enough deal to warrant an email in my opinion, but you're free to send one.

layer8 | 4 hours ago

Dan has confirmed in the past that he doesn’t, and that one should send an email. (Also, usually people use @dang and not @dan.)

BoppreH | 4 hours ago

Oops^2. I sent the email, thanks.

throw0101c | 4 hours ago

> - Negative leap seconds have never occurred before, but might occur in the future, and almost no software has tested this case.

FreeBSD tests stuff like this for the code that they take care of:

* https://lists.freebsd.org/pipermail/freebsd-stable/2020-Nove...

Third-party stuff (like from Ports) is another question.

skywhopper | an hour ago

“Stuff FreeBSD does” falls pretty neatly into the “almost no software” category, to be fair.

[OP] gliffie | 4 hours ago

Thank you for providing context for other readers. I was unsure what do to with the title, as my experience is that editorialized titles are always eventually changed to the original title. The "actual" title here is "Resolution 5 (2026)", but I decided to go with the much more specific subheading "On the technical actions needed to ensure the continuity of UTC". Curiously, "On" was removed on submission.

BoppreH | 4 hours ago

My first interpretation of the title was that UTC was in danger of something that needed fixing. It didn't occur to me that "continuity" meant in the mathematical sense. But thanks for bringing this to our general attention! It's great news.

On a side note, I really like how the site formatted the reasoning. I'll be copying it to my technical writing.

wodenokoto | an hour ago

Is my understanding correct that they maintain a time called UT1, which is basically UTC if it continued to have leap seconds?

wello | an hour ago

In simple terms UT1 is the time if we let seconds be defined by the earth's rotation. UTC was kept in sync with this rotation by introducing leap seconds, while still adhering to the stable ticking of TAI (cesium clocks).

From now on UTC will in practice be TAI but with a constant offset (=all previous leap seconds).

creatonez | an hour ago

Any prospect for a leap hour is toast by the time we need it. Over a thousand years of ossification will mean our only option is to not care about aligning clock time to the sun. So it's kinda a joke to even talk about leap hours. I'm shocked they're even mentioning such an idea, they should have declared it as a non-solution.

wello | an hour ago

The resolution doesn't actually mention leap hours, just that the delta is allowed to grow up to one hour. What should happen then is to be decided by future generations.
> our only option is to not care about aligning clock time to the sun

No, an easy option is to simply shift every timezone by an hour and keep UTC intact. A ton of places already do that twice a year for daylight savings.

I never understood why we mess with UTC so much when we already have another widely used mechanism to keep the sun and clocks aligned.

neutrinobro | 4 hours ago

Yay! No more leap seconds to manage! This is going to make my life much easier.

Edit...scratch that, now I have to keep track of UT1-UTC as a separately continuously varying parameter provided by IERS instead of tzdata

ls65536 | 3 hours ago

It shifts the problem elsewhere, though as you suggest it's sometimes still the same people having to deal with it! For example, anyone relying on celestial navigation who had until now been satisfied with up to 1 second of time error is going to need to start keeping track of UT1-UTC before it starts exceeding those old bounds. This will be possibly within a few years, whenever the next leap second would have been inserted/removed.

Vvector | 3 hours ago

A chronometer off by one second gives an approximate error of 0.25 nautical miles at the equator. Meanwhile the general precision of celestial navigation is 1-5 nautical miles. If you need high level accurate positioning, celestial navigation is already not an option.

In the open seas, celestial navigation is more than accurate enough. Once you are closer to shore, where the greater precision is needed, better options exists. Lights, ranges, radar, visual, etc.

ameliaquining | 3 hours ago

What do you work on that requires you to care about UT1? Something astronomy-related?

moezd | 3 hours ago

After a day of reading AI slop, reading what's essentially an MUN-style resolution, 100% human made, is like eye candy. Thank you for sharing this.

amelius | an hour ago

AI has become real, and we're cancelling the leap seconds?

This is unfair.

If AI wants to be a coder then it has to do leap seconds. In fact, let's give it leap minutes and leap hours too.