Personally, a leap hour seems about the right level of granularity, but I suppose an approximately once per century leap minute would be ok. But leap seconds are a waste of time.<p>If ignored since their introduction in 1972, official time would be out of sync with the Earth's rotation by 26 seconds. There's been a lot of running around and gnashing of teeth to correct 1.845668179868485e-7 error that isn't even an error most of the time. The 26 seconds of error fleshes out as 7.389 meters at the equator when using celestial navigation and for anything that accurate we use radio signals not a sextant.<p>The Earth's rotation and revolution are useful abstractions at a certain level of granularity. But the reason we have atomic clocks is because those abstractions break down when we need precise measurements of reality. Reality is real because the rotation and revolution of the Earth are not cosmological constants. Leap seconds are an expression of the superstition that humans control the arrow of time: as if one thing happening after another would cease to be the case without them.
A small point I missed that is covered in this article: leap seconds aren't added just because of the slowing of the Earth's rotation (as I've always explained it to others), but because atomic time is a few milliseconds per day faster than Earth time in general.<p>Not sure how I missed that in previous discussions of leap seconds, but now I can comfortably spend my leap second in 2016 basking in this knowledge.
Leap seconds have no business being tracked in the core logic of our programs.<p>Just like timezones and calendar changes, leap seconds are a display issue. While obviously very important in some circumstances there's no need to keep track of them through absolutely all of our code.<p>If the way you measure time takes leap seconds into account, you have no way of saying "exactly X Système international seconds from now". This is a big deal.
Question for the experts. Say I'm writing a bunch of code for date/time stuff in JavaScript, using the built-in `Date` API. Is this something I need to worry about? I've read countless "falsehoods programmers believe about time" blog posts but they tend to not explain the <i>why</i> of it.
You know, if I had to pick a year to have one extra second of, 2016 would be pretty much be last on the list.<p>Everybody brace yourselves for that second, lest another cool person die! :P
When I was a young ham radio operator, I would listen to WWV often, both for time and propagation. I ordered a publication <a href="http://tf.nist.gov/general/pdf/1788.pdf" rel="nofollow">http://tf.nist.gov/general/pdf/1788.pdf</a> which has just about my favorite title for an article <i>Dating of Events in the Vicinity of Leap Seconds</i>. More modern material is at <a href="https://www.nist.gov/pml/time-and-frequency-division/leap-seconds-faqs" rel="nofollow">https://www.nist.gov/pml/time-and-frequency-division/leap-se...</a>.<p>A good resource for red hat linux is <a href="https://access.redhat.com/articles/15145" rel="nofollow">https://access.redhat.com/articles/15145</a>. And another resource is <a href="https://ics-cert.us-cert.gov/sites/default/files/documents/Best_Practices_for_Leap_Second_Event_Occurring_on_31_December_2016_S508C.pdf" rel="nofollow">https://ics-cert.us-cert.gov/sites/default/files/documents/B...</a>
Good reminder to use Google's public ntp servers, which perform leap-second smearing[1]. This is the only sensical way to handle this without strange edge cases in every-day software.<p>1. <a href="https://developers.google.com/time/" rel="nofollow">https://developers.google.com/time/</a>
One second!<p>In real terms, does it really count?<p>A few months back, a friend of mine was so happy when she got on a scale and found that she's lost one pound. One pound!