I just want to see it. Just once. I want to watch that earthquake ripple through all of global electronic timekeeping. I want to see which organisations make it to January morning with nothing on fire.
Leap seconds bridge the gap between two clocks of wildly differing precision: caesium fountains and the spinning Earth in space. The time it takes for the Sun to return to the same spot in the sky, even smoothing out seasonal variations, is not precisely twenty-four hours, zero minutes and zero SI seconds. It varies. UT1 is derived from the spinning rock. If the (mean) Sun is directly overhead at the Greenwich Meridian, it's 12:00:00 by definition. This is social time. It's warm and fuzzy. It's the clock we actually care about. TAI is derived from atomic clocks which live inside buildings and don't care about where the Sun is or what. TAI is abstract and arbitrary and artificial and better. UT1 is running about 37 seconds behind than TAI right now and as time goes on and the Earth's rotation keeps slowing that gap is only going to get larger. UTC is a middle ground which ticks at precisely the same predictable rate as TAI — good for computers — but also stays synchronised to within 0.9 seconds of UT1 by occasionally inserting an SI leap second. This makes UTC good for civil timekeeping too. Ish.
-->You know what a leap second is. The short version is that planet Earth is a terrible clock.
I love leap seconds. I love the unsolvable problem which birthed leap seconds, I love the technical challenge of implementing leap seconds, I love that they are weird and delightful and that they solve a problem, and I love that this solution is hugely irritating to a huge number of people who have more investment in and knowledge of time measurement than I do. It is a huge hassle to deal with leap seconds and I love that there is no universal agreement on how to deal with them. What should Unix time, for example, do during a leap second? Unix time is a simple number. There's no way to express 23:59:60. Should it stall for a second? Should it overrun for a second and then instantaneously backtrack and repeat time? Should it just blank out and return NaN
? These days it seems like a popular choice is the Google-style 24-hour linear smear from noon to noon UTC. That is: a full day of slightly longer-than-normal "seconds". Should a clock do that? Is a clock allowed to do that? I love that. I think it's highly amusing.
But they're talking about giving up on leap seconds entirely by 2035. Rather than grapple with the organisational challenge and the engineering challenge, the suggestion is to just increase the allowable absolute gap between UT1 and UTC, from 0.9 seconds to something larger. And I'd be a little sad if we did that.
For one thing, it feels like a confession of defeat. Like, come on. Weren't you having fun? You've reached a situation where campaigning for the whole world to change the way it measures time is simpler than fixing your code?
Well, maybe it is simpler. I haven't seen your code.
For another thing, this is not something we can run away from. Sure, leap seconds flummox our software now, but they are at least relatively common. Up until the recent dry spell they were happening more frequently than leap years and over the longer term, as the Earth's rotation gradually slows, they're only going to become more frequent. The suggested alternate approach is to just let the gap between UTC and UT1 grow for 50 to 100 years until it's something on the order of 60 seconds, and then introduce an entire leap minute. Because there's nothing computer programmers handle better than special cases which only occur every hundred years or so. How in the world could this be an improvement? Leap seconds are announced six months in advance. They have been a fact of life for over fifty years. How much advance warning will the leap minute require, or receive? Five years? How much special one-off work will it take to handle? Is there a single system currently in existence which can handle a leap minute?
This just sets us all up for a mostly arbitrary Millennium Bug-scale operation. It's going to be unrewarding and supremely unpopular and everybody's going to hate it at least sixty times as much as they hate leap seconds now. This, I feel, is the wrong approach. If something is difficult, you do it more often.
Also, it's not lost on me that a solution of "Wait 50+ years and then do something" is equivalent to "Let's ignore the problem until we're all dead".
But finally and most importantly, abolishing leap seconds would permanently close the door on any possibility of a negative leap second.
Every leap second to date has been positive. The Earth spins a little slowly, just as a matter of course. In fact, there's a case to be made that the SI second was defined too short. And over the long term, its spin is only going to continue to slow. However, there are short-term fluctuations in the Earth's angular velocity, both increases and decreases. It's not fully understood what causes these, but since 2018 or so the Earth has been spinning faster than usual. The gap between UT1 and UTC, known as DUT1, hasn't been steadily trending negative. There hasn't been a need to introduce a positive leap second every year and a half or so. In fact, since 2020, DUT1 has been gradually trending upwards. If it continues to trend upwards in the same way for another decade or two, it is not completely impossible that the offset could reach a point where the IERS could credibly want to use a negative leap second to bring the offset back down towards 0 seconds.
Would that ever happen?
Under the current system, only full single SI seconds are inserted (or, potentially, removed), and only at the end of June and at the end of December. But before 1972 UTC and TAI were kept in much closer synchronisation, by adding or removing fractions of seconds, and by doing so far more frequently, at the end of any month. On two occasions, time has been removed:
(No, I'm not advocating returning to this state of affairs.)
So there is a smidgen of precedent. But it has been a long, long time. Negative leap seconds are possible, but they have never happened, and until recent years it seemed like they would never happen. And I feel extremely confident in saying that, short of an apocalyptic event, a negative leap minute could never, ever happen.
I feel that the IERS would be under tremendous pressure not to announce a negative leap second, because, well, look at how fiercely actual engineers are currently fighting positive leap seconds, which have occurred dozens of times over the past half-century, and are, relatively speaking, incredibly well-understood and extremely well-supported.
The intention is to keep DUT1 between -0.9s and +0.9s. Typical positive leap seconds in the past have occurred at DUT1 offsets between about -0.4 and -0.6 seconds — sometimes earlier, between -0.2 and -0.4 seconds, when the Earth's rotation was relatively slow, with the earliest at -0.2160228 seconds. If DUT1 were to trend upwards to +0.2160228s, I feel that the IERS would probably continue to wait. I wouldn't be surprised if they waited until +0.6s. I wouldn't be surprised it they were pressured to wait until +0.8s, or until the actual abolition kicks in, whenever that is eventually scheduled. It'll be pretty imminent, I'd imagine.
But I also don't know how much of that theoretical pressure the IERS would theoretically care about.
The point is:
No one, or almost no one, is ready for a negative leap second. It has always been a thing which can, in theory, happen. Up until the past few years, though, it looked impossible. And now it might, might just happen. And I need to see it.
Dang.
Well, there's always next year.
Discussion (19)
2024-07-02 22:50:48 by qntm:
2024-07-03 01:49:19 by DSimon:
2024-07-03 02:01:43 by Max:
2024-07-03 04:16:36 by ChrysAlice:
2024-07-03 11:11:01 by qntm:
2024-07-03 14:06:05 by Max:
2024-07-03 14:06:45 by Andrew:
2024-07-03 14:10:35 by Max:
2024-07-03 18:22:21 by Kevin:
2024-07-03 18:56:36 by Solis:
2024-07-03 19:14:03 by Nim:
2024-07-03 23:17:44 by qntm:
2024-07-03 23:49:55 by Solis:
2024-07-04 05:38:20 by Quilnux:
2024-07-04 06:42:46 by Wei:
2024-07-04 15:30:11 by DSimon:
2024-07-04 18:32:28 by Solis:
2024-07-16 20:36:48 by FormerlyFormal:
2024-07-26 07:59:16 by Sundiata: