

UTC with Smoothed Leap Seconds (2011) - acqq
https://www.cl.cam.ac.uk/~mgk25/time/utc-sls/

======
acqq
This is much more recent than
[https://news.ycombinator.com/item?id=9017761](https://news.ycombinator.com/item?id=9017761)
( TC, TAI, and Unix time (1997) by djb ) and more convenient for most of
common use cases.

In short, UTC with leap seconds is no problem at all, as long as exactly 86400
seconds exist in every day (1) for the common calendar calculations and the
leap second is "smoothed" by the computer time synchronization code. Google
already used this approach (and blogged about it while not crediting Kuhn, as
far as I understood).

The common operating systems should just use UTC-SLS for the calendar-related
time. Who needs the "real honest atomic seconds" already uses TAI.

More details also here:

[https://news.ycombinator.com/item?id=9018367](https://news.ycombinator.com/item?id=9018367)

\--

1) POSIX already specifies that every day has exactly 86400 seconds for
"Seconds Since the Epoch" and the current code relies on that:

[http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_...](http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap04.html#tag_04_15)

~~~
MichaelGG
And still no really good justification why general society should have to pay
the price of the needs of some specialist systems and astronomers. I'm
disappointed that civil time decided that UTC instead of TAI made sense. The
least we can do is fix UTC and let specialists deal with it.

And yes, while repeating a second at the end of the day is a terrible
approach, it's not a worse sin than leap seconds in the first place. I do hope
that slowing down the clock is generally picked up and accepted.

~~~
acqq
No, the leap second is not the problem at all. UTC has sense since the
calendar _day_ is more important for everybody than some ideas of some
confused programmers. Who needs "just pure atomic seconds" already has TAI.

All the computer clocks are inaccurate and synchronize sometimes, often more
than one second, and nobody worries about that or maintains any tables when
his computer adjusted (try yourself, you'd soon see why you shouldn't care
about the leap second). Likewise nobody would worry about the leap second were
there not too much confusion among the programmers, enough to have the NTP
implementation as it was and the people who used djb's or the code from Olsen
tz to "account" for the leap second all the time for the calculations that
didn't need that.

For some examples of confusion see:

[http://stackoverflow.com/questions/7552104/is-a-day-
always-8...](http://stackoverflow.com/questions/7552104/is-a-day-
always-86-400-epoch-seconds-long)

The least voted comment is right: "in POSIX, a day is exactly 86400 seconds by
definition" (when we ignore the daylight saving time changes of the wall
clocks and computers of _the whole hour_ , of course).

Linus agrees it's a good decision:

[http://www.wired.com/2015/01/torvalds_leapsecond/](http://www.wired.com/2015/01/torvalds_leapsecond/)

"the POSIX approach puts the pain where it belongs, and hides it from the vast
majority of cases that really don’t care. I think it was the right decision."

"The people and computers who really care about “atomic” time tend to be
astronomers. For the rest of us – both people and computers – we’re probably
better off taking the POSIX approach to it, and just say “who cares”, with a
few unlucky people worrying about bugs happening because of the perversities
of timekeeping."

