[HN Gopher] It's time to leave the leap second in the past
       ___________________________________________________________________
        
       It's time to leave the leap second in the past
        
       Author : mikece
       Score  : 285 points
       Date   : 2022-07-25 16:08 UTC (6 hours ago)
        
 (HTM) web link (engineering.fb.com)
 (TXT) w3m dump (engineering.fb.com)
        
       | treesknees wrote:
       | >remain at the current level of 27, which we believe will be
       | enough for the next millennium.
       | 
       | I would have loved to read more justification about _why_ Meta
       | thinks we no longer need the leap second beyond calling it a
       | community push. They did a great job of complaining about how
       | hard it is to solve from a technical perspective, and then
       | explained how they solved it. Is the only problem really that
       | Meta doesn't know how to test a negative leap second?
        
         | wutbrodo wrote:
         | They explain this at the top of the article:
         | 
         | > This periodic adjustment mainly benefits scientists and
         | astronomers as it allows them to observe celestial bodies using
         | UTC for most purposes. If there were no UTC correction, then
         | adjustments would have to be made to the legacy equipment and
         | software that synchronize to UTC for astronomical observations.
         | 
         | > While the leap second might have been an acceptable solution
         | in 1972, when it made both the scientific community and the
         | telecom industry happy, these days UTC is equally bad for both
         | digital applications and scientists, who often choose TAI or
         | UT1 instead.
         | 
         | The claim is that the benefits accrue primarily to a community
         | whose relative importance is minuscule compared to the broader
         | software world in 2022. The tradeoff was made in 1972, when
         | astronomers etc represented a vastly larger proportion of
         | software.
        
           | wongarsu wrote:
           | I can't imagine people who need accurate timekeeping (like
           | scientists, astronomers and the telecom industry) preferring
           | UTC over TAI. They do however prefer UTC over UT1. UTC was a
           | reasonable compromise in the sense that it's almost TAI, but
           | is close enough to UT1 that you can get all countries on
           | board without much effort. Imagine getting the whole world on
           | board to accept a mysterious device that counts electron
           | transitions, without giving some kind of reassurance that it
           | won't deviate in any relevant way from the timekeeping system
           | they are used to.
        
           | jrichardshaw wrote:
           | Actual research astronomer here, and as a (radio) astronomer
           | I would love to get rid of leap seconds. Assuming that UTC =
           | UT1 (the time measure based on Earth rotation) is not
           | accurate enough for most calculation such that you already
           | need to use UT1 tables/forecasts and leap second tables in
           | your ephemeris calculations so there isn't really much
           | benefit in trying to keep UTC close to UT1. And the reality
           | is that for us they actually make things worse: we stop data
           | acquisition at the telescope over the leap second period
           | because we timestamp our data in UTC dealing with the
           | changing interval would be a pain.
           | 
           | There are some good arguments for keeping leap seconds, but I
           | don't think research astronomy is really one (it might be
           | more useful for amateurs), particularly on ~100 year
           | timescales where you don't expect things to slip that much. I
           | think this sentiment is shared by most of my peers,
           | particularly those who actually have to implement data
           | acquisition and analysis pipelines!
        
           | whimsicalism wrote:
           | Why can't large tech companies that need synchronization
           | similarly switch to an alternative time without leap seconds?
        
             | seoaeu wrote:
             | Because time in the real world uses leap seconds. The time
             | businesses open and close. The times reported in news
             | articles. And so on. What facebook wants is for all of them
             | to stop using leap seconds so facebook's infrastructure is
             | simpler
        
               | umanwizard wrote:
               | Times reported in newspapers are not granular enough that
               | it's even possible to notice whether leap seconds are
               | used.
        
               | gowld wrote:
               | It's not just Facebook. A large community doesn't want
               | them.
               | 
               | https://www.cl.cam.ac.uk/~mgk25/time/leap/
               | 
               | Time in the real world can use leap hours, the next of
               | which will be in approximately 3000 years.
        
               | yebyen wrote:
               | The article you linked seems to be arguing pretty
               | strongly against leap hours. I'm not sure we could solve
               | all those problems even in 3000 years. Can we compromise
               | and use leap minutes? That way the problem is a bit more
               | immediate, in 50 years we're sure to have solved it; or
               | we'll all be dead and it will be on someone else!
        
               | umanwizard wrote:
               | Instead of leap hours we could just permanently abandon
               | leap anything, and state that the offset between UTC and
               | TAI is fixed at 27 seconds from now on, forever. Every
               | few thousand years, when this new UTC has drifted enough
               | from solar time on the prime meridian for people to start
               | noticing and caring, countries can decide to simply
               | change their offset from UTC, which will just be a normal
               | update in the time zone database that doesn't need to be
               | coordinated with anyone else, i.e. something that already
               | happens quite regularly.
               | 
               | This is all quite hypothetical as it's hard to predict
               | whether anything like our current technological
               | civilization will exist thousands of years from now, but
               | even if it does, a simple mechanism exists to avoid
               | problems (just have each jurisdiction change their local
               | time when they decide they want to).
               | 
               | I can't see any downsides for literally anyone from this
               | proposal, other than the insignificant downside to the
               | British that they will lose the prestige of being the
               | place that global standard time is based on.
        
             | bbarnett wrote:
             | Worst part is, the arguments are a bit silly.
             | 
             | Time may change forwards and backwards, because my computer
             | clock may be fast or slow. The same logic to correct for
             | leap seconds, can be used if my computer is 2 sec fast.
             | 
             | And your code had better handle it, and the os, libraries,
             | it really is only hard ), if you have to support 1000s of
             | novice devs.
        
               | shadowgovt wrote:
               | And FWIW, every major company _does_ have to support a
               | thousand novice devs, every year, over and over, forever.
               | 
               | Honestly, this issue screams education problem. "Time is
               | a mess" should be taught alongside buffer overflow
               | attacks and networking theory (in fact, networking theory
               | is a _great_ place to teach  "time is a mess," because
               | you can roll it in alongside ideas like "simultaneous
               | action is a lie" and "clocks are always wrong anyway").
        
             | adrian_b wrote:
             | Because they are lazy and are not aware of the prior work.
             | 
             | Already decades ago many have proposed to use only TAI
             | internally in computers, instead of UTC, which is not a
             | time.
             | 
             | UTC should have always been used only to compute the local
             | times, together with the time zones, only for human
             | interfaces.
             | 
             | There have been for decades libraries for using TAI instead
             | of UTC, and even versions of Linux or *BSD kernels patched
             | to do time keeping in TAI, not in UTC, eliminating all
             | problems with the leap seconds.
             | 
             | Unfortunately the use of TAI has remained a niche, but that
             | was the right solution.
        
           | treesknees wrote:
           | I can see that, but I disagree that it's enough of an
           | explanation. The blog specifically gives an example of the
           | Earth's angular velocity changing with the melting of ice
           | caps. They even threw in a cute animation of an ice skater to
           | explain it. Last I checked, we're in the midsts of global
           | climate change which is rapidly melting our ice and raising
           | sea levels. I'm supposed to take Meta's word that we'll never
           | need another leap second then? Why is that the case?
           | Instinctually it makes sense to me to have a clock that
           | follows the Earth's rotation. Why does Meta believe this is
           | no longer the case? The only justification I saw was "it's
           | hard" followed by their explanation of how they've solved it
           | already. So what is the problem that's being solved by not
           | counting leap seconds?
        
             | shadowgovt wrote:
             | So, time is a human construct and Earth doesn't care how we
             | measure it.
             | 
             | It's not that we'll never need another leap second; we
             | could add ten, negative ten, or zero in the next 25 years
             | and Earth won't care. Who will care are humans, who may get
             | a bit annoyed when the sun starts setting in equatorial
             | latitudes at 3PM.
        
               | mjamesaustin wrote:
               | Based upon the historical trajectory, it would take
               | around 6,666 years for time to be offset by 1 hour.
        
           | crote wrote:
           | The thing is, similar reasoning can also be used to promote
           | getting rid of leap years. Heck, maybe just switch to 12
           | months of 30 days while we are at it.
           | 
           | If you want to use real-world time, you have to make sure it
           | stays in sync with the real world. Switching to something
           | which is close-but-not-quite-correct will cause even more
           | issues than we are currently having with leap seconds. Can't
           | deal with that? Well, just use the Unix timestamp like the
           | rest of us?
        
             | btilly wrote:
             | The issue is that all timekeeping is going to be an
             | approximation of our messy Solar System. The only question
             | is, "How accurate is accurate enough?"
             | 
             | Currently our calendar goes off by one day in 3236 years.
             | If the history is calendars is indicative, in about 10,000
             | more years we may change our calendar. (Or, being multi-
             | planetary by then, maybe we'll consider it a quaint relic
             | of our origin.)
             | 
             | Our clocks predict astronomical time of day to less than a
             | minute for a human lifetime. And both DST and timezones
             | demonstrate that we're happy to live with the clock and Sun
             | disagreeing by an hour or more.
             | 
             | My position is that both are currently good enough for the
             | next couple of thousand years. And we can let our distant
             | descendants sort it out when the time comes.
        
               | ilammy wrote:
               | > _(Or, being multi-planetary by then, maybe we 'll
               | consider it a quaint relic of our origin.)_
               | 
               | It's more likely that every planet will have its own
               | calendar and you'd have to do the conversions and
               | translations. That's what scientists do with Mars time.
               | Thanks to relativity, time at point A is not the same as
               | time at point B, and whether they stay in sync for you
               | depends on _how_ you get from A to B.
        
             | dylan604 wrote:
             | Yeah, if it wasn't for that pesky requirement to keep in
             | sync with the wall clock, my life would be so so so much
             | easier not having to deal with drop frame timecode. The
             | video industry isn't exactly small, and nobody has just up
             | and decided "meh, it's too hard, so we're going to push the
             | everyone else to do what we want". We all put on our big
             | boy&girl pants and do the work.
        
               | zerocrates wrote:
               | Of course, drop-frame timecode itself imperfectly
               | compensates for the fractional framerate, and also as a
               | result of the math not really working out there isn't a
               | drop-frame standard for 23.976 fps at all, so _sometimes_
               | the industry just throws up its hands and says  "meh,
               | it's too hard."
        
               | dylan604 wrote:
               | It's not that they don't have DF for 23.976 because it's
               | hard, they don't because it wasn't needed. A 23.976
               | framerate was never broadcasted as it wasn't part of the
               | NTSC standard. In fact, rarely did anyone actually edit
               | at 23.976 unless it was going back to film. They cut the
               | telecined film as 29.97 video with no regard to A-frames
               | or any other methods that would enable the edit to
               | cleanly go back to source frame rate. They so didn't care
               | that some times the film cadence changes on every single
               | edit. Why? Because nobody needed it nor could they
               | possibly imagine the time of the internet and digital
               | streaming that could do any frame rate to even bother
               | wasting time trying to do it "right".
        
               | zerocrates wrote:
               | Well it _is_ in the standards now and you still see just
               | non-drop timecode being used on it, with the resulting
               | noticeable skew from wall time as the duration gets up
               | there.
        
               | dylan604 wrote:
               | Again, it is _not_ a broadcast standard, at least in the
               | US. Pretty sure it 's not in non-US markets either. Sure,
               | it's a format that modern decoders and monitors can
               | handle, but it's just not a format that people are
               | concerned about it matching wall clock.
        
               | zerocrates wrote:
               | 23.976 is in ATSC I'm pretty sure, but I take your point
               | that in practice it's not used for broadcast.
        
               | makeitdouble wrote:
               | The video and music industry has been screwing a lot of
               | our digital lives with mandatory encryption and anti
               | hacking/reverse engineering requirements just to sustain
               | some of their business models. The abstraction layer is
               | different than this, but god the irony.
        
         | ForHackernews wrote:
         | I'd wager Facebook will not survive the next 50 years, so they
         | probably don't need to worry about the next millennium.
        
       | klyrs wrote:
       | Weird, I came to a different conclusion after reading the
       | article. There's already a graceful solution to non-monotonic
       | time, which mitigates most of the problems: smear, don't leap.
       | Only, it's not a universal solution, so various systems are out
       | of sync during the smear. Solution: petition for a standardized
       | smearing strategy. But yeah, leave "leap" seconds in the past.
       | 
       | And, maybe, don't run sub-second benchmarks with a wallclock.
        
         | daine wrote:
         | If smearing were adopted as standard, the "seconds," "minutes,"
         | and "hours" appearing in timestamps would no longer correspond
         | to literal seconds minutes, and hours of duration, even in
         | principle. That seems very misleading and bad.
        
         | ncmncm wrote:
         | Smearing is absolutely the worst of all possible choices.
         | Instead of one second, you are out of sync with the whole world
         | for all of 24 hours. And you are fooling with things for the
         | whole period.
         | 
         |  _Of course_ it was Google who picked the worst of all possible
         | choices.
        
           | joshuamorton wrote:
           | But, its practical success does in many ways prove that mild
           | inconsistencies between different time systems are...fine,
           | and so a leap-less approach wouldn't cause any issues.
        
       | [deleted]
        
       | Matthias247 wrote:
       | > As already mentioned, the smearing is a very sensitive moment.
       | If the NTP server is restarted during this period, we will likely
       | end up with either "old" or "new" time, which may propagate to
       | the clients and lead to an outage.
       | 
       | That seems to be a solvable engineering problem. One could make
       | sure the server is up to date on all recent information before
       | taking it back into service. It's a similar problem as making
       | sure that cache servers that have invalidated data don't go back
       | into service before their cache is updated - which is tablestakes
       | for services like CDNs.
       | 
       | I guess the problem here are public servers that can't run
       | software that understands doing that? I see the challenge for
       | those, but maybe something like an improved version of NTP could
       | fix it?
        
       | danielovichdk wrote:
       | "God" how I hate to work with time when programming. It's more
       | difficult than pretty much everything else.
       | 
       | Cache invalidation and naming does not come close imo.
        
       | neuronexmachina wrote:
       | This article mentions some of the others who are part of the
       | effort: https://www.cnet.com/tech/computing/tech-giants-try-
       | banishin...
       | 
       | > Google, Microsoft, Meta and Amazon launched a public effort
       | Monday to scrap the leap second, an occasional extra tick that
       | keeps clocks in sync with the Earth's actual rotation. US and
       | French timekeeping authorities concur.
       | 
       | > ... The tech giants and two key agencies agree that it's time
       | to ditch the leap second. Those are the US National Institute of
       | Standards and Technology (NIST) and its French equivalent, the
       | Bureau International de Poids et Mesures (BIPM).
        
       | tene wrote:
       | If they don't want to bother with leap seconds, why are they even
       | using UTC? Why can't they just use TAI instead?
        
       | Balgair wrote:
       | >Leap second events have caused issues across the industry and
       | continue to present many risks. As an industry, we bump into
       | problems whenever a leap second is introduced. And because it's
       | such a rare event, it devastates the community every time it
       | happens. With a growing demand for clock precision across all
       | industries, the leap second is now causing more damage than good,
       | resulting in disturbances and outages.
       | 
       | Translation: We suck at computers and think you all do too. So
       | let's just bury our head in the sand and make some cash before it
       | all falls down.
       | 
       | I'm being glib, but come on guys. You're trying to tell me that
       | your crummy programming and cash flow is more important than the
       | literal spinning of the Earth.
       | 
       | You can try all you want, but the sun will set when it does, your
       | clock be damned.
       | 
       | I may be a rare person on HN that actually has dealt with these
       | leaps from the 'source'. I used to work for a pico-second
       | accurate timing company and had to go through the microsecond
       | adjustment due to the March 11th, 2011 earthquake in Japan. The
       | company was a backup site for the NIST clocks. I've even worked
       | with _the_ second at NIST. Yes, that little port at about eye
       | level that the whole US uses as it 's second. You can't take
       | things out of the room (like asbestos) and you can only be in
       | there for short periods, it's that sensitive and important.
       | 
       | All that said, the Earth is a really crummy clock! But guess
       | what? You can't fix that. It's mother nature's world and we just
       | live on it.
       | 
       | If FB thinks that trying to get everyone to quite literally 'not
       | look up' is going to work in the long term, they are in for even
       | more headaches than they already have. Many, many industries and
       | sectors must use hyper precise clocks and they must be aligned
       | with the Earth's rotation. If are not, then they will drift
       | psuedo-randomly apart as all clocks do. And then you're screwed
       | when you try to get your own little clock system to talk to other
       | clock systems that have been drifting too. You think you have
       | issues now with imagined negative leap seconds? Wait until you
       | try to define time.
        
       | Ericson2314 wrote:
       | It's not just "legacy astronomical equipment". Humans like me
       | want solar time = UTC + x for sake of e.g. scheduling meetings
       | across time zones.
       | 
       | It's embarrassing they can't figure out how to use the well
       | accepted monotonic time solutions and are pulling this shit
       | instead. Simple embarrassing.
        
       | renewiltord wrote:
       | Is there a single change that can ever be proposed that would be
       | considered worth it? I can only conclude that status quo bias is
       | very strong among people. With this in mind, I can only conclude
       | that Mark Zuckerburg is some kind of organizational genius with
       | both his "move fast and break things" and his "move fast with
       | stable infra" lines.
        
       | BrainVirus wrote:
       | I have a solution that no one will like, but it's probably the
       | least insane one in practice.
       | 
       | 1. We move from using leap seconds to leap minutes.
       | 
       | 2. We move leap minutes to timezone offset, because time zones
       | are already a clusterfuck and you can't make them any worse
       | anyway.
       | 
       | 3. One-time adjustment to all timezones to get the system
       | started.
       | 
       | Result: Z timezone is equivalent to TAI. When you want to account
       | for planet-related BS, you apply a timezone offset.
       | 
       | You can definitely criticize this, but with a caveat: if you
       | believe that Unix timestamp doesn't have leap seconds or that
       | timezones only come in 1-hour increments you clearly have no idea
       | how computer time really works and should probably read up on
       | that first.
        
         | lovecg wrote:
         | But why do we need leap anything at all? Leap years are useful
         | because the calendar drifts quickly (well, over centuries)
         | enough for seasons shifting to become noticeable. Leap seconds
         | correct for a problem that's much slower, with already existing
         | much larger errors (time zones anyone?). It's a science project
         | with no useful application in the real world.
        
         | layer8 wrote:
         | It would probably even be okay to make the corrections only in
         | whole-hour or half-hour steps, to avoid odd timezone offsets.
         | The Brits however won't like losing the 0-offset GMT.
        
           | lucb1e wrote:
           | Maybe it's more acceptable if the public is told they're
           | likely to get it back at some undefined time in the future.
           | (Or is that too soon after they severed EU relations only to
           | immediately try and get those relations back in order?)
        
         | gowld wrote:
         | > if you believe that Unix timestamp doesn't have leap seconds
         | 
         | If you have a source for leap seconds in Unix timestamp, please
         | post a correction to Wikipedia.
         | 
         | https://en.wikipedia.org/wiki/Unix_time
         | 
         | UTC has leap seconds, and so Unix time can be converted to UTC,
         | for the era in which UTC-with-leap-seconds is defined (after
         | ~1972)
        
       | [deleted]
        
       | j0057 wrote:
       | Can we not just fix our systems to run in TAI or GPS time, and
       | convert to UTC (or the user's local timezone) when displaying
       | timestamps, instead of causing civil time to drift off
       | indefinitely? I thought these were the best engineers in the
       | world, go fix the computers then!
        
         | SoftTalker wrote:
         | This is the answer.
         | 
         | Humans want noon to be when the sun is overhead, and midnight
         | to be the middle of the night. Almost nobody cares about sub-
         | second accuracy or monotonic time. Track it that way internally
         | if you like, but humans want time to correlate to what they see
         | out the window.
        
           | Ekaros wrote:
           | It seems there is increasing amount of people who actually
           | want the sun be overhead at 13 and midnight to be at 1... Or
           | even later...
           | 
           | So, if we stop actually caring about normal time, why should
           | we care about leap seconds either...
        
         | ncmncm wrote:
         | That is what everybody ends up doing, in practice.
         | 
         | It is exactly the problem. Why should every software system
         | everywhere have its own complicated, unpredictable, error-prone
         | fudge that benefits literally nobody?
        
       | aubergene wrote:
       | Whoever made that first line chart should have used step
       | interpolation. There is no point in time when none integer
       | amounts of seconds have been added, but it gives the impression
       | it's been smeared over the whole year
        
       | throw0101a wrote:
       | Should we also get rid of leap years because programmers
       | regularly screw those up? :)
        
         | lucb1e wrote:
         | Alternative solution: get rid of the programmers so you can
         | have leap years
        
       | eftychis wrote:
       | It took Facebook/Meta only like ~20 years to figure out they
       | shouldn't rely on time to keep things in sync? /s If you delve in
       | distributed systems, I would be surprised if you never had the
       | case of "hey 1/k of our computers think they are 1-2 hours behind
       | in time. (because of NTP issues)"
       | 
       | You could simply be working on a single computer and have to deal
       | with time issues. (E.g. Local clock resetting to a prior date and
       | system creating files timestamped earlier than older files.)
       | 
       | I think the leap second is the most minor, not even worth
       | mentioning problem. It is actually to our benefit, reminding us
       | that ( _perceived_ ) UTC is not a monotonic measure and computer
       | time altogether is not. Computers nowadays adjust their time
       | ~constantly.
       | 
       | That they have to smear their leap second throughout multiple
       | hours, and that computers having the wrong time leads to an
       | outage (for a less than a second difference) troubles me
       | honestly. What you are telling me is that next leap second we
       | should all pray for Meta's NTP servers not going down???
       | 
       | Also: (if you are an fb engineer) What do you do with negative
       | leap seconds? Speed things up...?
       | (https://www.timeanddate.com/time/negative-leap-second.html) The
       | expectation is for a negative leap second coming up -- as the
       | post does mention.
       | 
       | This is an education problem if you expect that time intervals
       | have to be strictly positive (or jump ahead). TL;DR: systems'
       | should never use the wall clock to compute a time interval even
       | if we get rid of leap seconds.
        
       | gmiller123456 wrote:
       | For systems that leap seconds actually cause problems on, the
       | solution is simply to use International Atomic Time (TAI)
       | internally, and convert it to UTC when you want to display
       | information to a user.
       | 
       | Every time I see ditching leap seconds come up, they never try to
       | explain why TAI won't work for them, leading me to believe they
       | probably just don't know it exists, nor could they even imagine
       | something like it being invented.
        
         | sunshi23 wrote:
         | I need someone to explain to me why International Atomic Time =
         | TAI but not IAT
        
           | gmiller123456 wrote:
           | The actual name is French: temps atomique international. I
           | guess we're lucky at least all of the first letters are the
           | same.
        
           | layer8 wrote:
           | For a similar reason why Universal Coordinated Time = UTC.
        
             | NovemberWhiskey wrote:
             | That one's even odder - that's the compromise between the
             | English version, which would be CUT and the French version
             | which would be TUC ... i.e. none of the above.
        
               | emmelaich wrote:
               | CUT and TUC are probably naughty words in some language.
               | CUT is close the the Dutch _kut_.
        
               | layer8 wrote:
               | TUC is a brand of crackers well-known in France, so maybe
               | that's why they didn't insist on the French version. And
               | CUT obviously didn't make the cut. ;)
        
           | quesera wrote:
           | My favorite example:
           | 
           | The same reason that KFC (Kentucky Fried Chicken) is PFK in
           | Quebec... In French: _Poulet Frit Kentucky_.
           | 
           | Honestly, it feels more natural for adjectives to follow the
           | noun. I think about this a lot when naming variables.
           | 
           | English is a quirky language.
        
             | cwp wrote:
             | The problem with English is that you have to plan out the
             | whole noun phrase in your head before you start talking.
             | Not only do the adjectives have to come first, they have to
             | be in the right order. With Romance languages you can just
             | say the noun and then keep tacking on adjectives as they
             | occur to you.
        
           | ask_b123 wrote:
           | Similar reason as the International Organization for
           | Standardization being _ISO_ and not iOS :)
           | 
           | https://en.wikipedia.org/wiki/International_Organization_for.
           | ..
        
             | jefftk wrote:
             | I've heard quite a lot of Americans calling it the
             | International Standards Organization
        
           | jmole wrote:
           | The same reason the International System of units is referred
           | to as SI, and not IS: the French.
        
         | jmole wrote:
         | Seriously, I was reading this article wondering the same thing.
         | 
         | Nanoseconds since X is a fairly unambiguous reference
         | (relativity aside).
         | 
         | Use this for any kind of timestamp or recordkeeping. Convert to
         | UTC (or EST, CST, etc.) as necessary for reference to the solar
         | day.
         | 
         | The only reason not to do this is because you have a million
         | systems that are already running on UTC, and you don't want to
         | do a massive leap second erasure to get back to TAI.
        
       | edent wrote:
       | I can't quite reconcile the FB attitude of "we only hire the best
       | and brightest after making them demonstrate their technical
       | prowess" vs "computers are a bit hard please can everyone change
       | everything to make it easier?"
       | 
       | Why not just agitate for a move to French Revolutionary Decimal
       | Time as well?
        
         | alecbz wrote:
         | A pretty big part of being good at software is deciding if a
         | problem is worth solving.
        
         | dastbe wrote:
         | This is not a case of "computers are a bit hard", it's a system
         | that we've imposed upon ourselves that has been repeatedly
         | demonstrated to be unsafe. because of this, we've ended up with
         | many (many) solutions baked into software that attempt to
         | abstract away the sharp edges of this problem from individual
         | engineers, which leads to inconsistent assumptions about what
         | you need to consider when writing code.
         | 
         | even with the best and brightest engineers there is a non-
         | trivial probability that someone will make an assumption that
         | is invalid based on their understanding of what can happen (ex.
         | leap seconds never go negative!) or the library their using
         | (this ensures monotonic time!) that could lead to disastrous
         | results. and especially at meta scale, that probability is no
         | longer "will someone make this mistake in our code?" but is
         | "how many times will people make this mistake in our code?", so
         | systemic solutions that eliminate this as a class of problem an
         | individual can create is something we should consider.
        
           | tgv wrote:
           | > could lead to disastrous results
           | 
           | You mean some influencer's timeline could get messed up? The
           | horror!
        
             | dastbe wrote:
             | whether you like it or not, people are using facebook (and
             | google, and amazon, and so on) as critical infrastructure.
             | 
             | there are also all the other companies out there who do not
             | have the platform that meta has that can also hit the same
             | issues. i'm sure some of them have products you wouldn't be
             | so glib about.
        
               | mrguyorama wrote:
               | >whether you like it or not, people are using facebook
               | (and google, and amazon, and so on) as critical
               | infrastructure.
               | 
               | Only facebook here is the one suggesting we should change
               | things, so who is using facebook as critical infra and
               | what is your definition of "critical" here.
        
               | barnabee wrote:
               | Let the infrastructure fail at the next leap second. If
               | it's enough of a problem eventually everyone who can't
               | cope will go out of business.
        
               | [deleted]
        
             | User23 wrote:
             | Reddit was down for almost an hour!
        
           | ble wrote:
           | Is UTC as a system inherently unsafe or does it just expose
           | unwary programmers to bugs, the vast majority of which are
           | somewhere between benign and inconvenient in impact?
        
             | ncmncm wrote:
             | It generates gratuitous, totally unnecessary bugs with
             | impact wholly unpredictable.
        
         | russellbeattie wrote:
         | My exact first thought as well, which I will readily admit
         | comes mostly from my bottomless contempt for the company and
         | its employees. The thing that really needs to be left in the
         | past is Facebook.
        
           | ncmncm wrote:
           | Even Facebook can be right twice a day.
           | 
           | This is one of those cases.
        
       | dexwiz wrote:
       | Fun thought, we have only ever had positive leap seconds so far,
       | due to slowing of the Earth's rotation. However, we could have a
       | negative leap second. The rotation has just been consistently
       | slowing since we started caring. But it could speed up again the
       | future. We can predict rotation speed to a certain degree, but
       | not completely. That is why leap seconds are announced only a few
       | months in advance, instead of years.
       | 
       | https://www.timeanddate.com/time/negative-leap-second.html#:....
        
         | kortex wrote:
         | I don't think we will ever need a negative leap second. We can
         | just wait longer until dispatching the next positive one. The
         | only situation in which we'd need a negative leap second is if
         | Earth's rotation were consistently speeding up over many years.
         | But we can tolerate some wiggle room (as in, several seconds)
         | between UTC and TAI (since it's not in lockstep anyway).
        
           | adrian_b wrote:
           | The problem is that there are hardware devices and software
           | applications, which compute UT1 (the angle of the mean Sun)
           | from UTC and from dUT1 (which are transmitted both on various
           | communication channels, e.g. by radio stations) and all those
           | expect that dUT1 is a number between 0 and 1 seconds.
           | 
           | If dUT1 can become either negative or larger than 1, all such
           | hardware and software must be reviewed and possibly upgraded,
           | to no longer make assumptions about dUT1.
           | 
           | Communication protocols may have to be changed, if there is
           | no way to encode a negative dUT1.
        
             | ncmncm wrote:
             | No. Literally _no one_ uses UTC or leap seconds for that.
             | 
             | The only people who need to pay attention to sun angle are
             | astronomers, and they use their own system based on TAI.
             | 
             | So you are arguing to continue rejiggering a complex and
             | error-prone system that benefits _exactly nobody_.
        
             | kortex wrote:
             | > If dUT1 can become either negative or larger than 1,
             | 
             | Negative values should already be accounted for, afaict.
             | 
             | > UTC is maintained via leap seconds, such that DUT1
             | remains within the range -0.9 s < DUT1 < +0.9 s.
             | 
             | I can't imagine why it would ever be constrained to
             | abs(dut) < 1, as that does not appear to be a hard spec
             | anywhere, it's just the goal. But I could see some really
             | stupid implementations, so maybe.
             | 
             | https://en.m.wikipedia.org/wiki/DUT1
        
           | dexwiz wrote:
           | UTC and TAI are already over 30 seconds apart. So not using a
           | negative leap second to keep them aligned isn't really a
           | valid argument. On a geological scale, Earth's rotation is
           | slowing down, but on a decade scale, it's still pretty
           | chaotic. We could just as easily be having the reverse
           | conversation. When we need a negative leap second, we may
           | need a few in a row. So just waiting for a positive one to
           | cancel them out doesn't really work. Using the logic of it
           | will all eventually be a wash and we shouldn't use them at
           | all is kind of the argument the article is making.
        
       | jefftk wrote:
       | Everyone is treating this as some idiosyncratic proposal of
       | Facebook's, but removing leap seconds is a mainstream position.
       | Representatives of the US, China, France, and a majority of other
       | countries were in favor of this when it was discussed at the 2015
       | ITU meeting [1] though the UK and Russia's were not. This has
       | been under discussion since at least the 2003 ITU meeting in
       | Turin.
       | 
       | [1] https://www.nature.com/articles/nature.2015.18855
        
         | 0xCMP wrote:
         | > "If we have an offset from solar time, it is not extremely
         | important," [...] "We are already shifted by one hour in summer
         | compared to winter time. Are we affected because of that?
         | 
         | > Official time would slowly move out of sync with Earth's
         | rotation, but -- given that it would take thousands of years to
         | accumulate a difference that is greater than the kinds of
         | shifts already caused by changing the clocks backwards and
         | forwards for daylight savings time
         | 
         | I think this argument: that we're syncing to atomic clocks and
         | keeping in sync with the sun isn't so important should have
         | been included in the post. I stand by my earlier comment that
         | it felt like a hack, but aligning with SI unit of time + atomic
         | clocks is, I think, far superior.
        
         | yieldcrv wrote:
         | Facebook should make another trade group so they can post well
         | thought out proposals under that group's name without the ad
         | hominem distractions of being Facebook
         | 
         | Their name, Meta and Zuck's name is too sullied for good faith
         | discussions
        
         | ncmncm wrote:
         | Yes. Leap seconds are just a thoroughly bad idea, from any
         | angle.
         | 
         | Yet, _not nearly_ so bad as Google 's approach: no leap, but a
         | 24-hour smear, during which 24 hours they are out of sync with
         | literally everybody else in the world.
        
           | oittaa wrote:
           | AWS does exactly the same.
           | 
           | > The AWS Management Console and backend systems will NOT
           | implement the leap second. Instead, we will spread the one
           | extra second over a 24-hour period surrounding the leap
           | second by making each second slightly longer.
           | 
           | https://aws.amazon.com/blogs/aws/look-before-you-leap-the-
           | co...
        
             | ncmncm wrote:
             | I.e., be out of sync all day long with literally everybody
             | except Google.
        
               | zsims wrote:
               | At that point, how much of the internet is that?
        
               | ncmncm wrote:
               | Almost everybody.
               | 
               | AWS and Google would like to think the internet is just
               | them, but they are a tiny little bit of it.
        
               | nvr219 wrote:
               | No, you don't understand, Amazon and Google will be
               | right, and everyone else will be out of sync with THEM.
        
           | [deleted]
        
           | mattnewton wrote:
           | Didn't Google change their smear to 24 hours because it was
           | what AWS and some other internet time servers used?
        
             | ncmncm wrote:
             | Yes: which shows that the skew was a problem.
             | 
             | Eliminate UTC leap seconds, and the overwhelmingly worse
             | smear problem vanishes too.
        
           | joerichey wrote:
           | For future leap seconds, Google (including GCP) are planning
           | to use a "standard" smear
           | (https://developers.google.com/time/smear). This is also the
           | same smear used by AWS.
           | 
           | It seems like if the ITU decides to keep the leap second (a
           | bad idea, in my opinion), the large infrastructure providers
           | will just use the same standard smear for their clocks.
        
             | ncmncm wrote:
             | They will be wrong all day long, not just for one second.
             | AWS will be, too, evidently.
             | 
             | Few others will do anything so idiotic.
        
               | staticassertion wrote:
               | What are the practical issues with potentially being
               | wrong for one day by at most one second?
        
               | a9h74j wrote:
               | I assume finance and control systems to start. I might be
               | helpful to have a fallback time-ordering algorithm not
               | dependent upon one monotonic clock, but then you might
               | have a rarely-used fallback to have bugs in, I imagine.
        
               | guipsp wrote:
               | They will be wrong by at most one second. And being wrong
               | doesn't even matter, as long as everyone (or rather, all
               | your servers) agree.
        
               | fanf2 wrote:
               | At most half a second, in the middle of the smear at
               | midnight when the leap second is applied.
               | 
               | The Facebook smear is asymmetrical so it starts off 1
               | second off just after the leap second, and subsequently
               | corrects itself.
               | 
               | [ The reason Google and Amazon use a linear smear is
               | because NTP clients try to measure the rate difference
               | between their local clock and the reference clocks; if
               | that is different every time the NTP client queries its
               | servers, it will have trouble locking on and accurately
               | matching the smear curve. You can mitigate this somewhat
               | by fixing a higher NTP query frequency, but that's a
               | heavy-handed fix for an engineering mistake. ]
        
         | stjohnswarts wrote:
         | As someone who has had to deal with it in embedded, I'm all for
         | removing it and finding a better way.
        
       | 0xCMP wrote:
       | Can't help but agree with 80% of this post but strongly disagree
       | with the solution. This feels like a hack that punts the problems
       | to the future.
       | 
       | UTC has the leap second cause it's not "real time" and so now
       | we're just gonna never sync up UTC to real time at all? How is
       | that the solution? Either we deal with leap seconds or we need to
       | implement something that can't go backwards and properly models
       | time. Leap seconds seem much simpler...
       | 
       | In the end we didn't get rid of SQL cause of SQL Injection. We
       | fixed the frameworks and promoted the solutions. We may simply
       | need to make a push for languages and etc to just properly
       | support time and promote how to do things correctly. It honestly
       | seems easier.
        
         | afiori wrote:
         | Just by virtue of living in very irregular timezone (with
         | sometimes DST) wall clock time is often 2-3 hours off solar
         | time.
         | 
         | We could wait enough leap seconds to reach 30 minutes and then
         | have a smaller (or bigger) DST timejump and nobody would
         | notice.
        
         | wyuenho wrote:
         | > This feels like a hack that punts the problems to the future.
         | 
         | We've already done this before, it's called the Gregorian
         | Calendar.
        
         | jasonwatkinspdx wrote:
         | > we need to implement something that can't go backwards and
         | properly models time
         | 
         | There simply is no definition of solar time that can obey this
         | constraint long term, because the rotation of the earth varies,
         | and varies over time in ways we have a limited ability to
         | predict. This is the entire crux of the problem.
        
           | ncmncm wrote:
           | It is not the crux of any problem, except for, uniquely,
           | astronomers.
           | 
           | But they have their own solution we need pay exactly zero
           | attention to. Leap seconds in UTC are just as big a nuisance
           | for them as for everyone else. They have TAI, sidereal time,
           | and this dumb bastard UTC with its own hacked up thing that
           | doesn't match their precise alternative.
        
         | hannasanarion wrote:
         | UTC with leap seconds already does this. Leap seconds don't go
         | backwards, they just alter the number of seconds in a minute.
         | When the leap second passes, you have a minute with either 59
         | or 61 seconds in it.
         | 
         | The problem described in the article where "time goes
         | backwaards" only exist when you compare two different time
         | sources, which is always risky, whether a leap second is
         | happening or not.
        
           | ncmncm wrote:
           | False.
           | 
           | UTC is a count of seconds. Conversion to HMS is dictated to
           | fool with the S field, but everybody suffers. The seconds
           | count is supposed to actually skip.
        
             | fanf2 wrote:
             | UTC is not a count of seconds, because the standard
             | representation of UTC does not have enough information to
             | give you the right count. You also need to know the leap
             | second table to convert a pair of UTC times to an accurate
             | interval.
        
         | alerighi wrote:
         | Because we are still correlating time with the rotation of the
         | earth. Time is an absolute measure, a second is defined as a
         | precise amount of time, and you can count the time that one
         | event with that measure. Only historically the second was
         | defined as a fraction of the day, and was correlated to the
         | speed of the rotation of the earth, to this days we have better
         | ways to define it.
         | 
         | Who said that time needs to be in sync with rotation of the
         | earth? Nobody, who cares? It's a so small variation happening
         | in a so long period of time to not be noticeable to any
         | practice use: it's not that we take the sun as a reference of
         | time anymore! We can keep counting time as we want and not be
         | bothered with something not precise as the rotation of the
         | earth. And for the applications that require that sort of
         | precision, and only them, adjust the time accordingly.
         | 
         | I mean, a meter was once defined as the one ten-millionth of
         | the distance from the equator to the North Pole along a great
         | circle. It's not that for this reason if the distance between
         | the North Pole and the equator changes we are all throwing away
         | our meters... it's just that we found a more precise definition
         | of one meter. Same happened with the second (and all the time
         | measures, such as a day): we express them in a new format where
         | it no longer matters what the earth and the sun do.
        
           | ok_dad wrote:
           | > Who said that time needs to be in sync with rotation of the
           | earth? Nobody, who cares?
           | 
           | Humans sleep, usually at night time, and the rotation of the
           | Earth defines night in any location, so regardless of the
           | continual tick of some sort of "universal clock" we need a
           | way to measure daily events that humans can use that rely on
           | the sun going up and down at certain times and thus we need
           | to adjust our local Earth times based on it's rotation.
           | 
           | Maybe we can decouple UTC (or whatever) from local times
           | completely, so then a leap second is just a second we add to
           | or remove from the offset for any given location, but we
           | still need to deal with adjusting local clocks to the
           | rotation of the Earth and it's orbit around our star, the
           | "Sun".
        
         | turminal wrote:
         | > In the end we didn't get rid of SQL cause of SQL Injection.
         | We fixed the frameworks and promoted the solutions.
         | 
         | I mostly agree with you, but this is a bad example. SQL
         | injection is sadly still very far from a solved problem.
        
           | moron4hire wrote:
           | No, SQL injection is a solved problem. There are just poorly
           | trained/idiotic/lazy developers who don't use the solution.
        
             | rwalle wrote:
             | Nah. Show me evidence it is "solved".
        
             | naikrovek wrote:
             | you sound far too confident in that answer for it to be the
             | actual correct answer.
        
               | mrguyorama wrote:
               | >you sound far too confident in that answer for it to be
               | the actual correct answer.
               | 
               | What kind of non-argument is that?
        
               | 988747 wrote:
               | Database drivers for mabny programming languages have
               | something like Java's PreparedStatement which allows you
               | to compile the SQL query together with code, before the
               | application is ran. Whatever input is provided later by
               | the user cannot result in SQL injection, because it is
               | not parsed/compiled at all. So yes, SQL injection is a
               | solved problem, it's up to you whether you know about/use
               | the solution.
        
               | im3w1l wrote:
               | The issue is that the type system doesn't enforce that
               | the query is a literal / bundled resource.
        
               | tremon wrote:
               | The SQL language is not flexible enough to allow
               | preparation of every possible query, so the problem is
               | fundamentally not solved. To take a simple example: query
               | parameters are not supported in DDL or DCL statements,
               | and in DML queries the usage of parameters is limited to
               | values only: even such a simple thing as an ORDER BY
               | clause cannot be controlled by parameter insertion.
               | 
               | "We have solutions for the most common occurrences" is
               | not the same as "the problem is solved".
        
             | BiteCode_dev wrote:
             | Depends if you define a solved problem as a problem with a
             | known solution (theory) or as a problem people still pay
             | the cost for in the wild (practice).
        
               | mmmpop wrote:
               | >> solved
               | 
               | Oof classic 3rd rail for when you're arguing with CS
               | grads
        
           | ncmncm wrote:
           | That is what makes it a good example: SQL injection is still
           | a million problems that would need to be fixed in a million
           | places, and _will never be_.
           | 
           | Leap seconds are a nuisance and source of bugs in a million
           | programs. Fix them here, fix them there, it will always be
           | wrong in the majority.
        
         | jjoonathan wrote:
         | I'd argue that TAI has far more right to the term "real time"
         | than UT1. The Earth's wobbling and halting deceleration should
         | not impact, let alone underly, our definition of time. UTC
         | agrees with this assessment almost always: it tracks TAI except
         | for leap seconds that prevent it from de-syncing too far from
         | UT1.
         | 
         | TAI > UTC > UT1
         | 
         | That said, the hard work to build out a compromise has already
         | been done, so whatever, let's just keep it until political or
         | speed-of-light issues make it awkward to distribute information
         | about leap seconds, at which point dropping them will be an
         | easy and natural solution.
        
           | mrighele wrote:
           | > The Earth's wobbling and halting deceleration should not
           | impact, let alone underly, our definition of time
           | 
           | If you define time in terms of days and years, I.e in term of
           | revolutions of the earth around the sun and itself, of course
           | it's wobbling and deceleration has an impact. If you think it
           | shouldn't then measure time differently, for example as
           | seconds since a certain instant
        
             | mattnewton wrote:
             | > If you think it shouldn't then measure time differently,
             | for example as seconds since a certain instant
             | 
             | Isn't that what the article is arguing we do? What
             | practical benefit does keeping this historical definition
             | of time give us? Outside of people trying to account for
             | the rotation of the earth precisely who could even notice?
        
           | pixl97 wrote:
           | > The Earth's wobbling and halting deceleration should not
           | impact, let alone underly, our definition of time.
           | 
           | Who's definition... the whole relativeness of time means this
           | is a problem.
           | 
           | Yea, I agree that we should have a unit of time defined for
           | things near sea level and not moving very fast. But even that
           | becomes problematic over 'long' periods of time as the earth
           | is slowing down and will skew from what humans experience, of
           | which has been the basis of how we define time until
           | recently.
           | 
           | Even then we're still leaving out the problems of things in
           | space and on other planets.
           | 
           | At the end of the day we're attempting to define time as
           | something exact for all observers, and when you attempt to
           | give an exact definition to something that is not exact
           | problems are going to occur.
        
             | msla wrote:
             | It's natural to distinguish between wallclock time and
             | duration time; or, time used to fix events chronologically
             | and time used to figure out how long to do something. The
             | first kind of time is the only plausible use case for leap
             | seconds, because if you insert a leap second into the
             | command "run main motor three seconds" you're going to be
             | in a lot of trouble.
        
               | [deleted]
        
       | 6gvONxR4sf7o wrote:
       | In general, I hate when people doing people things gets replaced
       | by bureaucracy doing bureaucracy things. Structure should support
       | people, not the other way around. That includes time. If people
       | want midnight (on their clocks) to match midnight (in their
       | lives) or whatever, then the structure and code we put to it
       | needs to support that. That includes changing things like time
       | zones and calendars and leap years, and yes, leap seconds too.
       | 
       | Just because we suck at codifying things doesn't mean we should
       | change the goal to make it easier to codify. If you need a more
       | straightforward clock in your software, use just TAI or
       | something, instead of trying to redefine calendars.
        
         | jefftk wrote:
         | Midnight on your clock is very likely tens of minutes or even
         | hours offset from solar midnight, let alone seconds:
         | http://blog.poormansmath.net/images/SolarTimeVsStandardTimeV...
        
       | NovemberWhiskey wrote:
       | Next up from FB: about that whole "February has 29 days in a leap
       | year" thing...
        
       | notacoward wrote:
       | FWIW, Facebook did _not_ use UTC when I was there. They used
       | Pacific time everywhere, which was even worse. And half of the
       | internal tools would convert to local time but the other half
       | wouldn 't. I just kept my work machine in Pacific time even
       | though I'm in Eastern, so that compiling incident timelines (for
       | example) would be less tedious and error-prone.
        
       | throwawaytime99 wrote:
       | If utc is causing problems with your calculations due to leap
       | seconds than you should be using Unix time to do the calculations
       | and then translating that to a human readable format.
       | 
       | Imo society needs three distinct time counting systems.
       | 
       | 1. Linux time. Essentially a universal addressing system for the
       | measure of time in a agreed upon reference point (Earth's
       | surface). This should be the standard for science/computation,
       | with the need for language to describe time dilation when
       | comparing two reference points. Unix time doesn't have leap
       | seconds, or the concept of days.
       | 
       | 2. UTC aka civil time. Things such as the orbit of the sun and
       | the rotation of the earth aren't in constant speed and don't
       | divide evenly with each other. UTC deals with short term
       | variability with leap days and leap seconds. This is so every
       | January 6th the earth is roughly in the same spot relative to the
       | sun, and every 5pm the earth is in roughly the same part of its
       | rotation. This is important because these things drift on human
       | scale timelines. This calendar should be used for daily life,
       | business, etc.
       | 
       | 3. A purely astronomic calendar. A calendar that defines time by
       | astronomic events. For example, defining a day as one rotation of
       | Earth and not as a number of times an atom vibrates. This should
       | be used so we can discuss astronomical events such as "A Martian
       | year" or a "Saturn Day" and provide some meaning. This is the
       | basics that should be taught to elementary school children to
       | establish the cultural meaning of a day or a year and to provide
       | some basic learnings of nature.
        
         | [deleted]
        
         | BoppreH wrote:
         | Unix time does have leap seconds. From Wikipedia:
         | It is the number of seconds that have elapsed since the Unix
         | epoch, excluding leap seconds.
         | 
         | Yes, it means the Unix timestamp jumps around, either skipping
         | or repeating a second, when there's a leap second. Yes, it is
         | as stupid as it sounds.
        
           | cpcallen wrote:
           | I think this is the real problem.
           | 
           | If we used a unix-time-including-leap-seconds instead then
           | the date/time conversion functions would need to have a
           | little extra smarts (a table of leap seconds in addition to a
           | timezone database) but most of the leap second related
           | problems would not exist.
           | 
           | (We already deal just fine with months having variable
           | numbers of days. Minutes having variable numbers of seconds
           | is obviously awkwardly rare from a testing point of view, but
           | not fundamentally more difficult to get correct.)
        
             | dane-pgp wrote:
             | > not fundamentally more difficult to get correct
             | 
             | The fundamental difference is that we can predict well in
             | advance how many days will be in a given month, and the
             | rules for calculating that number can be implemented with a
             | short lookup table and a few modulo operations.
             | 
             | The lookup table for past leap seconds, however, is already
             | longer than 12 entries, and there is no way of calculating
             | the length of all future minutes.
             | 
             | On the other hand, the problem may be simpler than keeping
             | track of changes to timezone definitions, since there are
             | hundreds of jurisdictions that can unilaterally change
             | those.
        
           | [deleted]
        
       | shadowgovt wrote:
       | So what's the alternative? The leap second is capturing an actual
       | skew between uniformly-ticking clocks based off of atomic decay
       | statistics and the rotation of planet Earth. Stop updating them,
       | and we end up with the sun going down for equatorial latitudes at
       | 3PM eventually.
       | 
       | This feels very can-kicky, even if the can can be kicked a
       | thousand years down the road. I don't think more can-kicking is
       | really the best solution.
        
         | wmf wrote:
         | Once the discrepancy exceeds 30 minutes you change the time
         | zone offset.
        
           | shadowgovt wrote:
           | So their complaint is that one-second skews happen
           | infrequently enough that they are always a headache, and we
           | want to "solve" the problem by... Replacing it with a _less_
           | frequent time modification that introduces _larger_ delta?
           | 
           | I've been on the front lines of adapting code for a novel
           | timezone change. It _wasn 't_ pretty.
        
             | ncmncm wrote:
             | It is not, ever. Doing it every year or two imposes just as
             | much disruption every year or two. A disruption once a
             | century is at least 50 times less disruption.
        
             | wmf wrote:
             | Globally, time zone data changes all the time (more often
             | than leap seconds) and thus software is better at dealing
             | with it.
        
       | [deleted]
        
       | poppafuze wrote:
       | Meta has it backwards, because they could've already made another
       | choice. UTC is a representation of the offset. This will always
       | need to be calculated somewhere. Much like how the GPS counts the
       | time since the epoch and broadcasts the offset...it can be used
       | or not by the user. Those times are a calibration adjustment. For
       | UTC, that adjustment is a reference to the current status
       | provided by IERS. That's literally the job of UTC.
       | 
       | Meta can simply stop applying a time offset in their reference,
       | use TAI for forensics, and then have a separately calculated time
       | when they need to display in that representation.
       | 
       | ...Which is what happens already. System time is seconds since
       | The Unix Epoch. All of those times are calculated and available,
       | and always will be. They chose one of them, didn't like it, and
       | invented a crummy workaround. They could've logged it in TAI and
       | appended the TAI TZ to all their timestamps.
       | 
       | This is being done to work around poor coding choices they made,
       | instead of making the computing fit reality. Basically "We chose
       | smearing, which is a poopstain of tech debt, so we'll fix it by
       | telling the whole world what time it is." That request is loaded
       | with colossal hubris.
       | 
       | They might as well have the second redefined. The real operators
       | do their thing and leave the squawking to those who want to self-
       | identify a poor coders. Because if they don't want to account for
       | a clock that jumps, then they're kicking the can down the road
       | and they want everyone else to join.
       | 
       | Turning it into a Y2K or Y2038 problem is a sad choice of
       | saddling bigger tech debt on the rest of the world.
       | 
       | Calling it mainstream is as much of a narrative as permanent
       | daylight savings time was. The software solutions exist and were
       | deployed (at least throughout Linux and main userspace) by the
       | June 2015 leap.
       | 
       | This is a Facebook problem that they're sloppily handling by
       | pushing it on literally everyone else.
        
       | kstrauser wrote:
       | Counterpoint: no.
       | 
       | The hubris of "we'd rather not do this, so let's make the entire
       | rest of the world deal with it instead" is impressive.
        
         | dymk wrote:
         | God forbid somebody suggest a solution to a problem.
        
           | kergonath wrote:
           | If the solution implies de-engineering society from first
           | principles to satisfy a programmer's desire for regularity,
           | it's more of a thought experiment than a solution.
           | 
           | The world is messy, life is messy, and so is everything else.
           | If that's too much for poor programmers, they need to find
           | another job.
        
             | barnabee wrote:
             | Agreed. Honestly the only thing that article did is make me
             | add "to irritate Facebook/Meta" to the list of reasons not
             | to ditch leap seconds.
        
             | kergonath wrote:
             | > If the solution implies de-engineering society from first
             | principles
             | 
             | I obviously meant "re-engineering", but "de-engineering"
             | works as well, in this case...
        
           | kstrauser wrote:
           | When the problem is "this is too hard for us (but apparently
           | not our peers)", a valid solution is not "let's just ignore
           | it, even though our idea would cause an enormous pain in the
           | neck for the rest of the world".
        
             | dymk wrote:
             | Why do you think it's not also too hard for their peers?
             | Any company with an interest in time keeping spends tons of
             | money dealing with time zones and leap seconds.
        
               | kstrauser wrote:
               | Because I haven't seen the Google or Amazon proposal to
               | ditch it. Perhaps they've written them and I don't know
               | about them, but I'm not aware of them.
               | 
               | We do lots of things that are hard because doing them
               | right is often more important than doing them easily.
               | Switching from ASCII from UTF-8 was a pain, but we did
               | it. Software upgrades are a pain. Security infrastructure
               | is a pain. Timezones are OMG such a pain. But in all
               | those cases, we collectively said "welp, guess we've
               | gotta do it".
               | 
               | And what Facebook notably _didn't_ propose was a way to
               | actually make this happen. Who's going to project manage
               | the global coordinated effort to migrate the planet to
               | Facebook Time? That sounds like much more work than them
               | just fixing their time handling.
        
               | jefftk wrote:
               | It's not just Facebook: apparently in 2015 most countries
               | wanted to drop leap seconds, though some wanted to keep
               | them: _Most countries, including China, the United States
               | and many in Europe, favour scrapping the leap second and
               | basing UTC on the continuous tick of atomic clocks._ --
               | https://www.nature.com/articles/nature.2015.18855
        
               | Yujf wrote:
               | Someone has to propose it first. Just shooting them for
               | that seems bad.
               | 
               | I agree that we don't just need to do something because
               | fb wants to do it, but it might actually be worth having
               | a discussion over.
        
               | kstrauser wrote:
               | OK, so I do agree with that. It's worth having a
               | conversation about.
               | 
               | But I don't feel like this rose to the level of an actual
               | proposal. It was very short to assert a claim with such
               | wide-reaching implications as "we should start ignoring
               | leap seconds". As such, I don't think it calls for an in-
               | depth rebuttal.
               | 
               | Consider:
               | 
               | Proposer: "It's time to leave Unicode in the past. It
               | requires us to update every part of our system to deal
               | with UTF-8 strings instead of much simpler ASCII, and
               | we're spending a lot of resources. Because it's so hard
               | and expensive, we should all use well-tested ASCII code.
               | People who want to interoperate with our system can just
               | rename themselves to use the Latin-1 alphabet."
               | 
               | Everyone else: "No."
               | 
               | Yes, it _is_ hard, and people have spent a lot of, ahem,
               | time and money to figure out how to manage this at scale.
               | But there _are_ real-world-tested approaches to dealing
               | with the issue, and I firmly believe it's better to work
               | out and coordinate on the remaining rough edges than to
               | throw the whole thing away to make a handful of
               | engineers' jobs easier.
        
               | dymk wrote:
               | It's not everyone else. Most countries want to get rid of
               | the leap second.
               | 
               | "A small number of countries however, including Russia
               | and the United Kingdom, want to keep the leap second."
               | 
               | https://www.nature.com/articles/nature.2015.18855
        
               | ncmncm wrote:
               | That is sufficient argument, alone, to drop it.
               | 
               | UK used to decide on which date to switch to and from
               | "summer time" every year. "The admiralty will take up the
               | question in coming weeks."
        
           | lelandbatey wrote:
           | And god forbid we respond with _" that's not a good
           | solution."_ To restate, here's the problem, quoted from the
           | original article:
           | 
           | > _" As an industry, we bump into problems whenever a leap
           | second is introduced."_
           | 
           | Their suggested solution is:
           | 
           | > _" As engineers at Meta, we are supporting a larger
           | community push to stop the future introduction of leap
           | seconds and remain at the current level of 27, which we
           | believe will be enough for the next millennium."_
           | 
           | Most folks are rightly pointing out that there are many other
           | solutions that we could introduce, which wouldn't have the
           | downsides of UTC drifting away from our wall-clock time.
           | Facebook didn't even discuss those solutions though.
           | 
           | An example possible other solution: programmers (especially
           | programmers at Facebook) should stop using UTC and should
           | instead use TAI (which is literally UTC but without leap
           | seconds). Indeed, using UTC time as anything other than a
           | wallclock time should trend towards the norm. Even though
           | this is a clear tru-ism, seeing it adopted would be way
           | harder (due to language inertia and habits) compared with
           | just changing the standard (nevermind that changing the
           | standard would break a _ton_ of logic built around
           | expectations like  "midnight UTC falls on an integer multiple
           | of 86400").
        
             | ncmncm wrote:
             | None of those are, in fact, any kind of solution. Most are
             | strictly worse than status quo.
             | 
             | The purpose here is for things to get _better_ , not worse.
        
           | msbarnett wrote:
           | What solution? Meta's entire proposal is "stop making the
           | adjustment and let dealing with the accumulated error be some
           | future person's problem".
           | 
           | "Let's just kick the can down the road" isn't solving
           | anything.
        
             | dymk wrote:
             | TFA explains that it largely doesn't matter if we just
             | ignore the leap second. It's additional complexity to our
             | timekeeping systems that doesn't buy us much (if any)
             | value. All the super-precise systems which would be
             | impacted by being one second off ignore leap seconds
             | anyways.
        
       | dmm wrote:
       | Another solution would be to add an extra positive and negative
       | leap second every year to make sure all those code paths are
       | tested.
        
         | throw0101a wrote:
         | The FreeBSD folks run tests on positive and negative leap
         | seconds to make sure things are fine:
         | 
         | * https://lists.freebsd.org/pipermail/freebsd-
         | stable/2020-Nove...
         | 
         | Of course there's a whole lot of other userland code besides
         | _ntpd_.
        
         | ble wrote:
         | It could be a holiday / hazing event for software engineers.
        
         | ncmncm wrote:
         | I.e., half of everything is broken each 6 months, instead of
         | just every 15 - 30 months.
         | 
         | Better would be half of everything _not_ breaking every 15 - 30
         | months.
        
       | fourthark wrote:
       | Eventually we will have to get used to having two clocks, slowly
       | diverging.
       | 
       | It's inevitable because we don't want hours of slip on Earth and
       | eventually we will move to other planets which certainly don't
       | want Earth leap seconds.
        
         | 1970-01-01 wrote:
         | NASA has already started down this road!
         | 
         | https://www.nasa.gov/mission_pages/tdm/clock/index.html
         | 
         | https://www.jpl.nasa.gov/news/what-is-an-atomic-clock
        
       | lavishlatern wrote:
       | A lot of people in this thread are criticizing this move, but let
       | me offer an opposite view.
       | 
       | One of the largest electronic health records systems has code
       | that predates the UNIX epoch. Much of the time handling code is
       | custom written to deal with this. However, the code was so poorly
       | written that the system would lose data during the double 1 am
       | window that occurs during daylight savings time shift. Hospitals
       | would just shut off all of their computers during this time to
       | deal with it.
       | 
       | As the article notes, issues with leap seconds have also brought
       | down reddit and cloudflare. Many people in this thread are
       | treating this like some sort of display of incompetence, but if
       | you've ever written code that deeply interacts with time, you'd
       | know how difficult it is to get right. A sign of a good system is
       | one where it is difficult to fuck up.
       | 
       | IMO it is better to guarantee that time always moves forward
       | rather than trying to match computer time to human time.
        
         | jeroenhd wrote:
         | > However, the code was so poorly written that the system would
         | lose data during the double 1 am window that occurs during
         | daylight savings time shift. > [...] > Many people in this
         | thread are treating this like some sort of display of
         | incompetence, but if you've ever written code that deeply
         | interacts with time, you'd know how difficult it is to get
         | right.
         | 
         | Your example only speaks for the incompetence argument.
         | 
         | In reality, times and dates are really complicated. Luckily,
         | the engineers at Facebook, Reddit, and Clouflare are being paid
         | hundreds of thousands of dollars to show off their expertise.
         | Is it that much to ask for them to read into details like leap
         | seconds?
        
           | lavishlatern wrote:
           | It is too much. I was Google SRE and there is an internal
           | meme showing a time series graph jumping backwards during the
           | double 1am at DST. These mistakes happen everywhere and are
           | best avoided by a system that doesn't allow them to happen in
           | the first place.
        
         | 1970-01-01 wrote:
         | >IMO it is better to guarantee that time always moves forward
         | rather than trying to match computer time to human time.
         | 
         | Not sure if you're playing Cunningham's Law or if you don't
         | know this was the line of thought until everything was so far
         | out of touch with reality, 10 days of time never existed, and
         | official records were kept with dual-dates.
         | 
         | https://en.wikipedia.org/wiki/Old_Style_and_New_Style_dates
         | 
         | https://www.timeanddate.com/calendar/julian-gregorian-switch...
        
         | mritun wrote:
         | There's no need to redefine UTC. If you want a fixed monotonic
         | reference clock you want TAI time (the atomic reference) not
         | UTC.
         | 
         | https://www.nist.gov/pml/time-and-frequency-division/nist-ti...
        
           | lavishlatern wrote:
           | I don't see how replacing all UTC in software with TAI is
           | more realistic than breaking UTC sync with UT1 (isn't it
           | literally doing the same thing?). The whole point is that
           | going forward, leap seconds are going to get harder to deal
           | with. Especially in the case of a negative leap second, which
           | seems like a more "true" y2k-like scenario.
        
             | Veserv wrote:
             | The difference is that replacing usage of UTC with TAI is a
             | voluntary choice made for each program, but redefining UTC
             | to be a fixed offset relative to TAI, which is effectively
             | just redefining UTC to be TAI, is a forced change on
             | everything everywhere all at once that everybody has to
             | handle because one of their dependencies changed.
             | 
             | It would be like silently changing the start of unix epoch
             | time to 1800 instead of adding a new "Unix time since 1800"
             | and asking people to switch.
        
               | lavishlatern wrote:
               | Not at all. Everybody using UTC would just not need to
               | deal with leap seconds anymore. A UTC second is the same
               | as a TAI second. It's a no-op for the vast majority of
               | UTC users. UTC will just drift slightly more from UT1.
               | 
               | This change only affects people who need UTC to be close
               | to UT1 and also somehow don't know what UT1 is.
        
               | Veserv wrote:
               | Sure, everybody using UTC when they actually want TAI
               | would be a no-op, but then you irreversibly break
               | everybody who actually wants UTC and assumed that UTC
               | would not change meanings.
               | 
               | The people who would be unaffected by the redefinition
               | can already just trivially switch manually (as we already
               | assumed that just redefining things under them would
               | work), leaving the UTC people alone. There is no good
               | reason to silently break all programs carefully designed
               | to use UTC correctly to fix all of the programs
               | haphazardly written by people who did not know what they
               | were doing and used UTC when they actually wanted TAI.
               | Especially since fixing the wrong use of UTC is so
               | trivial that we assume it can be done with no
               | modification.
        
       | omoikane wrote:
       | See also: https://developers.google.com/time/smear
       | 
       | Which says both Google and Amazon smears over a 24 hour period
       | (in contrast to Meta's 17 hour smear).
        
         | ncmncm wrote:
         | Worst of all possible choices.
        
       | [deleted]
        
       | sharikous wrote:
       | A monotonic clock without leap seconds could be kept next to UTC,
       | it can easily be standardized.
       | 
       | The idea that this problem is so hard that users have to be
       | inconvenienced to the point that reality is ignored is a bit
       | strange to me.
        
         | dexwiz wrote:
         | This is literally what the TIA standard is. Anything that needs
         | precise time already uses this standard.
        
         | [deleted]
        
         | adrian_b wrote:
         | The problem is that UTC, despite its name, is not a time (it is
         | an angle rounded to a multiple of 1/21600 right angles).
         | 
         | Only TAI is a time.
         | 
         | Already decades ago, some programmers have argued that
         | internally all computers and their software should use only
         | TAI, which is a time, so it behaves as expected, while UTC must
         | be used exactly like the local times and the time zones, only
         | at the interfaces with humans.
         | 
         | If that proposal would have been adopted, there would not have
         | been now any discussion about the leap second.
         | 
         | The only reason for the existence of UTC is to keep dUT1, i.e.
         | UT1 - UTC, under 1 second.
         | 
         | If the leap second is eliminated, then dUT1 will grow over 1
         | second, so there are other cohorts of hardware devices and
         | software applications that must be updated in order to no
         | longer rely on the assumption that dUT1 is less than 1 second.
         | 
         | Anything that has any relationship with astronomy, e.g. for
         | observations or for navigation, relies on computing UT1 (i.e.
         | the angle between the mean Sun and Earth) from time, so it
         | would have to be updated.
         | 
         | Changing the definition of UTC would make it completely
         | redundant, Instead of giving up to add leap seconds to UTC, it
         | would be much better to make a final leap of a half of minute
         | and have TAI = UTC after the date of the big leap.
         | 
         | Having 2 identical times with an arbitrary offset between them
         | would just add needless complications to all time-related
         | software, forever.
        
           | kortex wrote:
           | > The problem is that UTC, despite its name, _is not a time_.
           | 
           | Could you elaborate on what you mean? What is UTC if not a
           | time? Like, datetimes vs time?
           | 
           | Even if Unix time was based on TAI, you'd still need leap
           | seconds in order to resolve the correct local time (which is
           | based of even-minute offsets of UTC). Maybe it's easier to
           | deal with in calculation post-hoc vs smearing on the day of,
           | but that handful-of-accruing-seconds will always be there.
        
             | nomdep wrote:
             | Yes, but UTC could be just another timezone, and every
             | timezone would be based on seconds offsets of TAI
        
             | adrian_b wrote:
             | UT1 is an angle, i.e. the longitude of the mean Sun
             | projected on the Earth.
             | 
             | The mean Sun is a fictitious Sun with a motion that is
             | averaged in comparison to the real Sun.
             | 
             | UTC is the UT1 angle rounded to a multiple of 1/21600 of a
             | right angle, i.e. the angle corresponding to 1 second of
             | time for something that completes a circle in 1 day.
             | 
             | Because of this rounding, actually a truncation, UT1 = UTC
             | + dUT1, where dUT1 is between 0 and 1 "seconds".
             | 
             | Even if UT1, dUT1 and UTC are expressed in "seconds", these
             | "seconds" are not the unit of time, but like I have said,
             | such a "second" is 1/21600 of a right angle or pi/43200
             | radian.
             | 
             | Both UT1 and UTC are angles that approximate the longitude
             | of the projection of the Sun on Earth, with various
             | accuracies.
             | 
             | Because the rotation of the Earth, which causes most of the
             | apparent motion of the Sun, is almost uniform, the angle of
             | rotation is almost proportional with the time, so the angle
             | UTC is almost proportional with the time, i.e. with TAI.
             | 
             | Because of the way how the "second" angle used for UT1/UTC
             | is defined, the approximate proportionality becomes an
             | approximate equality of TAI with UTC, but because the
             | equality is only approximate, there is an increasing offset
             | between them.
             | 
             | In the ancient times, the people did not care much about
             | time, but only about the angle of the Sun, which determined
             | when it was light or dark, hot or cold, enabling or
             | preventing various activities.
             | 
             | In modern times with artificial lighting and heating and
             | with many activities that proceed at predictable rates,
             | time has become much more important than the angle of the
             | Sun.
             | 
             | In any case, in all contexts we must be aware that the
             | angle of the Sun and the time are not the same thing, even
             | if they are almost proportional, i.e. almost equal after a
             | change of the measurement unit.
        
               | kortex wrote:
               | The rate of angular change divided by angle sure as heck
               | sounds like units of time to me. The absolute angle
               | isn't, but the rate of change is, and UTC still tracks
               | with rate of change, with a phase angle we periodically
               | twiddle.
               | 
               | That's like saying a watch or even an atomic clock
               | doesn't measure time, it measures oscillations. It's
               | being pedantic to the point of obtuse.
        
           | ncmncm wrote:
           | Except, astronomers _do not use_ UTC now. So its sole
           | supposed benefit completely misses the tiny slice of people
           | it is supposed to be for.
           | 
           | UTC has exactly one purpose: to be a common reference for
           | everybody else. Making it not mess up everybody else, every
           | year, is obviously the better choice.
           | 
           | You may stop beating your spouse _now_ , and it will be
           | purely an improvement.
           | 
           | Having made the mistake 27 times already does not justify
           | making it even a single occasion more, never mind forever.
        
       | LeoPanthera wrote:
       | It's frustrating that programmers want to redefine civil time
       | just because it is "hard". This article glosses over the real
       | world problems that detaching from UTC will cause.
       | 
       | This article details some of the problems:
       | https://www.ucolick.org/~sla/leapsecs/dutc.html
       | 
       | (You may want to scroll down to "Implementing the plan outlined
       | at Torino".)
       | 
       | If we end leap seconds, it doesn't take long - only until 2028 -
       | until "midnight" is sufficiently far from "the middle of the
       | night" that you will have to consider the legal issues caused by
       | events that happen just before or after 0000 hours.
       | 
       | By 2055, the "minute" displayed on a clock may be incorrect,
       | which again may cause issues with legal timestamps.
       | 
       | And by 2083, sundials are measurably wrong.
       | 
       | All because programmers wanted to save some lines of code.
        
         | [deleted]
        
         | bhk wrote:
         | > This article details some of the problems:
         | https://www.ucolick.org/~sla/leapsecs/dutc.html
         | 
         | That article is ridiculous.
         | 
         | * "Most telescope pointing systems fail" (by 2027) (with 5s
         | deviation from earth rotation). Pointing systems cannot blindly
         | rely on UTC anyway, since (a) even with leap seconds UTC is up
         | to 1 second off earth's rotation, and (b) pointing a telescope
         | depends on where the telescope is on earth, so some offset must
         | be added to UTC by some human.
         | 
         | * Hypothesized legal issues... give me a break.
         | 
         | It would be much less trouble for humanity to deal with this
         | once every 100 years or so.
        
         | [deleted]
        
         | BrainVirus wrote:
         | _> All because programmers wanted to save some lines of code._
         | 
         | No, it's because programmers don't want basic timekeeping in
         | all devices involve the worst issues of managing a distributed
         | system.
        
         | ZetaZero wrote:
         | > By 2055, the "minute" displayed on a clock may be incorrect,
         | which again may cause issues with legal timestamps.
         | 
         | I'm not following here. What defines "legal timestamps" in our
         | current system? I'm unaware of any laws in the US that uses the
         | actual position of the sun to determine the time.
         | 
         | "Noon" when the sun is at the highest point, can vary over an
         | hour across a timezone.
        
           | lynguist wrote:
           | A birthday is a legal timestamp. A car crash is a legal
           | timestamp. When the time is off by a minute, these events
           | can't be catalogued correctly any more.
        
             | Ekaros wrote:
             | Both can easily be placed on same monotonic time. Actually
             | makes a things simple. You don't end up having
             | 31/12/1972:23:59:60 and wondering why is there 60 there...
        
             | PeterisP wrote:
             | "off by a minute" from what exactly?
             | 
             | Shifting the timezone by a couple seconds does not prevent
             | or hinder cataloguing events in any way whatsoever,
             | certainly not more than switching to daylight savings time
             | does or the mere existence of timezones, which may easily
             | be half an hour or even more off from the solar time - the
             | offsets we use for time are effectively arbitrary already,
             | and adjusting the arbitrary choice of the offset by some
             | seconds is not a fundamental difference. Event timestamps
             | already map to different days depending on different
             | timezones, you do need to know which timezone your clock is
             | using, of course, but you already need to do that.
        
               | 0x0 wrote:
               | For people born just around midnight, especially around
               | new years eve, a few seconds could impact their DOB by a
               | whole year. This could affect everything from university
               | applications to boating licenses to social security.
        
               | ncmncm wrote:
               | It already does all that. Just unpredictably.
        
               | joshuamorton wrote:
               | Why does the position of the sun have any relation to the
               | legal time?
               | 
               | > This could affect everything from university
               | applications to boating licenses to social security.
               | 
               | Last time I looked, a boating license required you to be
               | a certain age. Dec 31 and Jan 1 are still just as far
               | apart as July 6 and July 7.
        
             | cdash wrote:
             | Maybe you seem to think that was is being asked for is to
             | retroactively remove leap seconds from UTC? That is not the
             | case, all that is being called for is to stop adding more
             | leap seconds.
        
           | DerpyBaby123 wrote:
           | >"Noon" when the sun is at the highest point, can vary over
           | an hour across a timezone.
           | 
           | this is "solar noon" - just "noon" denotes 12:00 on the clock
           | [1]
           | 
           | [1]https://www.bsu.edu/academics/centersandinstitutes/ceres/h
           | el...
        
           | bonzini wrote:
           | Way more than one hour. Even without taking China into
           | account, A Coruna in Spain and Kosice in Slovakia are in the
           | same time zone but they are 30 degrees (2 hours) apart.
        
         | Ellipsis753 wrote:
         | When the sun is directly overhead it's meant to be 12:00 - IN
         | THEORY! However as Timezones are pretty wide, most of the time
         | you'll be at least 15 minutes out. Sometimes you'll be out by
         | as much as 3 hours - and you've probably never even noticed!
         | Telescopes already have to compensate for this (as well as for
         | summer time). Leap seconds make a shambles of book keeping too.
         | What is "2022-07-17T12:00:00" + (60 x 60 x 24 x 365 x 5)
         | seconds? No one knows! And the answer to that question will
         | change depending on when you calculate it and which updates you
         | installed! So I say ditch the leap second and let it drift. In
         | a few hundred years we could update our timezones if we
         | _really_ want to (timezone changing is actually pretty common,
         | so code should already be handling this edge-case).
        
         | DSMan195276 wrote:
         | > If we end leap seconds, it doesn't take long - only until
         | 2028 - until "midnight" is sufficiently far from "the middle of
         | the night" that you will have to consider the legal issues
         | caused by events that happen just before or after 0000 hours.
         | 
         | I'm not sure what you're getting at here. If we stopped
         | introducing leap seconds, then why would the legal world still
         | care about them?
        
           | whateveracct wrote:
           | I'm assuming because timestamps exist to capture time in the
           | real world
        
             | alecbz wrote:
             | What do you mean by "time in the real world"? The relative
             | position of the sun to someone on Earth?
             | 
             | _Some_ legal uses of time are probably concerned with this,
             | but I'd think it's a pretty small minority.
        
               | ncmncm wrote:
               | Islamic time is, technically, but does not distinguish
               | seconds. So, the only place where it _could_ matter, it
               | doesn 't.
        
           | jjoonathan wrote:
           | I can believe that a desperate lawyer would argue the
           | semantic distinction between clock-midnight and solar-
           | midnight, but I have trouble believing that this would amount
           | to anything more than one more dumb nit on a pile of dumb
           | nits that the court has to deal with every day.
        
             | Ekaros wrote:
             | Also I think it would go through legal system in a few
             | years and end decision is that clock-midnight is one that
             | will be followed.
             | 
             | Or even have legislation to agree on that and set single
             | law.
        
         | makeitdouble wrote:
         | "civil time" is also a construction that is flexible in many
         | ways, so an influencial group redefining it isn't out of norm.
         | To note, timezones were introduced for railway purposes, and
         | some country play a lot with them.
         | 
         | For "midnight" being far from "the middle of the night", that's
         | already a reality for many Chinese living far enough from
         | Beijing, or god forbid regions where "night" doesn't mean much
         | for half of the year.
         | 
         | For all intents and purposes, if a formal definition of time
         | isn't practical people come up with their own ways.
        
           | Ekaros wrote:
           | Midnight isn't midnight for absolute vast majority of people.
           | Even with right sized timezones. That is one spreading from
           | edge to edge...
           | 
           | And then there is continental shifting... Which we also don't
           | account for...
           | 
           | A few seconds or few minutes really don't make that much
           | difference for average person.
        
         | jefftk wrote:
         | Your article is from 2003 [1], so when they say "by 2028" they
         | don't mean six years from now.
         | 
         | Since the article was published we've gone from positive leap
         | seconds every so often to looking like we may get the first
         | ever negative leap second:
         | https://upload.wikimedia.org/wikipedia/commons/f/fb/Leapseco...
         | 
         | Which means the article's estimates on how long it will be
         | until we're off by a given amount of time are very much
         | obsolete.
         | 
         | [1]
         | https://web.archive.org/web/20030801000000*/https://www.ucol...
        
           | amptorn wrote:
           | I think that observation just lends further weight to the
           | argument that the relationship between atomic time and
           | universal time is a dynamic and unpredictable thing, which we
           | need to handle correctly rather than pretending it doesn't
           | exist.
        
             | ncmncm wrote:
             | That it is dynamic and unpredictable is _exactly_ why we
             | should not force everybody to track it.
             | 
             | Some people: astronomers and orbital mechanicos are obliged
             | to care about sidereal time, regardless. Making me deal
             | with it too is pure tax with exactly zero benefit.
        
         | lucb1e wrote:
         | > it doesn't take long - only until 2028 - until "midnight" is
         | sufficiently far from "the middle of the night"
         | 
         | Honestly from my perspective, 3am is the middle of the night
         | (night-morning-afternoon-evening starts at 0-6-12-18 for me)
         | and somewhere between 4 and 5 most people are probably asleep
         | and the date change should occur. I can't count how often I've
         | heard people clarify what 'tomorrow' means when the word is
         | spoken after "midnight" but before going to sleep.
         | 
         | But yeah gotta pick _something_ for the date change, it won 't
         | be worth the cost of change now. If we do end up ever switching
         | to something like decimal time, this should be on the todo list
         | though.
         | 
         | And I know "midnight" is historically supposed to be about the
         | sun being the furthest from its zenith rather than in the
         | middle between when you go to sleep and get up, however that
         | occurs somewhere around 1am here (01:41 at its extreme, from
         | July 17 till August 5th). If that's not enough to warrant a
         | redefinition, 27 seconds accumulated since we started counting
         | leap seconds are also not enough to warrant an update yet
         | (following Facebook's logic here).
        
         | philwelch wrote:
         | From your link:
         | 
         | > In about 600 years TI will be ahead of UT1 by half an hour,
         | and in about 1000 years the difference will be a full hour.
         | 
         | That's nothing. Time zones alone already create significantly
         | larger errors. Belgrade and Sevilla share a time zone, but the
         | solar meridian ("noon" on a sundial) is 12:44 in Belgrade and
         | 14:30 in Sevilla. Obviously, the same error is present in the
         | astronomical "middle of the night". This does not, in fact,
         | create "legal issues" for Serbs or Spaniards.
         | 
         | In 600-1000 years, around the time that it would actually
         | matter, we're going to have to reform the time system anyway to
         | account for relativistic drift between the surface of the Earth
         | and human settlements elsewhere in the solar system.
        
         | metacritic12 wrote:
         | Isn't "cause issue with legal timestamps" just a circular
         | definition?
         | 
         | Sundials being "measurably" wrong become an issue at long
         | spans. For example, no one wants solar noon to be at 10AM --
         | but that takes a while.
        
           | philwelch wrote:
           | > For example, no one wants solar noon to be at 10AM -- but
           | that takes a while.
           | 
           | Solar noon in Spain is after 2PM already.
        
         | 1970-01-01 wrote:
         | >It's frustrating that programmers want to redefine civil time
         | just because it is "hard". This article glosses over the real
         | world problems that detaching from UTC will cause.
         | 
         | Yes, the actual problem exists, and ignoring/discarding reality
         | (i.e. the "science" in computer science) will just cause
         | further problems. If you and your modern stack of code can't
         | handle the leap second, it's simply not production code.
        
           | alecbz wrote:
           | > the actual problem exists
           | 
           | I mean this is the whole contention. Meta's claiming this
           | isn't actually a problem worth solving.
        
             | ncmncm wrote:
             | Moreso: it is not a problem that dealing with the nuisance
             | that is leap seconds even solves. It is supposed to match
             | civil time to astronomical time, but astronomers don't use
             | it. It just makes things even more annoying for
             | astronomers, and annoys everyone else, over and over again,
             | for no benefit to anyone.
        
         | prpl wrote:
         | Please consider that none of this actually matters if we
         | ditched UTC for TAI. For one, time zones still exist and local
         | solar time is already decoupled from clock time.
         | 
         | The worst case scenario is things are different.
        
           | ncmncm wrote:
           | Not everybody would "ditch UTC for TAI". Some would, some
           | wouldn't. Now you cannot know whether you will match anyone.
        
         | bartread wrote:
         | > It's frustrating that programmers want to redefine civil time
         | just because it is "hard". This article glosses over the real
         | world problems that detaching from UTC will cause.
         | 
         | I agree, but I'm also - sad to say - less than surprised to
         | find engineers at a Big Tech firm taking a high-handed, not to
         | mention narrow and ill-informed, approach over the issue and
         | trying to impose their will on a global scale. My worry here is
         | that, Meta being Meta, they carry quite a lot of influence and
         | may actually gain some traction.
         | 
         | EDIT: I'll add a bit more colour here. At the core of our
         | platform we manage a database containing billions of legacy
         | timestamped records (or events, if you prefer), adding more and
         | more every day. Without even giving it a great deal of thought
         | I guarantee you that this proposal will cause us more problems
         | that it solves and will distract us from making more valuable
         | investments of time and effort that would benefit our business
         | should it be implemented. Sure, we can no doubt fix all these
         | problems, but we've got better things to do. I imagine that
         | many other businesses would be similarly affected and would
         | take a similar view.
         | 
         | I wholeheartedly oppose it.
        
           | corrral wrote:
           | I'm kinda impressed by the hubris, really. Usually it's
           | emperors, kings, and big multinational governing bodies that
           | try to screw around with the time standard that ordinary
           | people have to live with. Occasionally strident
           | revolutionaries who've already solved the "overthrow and
           | replace the government" part of their problem and aren't
           | content with just beheading people all day.
           | 
           | Says something about how Facebook sees itself, I guess.
        
             | ncmncm wrote:
             | Facebook is arguing to _stop_ monkeying with the time
             | Standard. Correctly.
             | 
             | Leap seconds are exactly the "screwing around" you
             | criticize.
        
           | gnu8 wrote:
           | That's all it is, they ran into an engineering problem and
           | they're trying to get the world to bend to their will instead
           | of solving the problem because they think it will be easier.
           | Mark's arrogance is nauseating.
        
             | easytiger wrote:
             | Now expand this reasoning far beyond the scope of time
             | keeping.
             | 
             | Big Tech companies/Anti Big Tech lobbyists massively
             | oversimplify in their pitch to influential people to
             | deregulate/overregulate certain areas. In both cases they
             | end up making poor decisions for the general case both end
             | up making the average case worse for everyone except
             | themselves. It's about creating a market where none need
             | exist. Facebook doesn't need to care about time really.
             | It's not remotely important to their business.
             | 
             | I've built and worked on platforms with sub microsecond
             | measuring requirements and this stuff didn't bother me.
             | This is idle bad money finding work for itself at the
             | expense of everyone else.
             | 
             | Disclosure: I am/was an early investor in facebook in 2012.
             | Mark is turning it all to dirt because he's run out of
             | ideas
        
             | jjoonathan wrote:
             | > arrogance is nauseating
             | 
             | Right back atcha.
             | 
             | We have three alternative time systems and a big bag of
             | issues with each of them, but you think the extremely
             | mundane argument that we should prefer one bag represents
             | nauseating arrogance because you think that your favorite
             | bag -- a different one -- is obviously correct? Come on. Do
             | better. Be civil.
        
               | Veserv wrote:
               | FB is not making the mundane argument that we should pick
               | one time system over another. They are literally
               | proposing that the world should redefine UTC to be TAI
               | with a permanent fixed offset, which is functionally
               | equivalent to just using TAI.
               | 
               | That is effectively proposing the deletion of the most
               | commonly used time system of the three primary time
               | systems from existence and forcing everybody and all
               | existing systems that use it to convert to what is
               | effectively TAI.
               | 
               | That is not mundane. Mundane is arguing that everybody
               | should use TAI. Arrogant is arguing that we should force
               | everyone to do it by redefining their dependencies under
               | them.
        
               | ncmncm wrote:
               | That is the smallest change that eliminates all the pain.
               | 
               | Arrogant is imposing a big nuisance on everyone every
               | year or two. It is not arrogant to ask for a nuisance
               | affecting millions to be dropped.
        
               | Veserv wrote:
               | No, it is a change that breaks everybody using UTC
               | correctly, TAI with a offset to synchronize with UT1, in
               | order to fix everybody who did not know what they were
               | doing and used UTC when they actually wanted TAI.
               | 
               | If there was a scheme that fixed only the wrong usages,
               | that would be fine. But, it is frankly absurd that we
               | should even consider breaking carefully designed programs
               | correctly using their dependencies to fix programs
               | incorrectly using their dependencies especially when it
               | is trivial for the wrong usages to be fixed manually.
        
               | ncmncm wrote:
               | They will _still_ be using UTC. Just, without bugs that
               | show up every year or two.
               | 
               | Not announcing any more leap seconds will break exactly
               | nothing.
        
               | Veserv wrote:
               | No, UTC is TAI kept in sync with UT1. Changing UTC to
               | being TAI with a offset is a fundamental breaking change
               | in what it means. Anybody relying on UTC doing what it is
               | designed and advertised to do, keep in sync with UT1,
               | will be broken. The only people who will not be broken
               | are people using UTC incorrectly as TAI. The only reason
               | this is interesting is that basically everybody uses UTC
               | incorrectly as TAI, but that is not a valid excuse to
               | break the programs using it correctly.
               | 
               | People using the wrong dependency should fix their system
               | to use the right dependency. They should not campaign to
               | steal the name and replace it, that is absurd.
        
               | ncmncm wrote:
               | Literally nobody depends on any relationship between UTC
               | and overhead sun angle.
               | 
               | The only people who care or need to _do not use_ UTC.
               | They use TAI, and a separate continuous log of fractional
               | seconds.
               | 
               | UTC has one role, and that is Standard worldwide civil
               | time. Telling people who need Standard civil time to use
               | TAI makes everything strictly worse: not only do you then
               | not match most of the world, but you _still_ have to
               | track irregular, unpredictable corrections to be able to
               | sync with everybody else.
        
         | zozbot234 wrote:
         | There's no need to "detach" from UTC. Just ensure that TAI
         | (which is consistently free of leap seconds) is also supported
         | on an equal status to UTC, for applications where it makes the
         | most sense. Conflating the two would only increase confusion
         | further.
        
           | LeoPanthera wrote:
           | Programmers can _already_ do this if they want to. TAI
           | already exists. But they 'd have to still display UTC as
           | civil time to end users and I'm pretty sure they don't want
           | to do that either because it would mean just as much code.
        
             | ncmncm wrote:
             | Yes. A different number, but you still have exactly all of
             | the same problems as before.
        
             | prpl wrote:
             | the hard thing about TAI is that it's not properly
             | supported in DBMS, RFC 3339/ISO 8601, etc... This makes it
             | hard to use. It's actually easier to use MJD represented as
             | a double.
        
           | uoaei wrote:
           | "Make two parallel time systems and allow conversion between
           | one and the other programmatically" reduces spiritedly and
           | unambiguously to "use one time system and care for it
           | programmatically".
           | 
           | By precedent, UTC seems the logical choice for the one time
           | system.
        
             | zozbot234 wrote:
             | But the whole point of the OP is that UTC has leap seconds,
             | which are hard to manage programmatically - and may even be
             | impossible, wrt. future dates and times. That's literally
             | the one relevant difference between UTC and TAI.
        
               | ncmncm wrote:
               | There is no need for UTC to continue inserting leap
               | seconds. When they commit to stopping, everybody can
               | relax: irritation removed.
               | 
               | Telling people to use TAI is telling them to have a
               | different time from everybody else. The whole point of
               | civil time is specifically that other people use it.
               | Using TAI does not free anybody, because anytime you need
               | to interact with outside, you are back in the nightmare.
        
         | zJlG wrote:
         | I'm honestly amazed to see so many people agree with this.
         | 
         | Timestamps are exactly what we define them to be. There is no
         | correct and incorrect.
         | 
         | One option is to have a system with arbitrary unpredictable
         | leaps to keep it synchronized to within 1 second of the mean
         | solar time over Greenwich, England. Every computer system that
         | has to deal with time accurately needs a lookup table for leap
         | seconds that is occasionally amended, with only a couple months
         | warning in advance.
         | 
         | Another option is to just let the clock run at a constant rate.
         | In this case only astronomers have to keep track of the
         | difference between solar time and clock time (which they
         | already do anyway).
         | 
         | The fact that the difference will increase to an hour after
         | several hundred years is utterly irrelevant. If people in the
         | future care, they can simply adjust the timezone definitions to
         | compensate, since timezones are already adjusted all the time.
        
         | modeless wrote:
         | These "problems" are trivial. The day changes at midnight which
         | is 12:00 AM by the clock. There is no ambiguity. Midnight is
         | not literally the middle of the night. The minute on the clock
         | will be correct by definition, nothing will change. Sundials
         | are already wrong. You'll need to try a lot harder to convince
         | me that this is a bad idea.
         | 
         | All these arguments based on sun position make no sense in a
         | world where people already live in places where the sun
         | literally never sets or never rises for months, and people
         | already live in time zones offset many, many hours from
         | "correct" time. The sky doesn't fall!
        
         | [deleted]
        
         | [deleted]
        
         | 3pt14159 wrote:
         | If you stop thinking about time being wrong from what is
         | officially correct, and instead see this whole exercise as a
         | error minimization framework I think it is far easier to make
         | the case for ending leap seconds as it is for keeping them.
         | 
         | This isn't _just_ about lines of missing code. This is about
         | forcing subterranean or submerged computers to surface. This is
         | about out of sync clocks across information propagation
         | networks across planets. This is about real lives that are
         | ruined because time stamps didn 't quite line up, causing
         | delays, deaths, and needless headaches.
         | 
         | It doesn't need to be this way. We could just accept a minute
         | of the clock being off from "true" midnight, which doesn't even
         | make sense to me given that few people are right at the
         | astronomic point where midnight is "true" midnight for their
         | timezone. Heck, China is _one big giant timezone_ so who is
         | this actually for, really? The people that care about sundials?
         | Most people don 't even grow their own food.
         | 
         | We're no longer a sun-driven economy. Well coordinated
         | timekeeping across devices that may not always be able to
         | transfer data is far, far more important. If it's sufficiently
         | wrong by the year 3422 then we'll deal with the fifteen minutes
         | of annoyance then. This is a crazy premature optimization.
        
           | toast0 wrote:
           | > Well coordinated timekeeping across devices that may not
           | always be able to transfer data is far, far more important.
           | 
           | How do you have a well coordinated clock without being able
           | to get four bits [1] per year of leap second data? It's hard
           | to keep within one second of a time standard over 6 months or
           | a year without communication.
           | 
           | [1] bit 0: was there a leap second in the most recent period,
           | bit 1: was it positive or negative; bit 2: will there be a
           | leap second at the end of the current period, bit 3: will it
           | be positive or negative. Bike shed my fictious encoding if
           | you like, but it's good enough. Use a whole 8-bits, go wild.
        
             | aftbit wrote:
             | Cesium reference clocks can operate with accuracy around
             | 10^-14 (aka 0.01 parts per trillion). In a year, a cesium
             | clock would slip by a few tenths of a microsecond. That
             | said, the whole "submerged computer must surface" thing is
             | a bit of a red herring argument IMO. What use case would
             | you have for needing to keep time in sync within seconds
             | with the outside world, but being unable to communicate
             | with that world? If you're trying to plan simultaneous
             | delayed action across the world, it would suffice to merely
             | be in sync with each other, leap seconds ignored.
        
             | fanf2 wrote:
             | My encoding uses about 2.5 bits per year https://dotat.at/c
             | gi/git/leapsecs.git/blob/HEAD:/doc/spec.md
        
         | btilly wrote:
         | We live in a world where civil time moves by an hour 2x a year
         | for no good reason.
         | 
         | You FAR overstate the impact on civil society of failing to
         | change it by a second every so often.
         | 
         | Ironically even astronomers, who leap seconds were originally
         | for, don't benefit because they need to know the Earth's
         | rotation accurately to subsecond levels.
        
         | walnutclosefarm wrote:
         | I don't see how you run into legal problems. The break from one
         | day to the next still occurs at a well defined time, 23:59:59 +
         | 1 second, or 00:00:00. Midnight isn't the middle of the night
         | (or noon exactly at solar zenith), except on 15deg meridians
         | anyway. What will happen is that over time, those "golden"
         | meridians will shift slightly. The only people who will notice
         | are those that are using time for celestial navigation.
         | Terrestial navigation, which is almost entirely done with GPS
         | these days, won't be affected at all (GPS already doesn't use
         | leap seconds). And, yes, sundials will gradually get out of
         | sync, and have eventually to be rotated on their axis to be
         | right.
        
         | lesam wrote:
         | Sundials are already 'wrong' according to solar time by 30
         | minutes or more, as an artifact of dividing the world into
         | hour-wide time zones.
         | 
         | Astronomy already ignores leap seconds in the same way that
         | modern finance ignores half-crowns and shillings.
        
           | welterde wrote:
           | Astronomy very much relies on the leap seconds. If they ever
           | get abolished it will create lots of headache for all
           | observatories (and hobby astronomers as well), since the
           | telescopes will point more and more incorrectly as UTC drifts
           | away from UT1 (the leap seconds ensure UTC is always within
           | 0.9s of UT1).
           | 
           | To explain a bit further: UT1 tracks the Earth's rotation
           | relative to distant quasars and is thus directly the correct
           | clock/reference to use for pointing telescopes. However it
           | doesn't advance at a nice and stable constant frequency, but
           | something that slowly changes over time (and can shift by
           | strong earthquakes) and thus we approximate it with UTC,
           | which runs at a nice constant frequency, but needs occasional
           | correction to match up with Earth's rotation.
        
             | philwelch wrote:
             | I think we can allow astronomers to keep their leap seconds
             | without requiring them to be imposed on the entirety of
             | civil society.
        
               | welterde wrote:
               | Why should all purpose be removed from UTC if the
               | alternative without leapseconds (TAI) already exists?
               | Just use that if you don't want leap seconds.
        
               | ncmncm wrote:
               | Because UTC _already_ has no other purpose than to be
               | what everybody is already using. The leap seconds in UTC
               | benefit literally nobody. But being a standard _is_ a
               | purpose.
               | 
               | Changing to TAI means you are different from everybody
               | else, and _still_ have to fool with leap seconds to know
               | what everybody else is using. Worst of all worlds.
               | 
               | (Except Google smearing, which is even worse than that.)
        
               | welterde wrote:
               | That's literally not true, since we astronomers do use
               | UTC as it is intended (since within 0.9s of the correct
               | time is good enough, but being many seconds off isn't
               | anymore for many applications). The argument that the
               | legacy systems should maybe be updated is already being
               | discussed elsewhere, so no need to rehash that.
        
               | lovecg wrote:
               | Well, having worked on legacy systems it's much easier to
               | keep the existing protocol mostly unchanged than migrate
               | the world to a different protocol. Even if the change is
               | as "simple" as subtracting a constant integer everywhere.
               | Just thinking about all the stored timestamps in all
               | databases gives me a headache...
        
         | Animats wrote:
         | > It's frustrating that programmers want to redefine civil time
         | just because it is "hard".
         | 
         | Yes. Problems with delay time going negative usually come from
         | not using CLOCK_MONOTONIC for delay time. CLOCK_MONOTONIC is
         | usually just the time since system startup. It comes from QNX
         | (which, being hard real time, had to deal with this first),
         | made it into the POSIX spec around 1996, and is now available
         | on all major OSs. But there's still software that uses time of
         | day where CLOCK_MONOTINIC is needed.
         | 
         | Then there's the smoothing approach. This document described
         | Facebook's smoothing approach, which has a different smoothing
         | period than Google uses.
         | 
         | * Facebook/Meta: "We smear the leap second throughout 17 hours,
         | starting at 00:00:00 UTC based on the time zone data (tzdata)
         | package content." This is puzzling. What does the time zone
         | package have to do with UTC?
         | 
         | * Google: 24-hour linear smear from noon to noon UTC.[1]
         | 
         | * AWS: Follows Google.
         | 
         | * US power grid: Starts at midnight UTC and takes a few hours
         | while all the rotating machinery takes 60 extra turns to catch
         | up.
         | 
         | Not sure what telecom is doing.
         | 
         | [1] https://developers.google.com/time/smear
        
           | jsmith45 wrote:
           | > What does the time zone package have to do with UTC?
           | 
           | The IANA TZ database includes information about leap seconds,
           | and even supports the concept of "right" time zones in which
           | the leap seconds are counted in the Unix timestamps. (Which
           | violates the unix spec, and may cause problems with code that
           | assumes it can do path like `1 day= 24*60*60`, but on the
           | other hand, things like DST already make that unsafe).
           | 
           | It is mostly likely simply the case that they are using the
           | leap second data from the time-zone database as a convenient
           | source of this data.
        
             | Animats wrote:
             | Ah. So that's where the leap second schedule is stored.
        
               | ncmncm wrote:
               | There is no schedule. Just a history of ad hoc
               | announcements.
        
           | cpeterso wrote:
           | > Facebook/Meta: "We smear the leap second throughout 17
           | hours
           | 
           | Why 17 hours instead of 12 or 24? Something to do with 17
           | being a prime number or some convenient divisor?
        
       | layer8 wrote:
       | A large part of the problem is that in software there is a
       | traditional conflation of (a) time marks to measure elapsed time
       | and (b) events where we want to know what their wall-clock
       | date/time is. Those should in principle be kept separate. One can
       | use a monotonic elapsed-time clock for the former and a
       | calendar/wall-clock based clock for the latter. Conversion
       | between the two shouldn't be done gratuitously, and have to be
       | done with the awareness that the mapping to future wall-clock
       | dates (and sometimes also to past ones) is subject to change.
       | APIs and data types reifying that distinction would be helpful.
        
         | ncmncm wrote:
         | I.e., add huge complexity to everything for no benefit to
         | anyone.
        
           | layer8 wrote:
           | As long as you have timezones that change over time, and e.g.
           | DST changes, you have the complexity anyway. It is all simply
           | an expression of the fact that (a) earth's rotation and
           | movement around the sun isn't a steady clockwork with
           | subsecond precision, and (b) timezones and calendars are a
           | subject of political decision-making.
           | 
           | It's therefore just not possible to easily equate coordinates
           | of civil time with physical time, and the related facilities
           | in software development shouldn't project an illusion to the
           | contrary.
        
             | ncmncm wrote:
             | Geographic time zones are a completely separate matter.
             | Dragging them in just muddies the water.
             | 
             | The topic here is worldwide standard time, literally the
             | same for everybody, and whether a million programs obliged
             | to make tiny adjustments to it on a random, unpredictable
             | schedule was a good idea.
             | 
             | Anything fiddly and unpredictable a million programs have
             | to get right will instead be got wrong.
        
       | wyuenho wrote:
       | This post brings back horrors when I was trying to figure out
       | from the logs why there was a sudden doubling of requests and
       | orders on 2016-12-31:23:59:59. This is the time I learned that
       | Linux does not distinguish the leap second from the second before
       | it. This led me down to a rabbit hole of reading up on what the
       | representation of a leap second was and found that there was none
       | for Linux timestamp. Fortunately, this was in December 2019. I
       | can only imagine the pain SREs had to suffer from on 2017's New
       | Year's day on top of Cloudflare going down.
        
       | jheitmann wrote:
       | Why does ntpd lose the smear on a restart? I would have thought
       | that the current smear could be calculated purely based off
       | current non-smear time, plus the config to say when to smear,
       | which is presumably available upon restart.
       | 
       | Also, why were non-linear smears thought to be desirable?
       | Googling just turns up hand-wavy phrases like "easier on
       | clients".
        
         | hocuspocus wrote:
         | I came to the comments for the same question about non-linear
         | smearing.
         | 
         | I found more details and motivation in this article:
         | https://developers.redhat.com/blog/2015/06/01/five-different...
        
         | randyrand wrote:
         | Ya this sounds like bad design.
         | 
         | > current non-smear time
         | 
         | This is the server that keeps that time! ;)
         | 
         | But IMO, the time keeping device should be a separate hardware
         | module with battery backup that is never is restarted.
         | 
         | The computer should not be keeping time to begin with.
        
         | almog wrote:
         | That was my thought too, pointing out why NTP smearing might be
         | fragile is a crucial point in any argument against leap
         | seconds, and the reasoning in this post are lacking (regardless
         | of the conclusion's correctness).
         | 
         | My only guess is that because smearing takes place at Stratum
         | 2, if the network partitions part of the NTP servers downstream
         | (Stratum 3+), they'll have an offset as large as T/(17 x 3600)
         | (T being the partition duration in seconds). Yet I guess it
         | must be something else for I cannot see why that won't be
         | tolerable.
         | 
         | More generally AFAIK the NTP RFC does not include smearing
         | period, which is why the best practices are to only use
         | smearing in a well controlled environment rather than on public
         | facing NTP networks, but why is this not something that can be
         | fixed? I'm not sure.
        
       | mritun wrote:
       | A million problems started when system clocks were changed to
       | follow UTC (as opposed to local time) and then UTC was conflated
       | with Unix time - a fixed monotonic reference, which UTC is not!
       | 
       | Though the ship has sailed, I think it could have been much
       | better if computers were set to follow TAI Time (atomic clock
       | time - unaffected by leap seconds) time than the UTC. UTC is as
       | variable as localtime and should have been treated as such.
       | 
       | If fb wants to - they can (and should) use TAI time for system
       | reference.
       | 
       | TAI : https://www.nist.gov/pml/time-and-frequency-division/nist-
       | ti... edit: link
        
         | ncmncm wrote:
         | The ship has not, in fact, sailed: UTC could abandon leap
         | seconds _any time_. They just need to announce there won 't be
         | any more, for the foreseeable future. Along about 2100 they
         | might announce plans for a correction in 2125 or so.
        
         | kosherhurricane wrote:
         | It seems the problem of adopting TAI for computers is because
         | the NTP protocol does not provide the offset. We should add
         | TAI-UTC offset to the NTP protocol.
        
         | vesinisa wrote:
         | This sounds like a sensible solution. If Facebook wants to
         | start using non-UTC time coordination, like TAI, they by all
         | means should try it. They only need to publish their own NTP
         | servers I guess, but that shouldn't be a big problem for an
         | organization of their size.
         | 
         | As far as I can tell, TAI will always be offset from UTC by an
         | integer amount of full seconds, and I guess time coordination
         | between large independent systems is mostly useful just when
         | comparing log timestamps (I would guess almost all sensible
         | software uses already account for much larger clock drifts than
         | the current leap second count of 37, right?)
         | 
         | After adopting TAI, Facebook engineers just need to remember
         | that their log timestamps are offset by N seconds from all the
         | others.
        
           | ncmncm wrote:
           | Not all the others. Just those who have not made the
           | similarly wise choice.
        
         | NovemberWhiskey wrote:
         | Unix time is definitely not a fixed monotonic reference; in
         | fact it's defined explicitly to exclude leap seconds in the
         | count since the epoch...
        
         | kosherhurricane wrote:
         | I totally support this. In fact, I would say all computer
         | systems should just use TAI, and display UTC to the user.
         | 
         | Someone should fork the NTP protocol to use TAI instead, and go
         | from there (or at least provide tai offset).
        
           | joerichey wrote:
           | This is actually what the Precision Time Protocol (PTP) does.
           | It's the successor to NTP, so it improves on some of NTP's
           | mistakes. The protocol uses TAI, but also sends the TAI-UTC
           | offset so the computer can display times in UTC.
           | 
           | https://en.wikipedia.org/wiki/Precision_Time_Protocol
        
             | luhn wrote:
             | Why does the time protocol need to send the UTC offset,
             | rather than have the offset be part of system data files,
             | like with timezones? Wouldn't you need the data anyways to
             | translate historical timestamps to UTC?
        
               | mongol wrote:
               | Seems like a simple and accurate way to handle it.
        
               | SkeuomorphicBee wrote:
               | Those are two different problems that require two
               | different solutions:
               | 
               | 1. Displaying current time: for that ideally you need the
               | offset directly from the time server because the system
               | timezone data can be out of date in regards to current
               | time.
               | 
               | 2. Displaying historical timestamps: for that you use the
               | system timezone file.
        
               | kosherhurricane wrote:
               | I think this is the argument NTP makes for not including
               | the offset. TAI can be just another "timezone", so that
               | TZDATA should be to used it to derive it.
               | 
               | But that's backwards. A Stratum 1 NTP usually gets its
               | data from GPS, which HAS the offset (GPS runs TAI). But
               | it only outputs UTC, but not the offset, making other
               | programs compute it from TZDATA. Why is NTP making user
               | programs harder to get the data that IT ALREADY HAS?
               | Because philosophically, NTP is married to UTC (even
               | though NTP is mostly for computers!)
               | 
               | And providing this offset would basically get rid of a
               | large body of people (like the TFA) who wants to CHANGE
               | the definition of UTC, which is a more drastic proposal.
        
             | fanf2 wrote:
             | PTP and NTP have completely different scopes: PTP requires
             | end-to-end layer 2 support and hateful choice of hardware,
             | so it can only work within a single network; NTP on the
             | other hand was always designed to work across the internet
             | between different organizations, where the network doesn't
             | help with timekeeping and the organizations don't work
             | closely with each other.
        
       | bloak wrote:
       | This topic keeps coming up and I'm not sure I want to read all
       | the comments just in case someone has written something that
       | wasn't written last time it was discussed.
       | 
       | Personally, I would like to keep leap seconds. The only change I
       | would make is to demand a longer notice period: 18 months instead
       | of 6 months would be good. Presumably that would mean we'd have
       | to tolerate a slightly bigger difference between UTC and UT1 but
       | that seems all right.
       | 
       | It would be stupid and irresponsible to abolish leap seconds
       | without deciding on and implementing an alternative way of
       | keeping time, and therefore the calender, in phase with the cycle
       | of daylight. There are alternatives (leap minutes, redefining the
       | second, ...) but to me they all seem a lot worse than leap
       | seconds.
       | 
       | Of course, whatever we do in the future, software will still have
       | to handle leap seconds for processing timestamps in the past so
       | any change to the system would mean that most software gets more
       | complex.
        
       | Asmod4n wrote:
       | Will satnav become unusable when leap seconds get abolished?
        
         | ncmncm wrote:
         | No. GPS (which I assume you mean) is already based on TAI.
        
       | makeworld wrote:
       | This article includes a Go code example:                 start :=
       | time.Now()              // do something              spent :=
       | time.Now().Sub(start)
       | 
       | It's worth noting that the Go time library is specifically
       | designed so that computer clocks running backwards won't cause
       | `spent` to be a negative duration. A monotonic clock that only
       | ticks forward is used for time comparison and subtractions.
       | 
       | Source: https://pkg.go.dev/time#hdr-Monotonic_Clocks
        
         | klabb3 wrote:
         | Hehe, story time: I was using exactly this logic to detect
         | hibernation/sleep, especially for laptops. I was surprised when
         | it never triggered, and printed the time, which indeed showed
         | that a long time had passed. So why didn't it trigger? Because
         | IFF both time stamps have monotonic component (internal, not
         | visible on print) then the monotonic stamp is used. Confused me
         | a lot.
         | 
         | One man's bug is another man's feature.
        
       | ForHackernews wrote:
       | Counterproposal: Facebook turns off their servers during the next
       | leap second.
        
       | mro_name wrote:
       | IMO it's time to leave fb in the past.
        
       | gmiller123456 wrote:
       | This periodic adjustment mainly benefits scientists and
       | astronomers as it allows them to observe celestial bodies using
       | UTC for most purposes
       | 
       | This is incorrect, dealing with leap seconds is a major problem
       | in astronomy, requiring a data file or even recompile any time
       | there is a new one announced. Since they are only ever announced
       | 6 months in advance, it creates a lot of logistical problems.
       | 
       | Astronomy algorithms usually work in Barycentric Dynamic Time, or
       | Terrestrial Time, or UT1. In reality the whole invention of UTC
       | is so that people don't have to deal with those systems on a
       | daily basis.
       | 
       | The process most astronomy programs go through is to get the UTC
       | from the user, convert the Gregorian date to a Julian day number
       | to get rid of the Gregorian Calendar altogether. Then look up the
       | number of leap seconds, add those to the JD to get International
       | Atomic Time, then add 32.184 seconds to get Terrestrial Time. If
       | Barycentric Dynamic Time is needed, you must first compute the
       | velocity of the Earth relative to the solar system barycenter
       | (which itself requires TDB), then compute the relativistic
       | effects of that motion on Terrestrial Time. If you need UT1,
       | these can only be obtained by observation from the International
       | Earth Rotation Service, and required daily updates, and
       | interpolation of values in between observations.
       | 
       | So, as you can see, leap seconds do nothing to make an
       | astronomer's life easier. In fact, we jump through a lot of hoops
       | to make the average person's life easier. It sounds like Meta
       | wants to change the definition of time for everyone just to make
       | their programming a little easier. I find the very premise just
       | out right ridiculous.
       | 
       | It's true that your average person will not be affected by the
       | Sun setting a few seconds earlier. But eventually it will build
       | up enough error that it eventually has to be addressed, and Meta
       | is just trying to make their problem someone else's problem.
        
         | salty_biscuits wrote:
         | I always heard that the main reason for the leap second was
         | that the british didn't want the prime meridian moving away
         | from Greenwich (i.e. it is a weird political thing).
        
         | oconnor663 wrote:
         | The article makes the same point a couple of sentences later:
         | 
         | > these days UTC is equally bad for both digital applications
         | and scientists, who often choose TAI or UT1 instead.
        
           | gmiller123456 wrote:
           | UTC was never to make astronomy applications easier. The only
           | thing that has changed is that cheap computers make it easier
           | for astronomers to use UTC as a starting point.
        
             | ncmncm wrote:
             | Then it was for nobody. Astronomers find UTC leap seconds
             | as much a nuisance as everybody else.
        
         | willis936 wrote:
         | It's not just a headsche for Meta's programmers. Anyone
         | involved with bookkeeping and synchronizing has an unnecessary
         | bugbear to deal with. Every six months is simply too often. If
         | it was switched to an adjustment made every 2-10 decades with
         | at least a decade to update the file then the problem would be
         | greatly lessened.
        
           | msbarnett wrote:
           | > Every six months is simply too often. If it was switched to
           | an adjustment made every 2-10 decades with at least a decade
           | to update the file then the problem would be greatly
           | lessened.
           | 
           | You seem confused. It doesn't _happen_ every 6 months, it
           | gets announced 6 months in advance - since we know there won
           | 't be one this year, it will have only happened twice total
           | in the 10 years prior to December this year.
           | 
           | That's _hardly_ an enormous and constant disruption - turning
           | it in to a multi-minute disruption  "every 10 decades" would
           | likely be _more_ concentratedly disruptive, leading to more
           | calls to put it off to avoid the immediate pain, leading to
           | ever-more accumulated error.
           | 
           | Spreading the pain out into a leap second every few years
           | feels like a much better and more sustainable solution. This
           | keeps processes in-use and up-to-date rather than long-
           | forgotten-and-everyone-who-knew-them-is-dead.
        
             | ncmncm wrote:
             | I guess you also brush 3 teeth in each of 11 interruptions
             | thoughout your day, and again all night.
        
               | aftbit wrote:
               | I guess you brush your teeth for one hour once a month.
        
             | BurningFrog wrote:
             | It's moved 7 seconds the last 25 years, so over 10 decades
             | it should be about 28 seconds, not a multi-minute
             | disruption.
             | 
             | Source: https://endruntechnologies.com/support/leap-seconds
        
             | [deleted]
        
           | gmiller123456 wrote:
           | It isn't every six months, the Earth doesn't rotate that
           | regularly. They are introduced "at most" every 6 months, but
           | usually far less. There have been 27 leap seconds since 1972,
           | so less than one a year.
        
             | msbarnett wrote:
             | 27, not 37
        
               | gmiller123456 wrote:
               | Thanks, I corrected it.
        
           | hannasanarion wrote:
           | Palestine switched off Daylight Saving Time this year with
           | only 4 days notice.
           | 
           | Anyone involved with bookkeeping and synchronizing should
           | already know to never attempt to handle time conversions
           | using your own program logic updated by hand, because the
           | definition of time is constantly changing and there are
           | already projects like tzdata dedicated to centralizing the
           | handling of it.
           | 
           | There have already been 5 time zone updates this year, 4
           | changes to the date that Palestine switches daylight savings
           | (one of them with only four days notice!) and Fiji decided to
           | quit using daylight saving time, plus the Leap Second
           | announced on July 9.
        
             | alerighi wrote:
             | That is a different problem. You usually work with
             | timestamps and then convert the time to local time only
             | when displaying it or doing calculations that depend on the
             | particular timezone. So it's less of a problem, since at
             | lower levels you don't have the concept of timezone (you
             | may never have it, for example on embedded devices).
             | 
             | But if UTC shifts, it's another story. You assume the UTC
             | (or UNIX) time to be a monotonic counter, and usually it's
             | used this way, for example you compare two timestamps to
             | know what definitively happened before another thing.
             | Surely you don't take into account leap seconds... this is
             | the problem.
             | 
             | Leap seconds wouldn't be that much of an issue if the time
             | is only increased, you have one more second, it's the
             | higher level implementation that has the concept of time to
             | (maybe) deal with it. But they become an issue if they can
             | take behind the UTC clock since it can generate all sort of
             | strange bugs.
             | 
             | It's even a worse solution to make the duration of a second
             | in a day longer or shorted, because you preserve the
             | counter value, but you no longer can rely on the fact of 1
             | seconds being 1000ms long!
             | 
             | By the way the concept of leap second is nonsense to me.
             | What is the purpose? If the purpose is to keep in sync the
             | time with the rotation of the earth, nobody will ever
             | notice an error of a couple of seconds, or even minutes. It
             | makes more sense to take the current definition of a
             | second, and then wait till the error is noticeable to an
             | human being (let's say an error of 15 minutes, that would
             | take centuries and we will probably far gone from the
             | planet) and adjust it by shifting all the timezone for that
             | amount of time.
        
               | a9h74j wrote:
               | > and adjust it by shifting all the timezone for that
               | amount of time
               | 
               | Does this follow as a question?: Shift the timezones
               | geographically, or in terms of how they all define [true
               | monotonic] to local-time translation?
        
             | yyyk wrote:
             | Reminds me of this story:
             | 
             | https://darwinawards.com/darwin/darwin1999-38.html
        
           | aeyes wrote:
           | Why is this too often? We already need to update tzdata
           | continuously.
           | 
           | The problem is that it is not often enough to force you to
           | have a good process in place.
        
             | vbezhenar wrote:
             | So another option is to adjust to 1/100 second every few
             | months, so good processes will have to appear, one way or
             | another.
        
         | tablespoon wrote:
         | > It sounds like Meta wants to change the definition of time
         | for everyone just to make their programming a little easier. I
         | find the very premise just out right ridiculous.
         | 
         | It's also incredibly common attitude amongst software engineers
         | and software engineering organizations. "Simplify" often means
         | push complexity off of us and onto others.
         | 
         | > ...Meta is just trying to make their problem someone else's
         | problem.
         | 
         | Exactly right.
        
         | yunohn wrote:
         | Even NIST (1) claims that leap seconds are added to sync UTC
         | with IAT.
         | 
         | Your point is that astronomical systems don't use IAT directly
         | but instead start with UTC and convert across various other
         | systems? Could be, but then the purpose of UTC syncing was lost
         | somewhere. Any idea why?
         | 
         | (1) https://www.nist.gov/pml/time-and-frequency-division/leap-
         | se...
        
           | zokier wrote:
           | Navy celestial navigation. Naval almanacs by necessity were
           | based on rotation of earth, so that was the timescale that
           | naval organizations broadcast across the earth to support
           | their ships. Eventually that radio broadcast time morphed
           | into UTC, and then was repurposed as general-purpose civil
           | time.
        
         | jefftk wrote:
         | _> So, as you can see, leap seconds do nothing to make an
         | astronomer 's life easier. In fact, we jump through a lot of
         | hoops to make the average person's life easier. It sounds like
         | Meta wants to change the definition of time for everyone just
         | to make their programming a little easier. I find the very
         | premise just out right ridiculous._
         | 
         | Meta (and everyone else behind this proposal) are arguing that
         | leap seconds are more trouble than they're worth. Just as you
         | are in the specific case of astronomy.
        
           | bnjms wrote:
           | > But eventually it will build up enough error that it
           | eventually has to be addressed
           | 
           | I also misread their argument until this point. But there is
           | no reading that makes sense except that Meta's programming
           | problems protect everyone else from dealing with the drifting
           | time.
           | 
           | I think this is right. There will still be calculations for
           | sunrise and sunset which will have to make the calculations.
        
             | teknopaul wrote:
             | Seconds don't matter for sunset and sunrise to humans. Move
             | a bit and your off no matter what timezone you are in. If
             | you need really really precise sunset and sunrise leap
             | seconds don't help. You are more likely to hit a bug than
             | be helped by them. I'm all for ending leap seconds and
             | ending daylight savings while we at it. In Spain, in
             | summer, some people start work at 08:00 or 07:00, no need
             | to change clocks to change habits.
        
           | gmiller123456 wrote:
           | All I did was make the argument that they didn't make an
           | astronomer's life easier, at no point did I say it was more
           | trouble that it's worth.
        
             | alecbz wrote:
             | You also said:
             | 
             | > It sounds like Meta wants to change the definition of
             | time for everyone just to make their programming a little
             | easier. I find the very premise just out right ridiculous.
             | ... Meta is just trying to make their problem someone
             | else's problem.
             | 
             | Meta's argument is: we should get rid of leap seconds
             | because even though they're helpful for astronomers,
             | they're bad for everyone else.
             | 
             | Your counterpoint was: Actually leap seconds are _also_ bad
             | for astronomers.
             | 
             | Which implies then that Meta is even more right to suggest
             | that we get rid of leap seconds, because it seems like they
             | help nobody.
        
               | panda-giddiness wrote:
               | Their point is that Meta's argument is a straw man.
        
               | alecbz wrote:
               | It's not really a straw man because Meta's not really
               | attacking that position, they're ceding that point.
               | 
               | Like a straw man would be Meta saying "astronomers think
               | that leap seconds are helpful but in fact they're not
               | useful for anything!"
               | 
               | Here, if anything, Meta is attempting to steel man leap
               | seconds a bit by saying "look, sure, leap seconds are at
               | least useful for some things, like astronomy, but they're
               | still not worth it overall". And GP is claiming that it's
               | not a very good steel man because even astronomers don't
               | like leap seconds.
        
               | panda-giddiness wrote:
               | But Meta's not _actually_ ceding the point. They 're
               | essentially arguing that (1) leap seconds are an esoteric
               | concept that only astronomers care about, and that (2) we
               | shouldn't care about their esoteric concerns, so (3) we
               | should therefore dispose of leap seconds.
               | 
               | The GP's point is that astronomers find leap seconds
               | annoying too, so Meta's argument is based on a faulty
               | premise.
        
               | alecbz wrote:
               | Ok sure, I don't think I quite got that from what GP
               | wrote, but I can see that as a valid argument: "There
               | _are_ actually valid uses for leap seconds, but just not
               | within astronomy. Meta 's claiming that leap seconds were
               | made for astronomy so that we assume that's why they
               | exist and ignore the other _real_ reasons leap seconds
               | exist and the benefits they provide. "
        
               | panda-giddiness wrote:
               | Yup, that's precisely how I interpreted GP's comment.
        
               | ncmncm wrote:
               | They do not provide any.
               | 
               | Unless it is "programmers' employment assurance".
        
               | ncmncm wrote:
               | No. Astronomers deal with the problem leap seconds
               | pretend to do with their own, more precise methods.
               | 
               | If the actual leap seconds do not benefit astronomers,
               | _and_ do not benefit anyone else, they are purely a tax
               | on us all.
               | 
               | Abandon leap seconds in UTC, and _literally everybody_ is
               | better off. Even astronomers, who would go from managing
               | 3 time systems to just two.
        
               | VMG wrote:
               | It isn't. Metas argument is valid even ignoring
               | astronomers.
        
               | gmiller123456 wrote:
               | I can see how you'd read it that way, but my point was
               | that they were not invented for astronomers, with the
               | implication being the author didn't research the topic
               | thoroughly enough to be making recommendations.
        
               | jefftk wrote:
               | Astronomers have been one of the groups most vocal in
               | favor of retaining leap seconds:
               | https://www.nature.com/articles/423671a
        
               | ghshephard wrote:
               | You have one of my favorite comments on this entire
               | thread - so I'm interested in your thoughts on who leap
               | seconds are useful for, if not Astronomers (and clearly
               | not Meta).
        
               | gmiller123456 wrote:
               | They are useful for ordinary people. Without them, at
               | some point in the future people would go to work at 8am
               | at sunset and go to bed at sunrise. Leap seconds are a
               | way for everyone to agree to shift their schedules by 1
               | second to stay in sync with solar time. It's subtle
               | enough that most people don't even know they exist, nor
               | will it have an effect on most systems. Larger jumps
               | would be much more difficult to ignore, and smaller jumps
               | would be more frequent.
        
               | jefftk wrote:
               | How long from now are you talking about? Eyeballing it, I
               | think it would take us about a thousand years to get off
               | by an hour?
        
               | staticassertion wrote:
               | We change our clocks twice a year by an _hour_ I think we
               | could handle an hour every millenia.
        
               | gmiller123456 wrote:
               | The physical effort of setting a clock is not the issue.
               | Switching to "leap hours" would involve a good part of
               | the world living with about 9am sunrise (or a 3:30pm
               | sunset) for hundreds of years. It'd be a really hard sell
               | to say that's actually better. DST is adjusting to the
               | amount of daylight available, so there's not much of a
               | negative impact. Systems that need to be more accurate
               | just set their time zones to UTC. And one second every
               | year or so is far within the accuracy of a typical
               | computer clock, so anything that needs something better
               | is already going to have a complex time synchronization
               | system.
        
               | alistairSH wrote:
               | And, by some accounts, every time we do, auto deaths and
               | other _bad things_ increase for some period after the
               | change. Not to mention the weeks of bitching on either
               | side of the change about how bad /great the time change
               | actually is.
        
               | staticassertion wrote:
               | One second every thousand years.
        
               | jefftk wrote:
               | Do you mean one hour?
        
               | alecbz wrote:
               | In that case I don't think I understand what you mean by:
               | 
               | > Meta is just trying to make their problem someone
               | else's problem.
               | 
               | It sounds like you agree that leap seconds themselves are
               | a problem for people besides Meta?
        
               | [deleted]
        
         | exabrial wrote:
         | > Meta is just trying to make their problem someone else's
         | problem.
         | 
         | Business as usual
        
           | a9h74j wrote:
           | MAT -- Meta Adjusted Time. AFAIK 'mat' is also a [Sanskrit??]
           | word for truth.
        
         | emmelaich wrote:
         | That's in the article!
         | 
         | > _While the leap second might have been an acceptable solution
         | in 1972, when it made both the scientific community and the
         | telecom industry happy, these days UTC is equally bad for both
         | digital applications and scientists, who often choose TAI or
         | UT1 instead._
        
         | lucb1e wrote:
         | for anyone else wondering about TDB:
         | 
         | > Barycentric Dynamical Time (TDB, from the French Temps
         | Dynamique Barycentrique)
        
         | brandmeyer wrote:
         | > If you need UT1, these can only be obtained by observation
         | from the International Earth Rotation Service, and required
         | daily updates, and interpolation of values in between
         | observations.
         | 
         | The GPS CNAV messages (on L2C and L5) have support for the
         | Earth orientation parameters, but GPS isn't broadcast those
         | messages yet. Maybe we'll get them with the OCX deployment.
         | BeiDou 3 is transmitting the Earth orientation parameters now.
         | So this one tiny bit of your headache will get easier in the
         | near future as receivers start to forward these data along.
        
       | barnabee wrote:
       | There is literally no aspect of society, science, or culture that
       | I'm willing to buy into changing to make things easier for
       | software developers and tech companies (or in fact any companies,
       | but only tech companies seem to be arrogant enough to suggest
       | it). What an entirely backwards way of looking at the world.
       | 
       | If we can't deal with IT that improperly models the universe, the
       | right answer is not to change the world to be more like the
       | shitty naive model the software implements, it is to be less
       | dependent on the technology agreeing 100% with reality.
        
         | Beltalowda wrote:
         | But what benefit are leap seconds to "society, science, or
         | culture"? I've never seen one.
         | 
         | If the current drift would continue then we're talking about a
         | drift of 9 minutes every millennium; less than an hour for all
         | of recorded history (and it mostly likely won't continue as-is;
         | sooner or later we'll get negative leap seconds).
        
           | barnabee wrote:
           | The current situation doesn't need to benefit society to
           | oppose changing it for Facebook. Society, science, and
           | culture are not the result of some utilitarian optimisation
           | function, and that is precisely the reason to oppose changing
           | them simply to make some company's engineering slightly
           | easier (or even a lot easier).
        
         | jefftk wrote:
         | It sounds like you would have been opposed to the introduction
         | of timezones? They made everyone switch away from local solar
         | time, primarily for the benefit of railway timetables.
        
           | nrvn wrote:
           | This is me.
           | 
           | I want everyone to use UTC and align local lunch times to
           | solar noons.
        
           | barnabee wrote:
           | I'm not particularly attached to time zones, so perhaps I
           | would have opposed introducing them.
           | 
           | Sticking with local solar time in the age of jet planes would
           | have been _at least_ as much fun as daylight saving time.
        
       | dclaw wrote:
       | Delete facebook.
        
       | [deleted]
        
       | [deleted]
        
       | gumby wrote:
       | Strongly disagree. As the article itself points out, people who
       | need it can already use TAI or UT1.
        
       | amenghra wrote:
       | IMHO, leap seconds belong at the timezone layer. I.e. ignore it
       | internally and for things like "seconds since epoch". Adjust at
       | display time.
       | 
       | Timezones are already backed by a database which needs regular
       | updates, including leap seconds would make sense since those are
       | also updated in an unpredictable manner.
        
         | ncmncm wrote:
         | That is what we are all obliged to do already. It is a source
         | of headaches and bugs. That is what is being asked to drop.
        
           | amenghra wrote:
           | Not really. Time smearing isn't moving the leap second into
           | just a rendering thing.
        
             | ncmncm wrote:
             | Time smearing is its own bucket of nightmares.
        
       | benlivengood wrote:
       | The bigger problem is that UTC (and TAI) is defined in a gravity
       | well so it's not going to be very useful in the long run. GPS has
       | to correct its clocks to keep track of what we slow
       | Cesium/Rubidium down to on the surface, and Voyager's clock is
       | going even faster. We clearly want an Earth-centric time standard
       | for wall clocks and that is UTC. The Earth is not a precision
       | time-piece so we will always have to adjust our wall clocks to
       | its rotation. Realistically, we should probably be deriving a
       | time standard where every day has a slightly different length and
       | we record the timestamps of the beginning of each day relative to
       | a universal monotonic clock in a log (with rollups to years,
       | centuries, etc.) that we keep around as long as anyone cares
       | exactly how many Cesium vibrations have happened since $whence.
       | 
       | If we want to actually solve the problem then let's switch to an
       | interstellar time standard in a rest frame relative to the CMBR
       | as far outside of gravity wells as possible and make that the
       | universal monotonically increasing standard. Then computers can
       | run on that time standard and UTC and friends can be derivatives.
        
         | Enginerrrd wrote:
         | I'm not sure it matters. To synchronize, you'll have to make
         | corrections either way, and over sufficiently large scales,
         | signal propagation delays are going to be quite large.
        
           | benlivengood wrote:
           | Here my physics knowledge gets a little sketchy, but if we
           | have an accurate clock broadcasting on a known frequency
           | somewhere far away we should be able to at least measure the
           | drift between it and a local clock to arbitrary precision.
           | With ~zero drift we can measure the distance and relative
           | velocity very accurately with round-trip timing and Doppler
           | measurements, and from that measure the clock offset as
           | accurately as we can measure the distance. I think, but could
           | be wrong, that we'd always be measuring the spacetime
           | interval, not the euclidean distance in space, but that is
           | probably what we actually want once we start caring about
           | relativistic timekeeping.
        
         | a9h74j wrote:
         | > let's switch to an interstellar time standard in a rest frame
         | 
         | Timex(TM) Watches, now featuring Puslar(TM) Time.
        
         | Denvercoder9 wrote:
         | > let's switch to an interstellar time standard in a rest frame
         | relative to the CMBR as far outside of gravity wells as
         | possible
         | 
         | This won't work: since galaxies aren't static, and because the
         | universe expands, the point with the highest gravitational
         | potential ("as far outside of gravity wells as possible") will
         | both move w.r.t. the CMBR and have a gravitional potential that
         | changes over time.
        
           | benlivengood wrote:
           | Maybe I'm making a bad assumption that intergalactic space is
           | so flat that pretty much any region of it will do as a
           | reference. Since we can't reach those regions yet we'd still
           | be approximating it with our slower clocks, but it seems like
           | it's at least feasible.
        
         | ncmncm wrote:
         | Your proposal is to make the time Standard of billions of
         | people not match what they experience, on behalf of a few space
         | probes, none of which will use it.
        
       | mgaunard wrote:
       | Anyone doing precise timestamping uses TAI.
       | 
       | Converting to UTC is easy when you need it.
       | 
       | Meta's suggestion just shows how narrow-minded they are.
        
         | ncmncm wrote:
         | You have very evidently not thought it through, and are then
         | accusing others of it.
        
       | bakul wrote:
       | Wouldn't it be less of a disruption if we standardize how
       | smearing is done?
        
         | ncmncm wrote:
         | Smearing is overwhelmingly more disruptive than anything else
         | that has been done.
        
       | rossdavidh wrote:
       | Situation: there's a problem, and our current way of coping is
       | something we've done 27 times so far.
       | 
       | Reaction: let's stop using the system we have some practice at
       | doing, and instead open up the question again, but really just
       | have big tech corporations dictate to the world that we need to
       | do something else.
        
         | ncmncm wrote:
         | 27 times, _badly_. Every time, 27 times over, it has been a
         | serious hassle, for exactly zero benefit to anyone.
         | 
         | Choosing not to impose a hassle and source of bugs on millions
         | of people every year or two is _obviously_ correct.
         | 
         | Anyone who wants to use what astronomers use will still be free
         | to do that, without bothering literally everybody else.
        
         | jefftk wrote:
         | We may soon have the first negative leap second. This isn't
         | something we've ever done before.
        
         | SoftTalker wrote:
         | Might be before many people's memory here, but Swatch tried to
         | create an "internet time" in the late 1990s. Nobody uses it
         | because it doesn't solve any problems anybody has, it's just
         | different.
        
       | [deleted]
        
       | pbnjay wrote:
       | No mention that Go actually fixed the stdlib so that the code
       | shown won't have this issue again.
       | 
       | Some discussion of the issue and the fix implemented start around
       | here:
       | https://github.com/golang/go/issues/12914#issuecomment-26993...
        
         | ncmncm wrote:
         | Go cannot fix it in the library. It always leaks out.
        
       | exabrial wrote:
       | Which isn't why we created to Unix Epoch anyway? The number of
       | seconds since an arbitrary event, with no regard of the movement
       | of celestial bodies?
       | 
       | And isn't Unix Epoch derived from some sort of Atomic clock
       | standard? I can't remember, but it seems all of our systems time
       | should be atomic time, then you can derive UTC or whatever you
       | want from that.
        
       | ajaimk wrote:
       | Engineers whining about having to do work that was designed in
       | the past by someone else and coming up with a "creative" hack
       | which will be a headache for someone in the future.
        
         | ncmncm wrote:
         | You wholly miss the point. A million programmers have to all,
         | unanimously get a fiddly, hard to test detail right. Both those
         | that do and those that don't get periodically out of sync with
         | the other half, on a random schedule applied for no earthly
         | purpose.
         | 
         | Dropping any new leap seconds is choosing not to break a
         | million systems, irregularly, to no purpose. No code needs to
         | change. Things just stop breaking.
        
       ___________________________________________________________________
       (page generated 2022-07-25 23:00 UTC)