Please create an account to participate in the Slashdot moderation system

 



Forgot your password?
typodupeerror
×
Science Technology

Tech Giants Want To Banish the Leap Second To Stop Internet Crashes (cnet.com) 230

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. From a report: Since 1972, the world's timekeeping authorities have added a leap second 27 times to the global clock known as the International Atomic Time (TAI). Instead of 23:59:59 changing to 0:0:0 at midnight, an extra 23:59:60 is tucked in. That causes a lot of indigestion for computers, which rely on a network of precise timekeeping servers to schedule events and to record the exact sequence of activities like adding data to a database.

The temporal tweak causes more problems -- like internet outages -- than benefits, they say. And dealing with leap seconds ultimately is futile, the group argues, since the Earth's rotational speed hasn't actually changed much historically. "We are predicting that if we just stick to the TAI without leap second observation, we should be good for at least 2,000 years," research scientist Ahmad Byagowi of Facebook parent company Meta said via email. "Perhaps at that point we might need to consider a correction."

This discussion has been archived. No new comments can be posted.

Tech Giants Want To Banish the Leap Second To Stop Internet Crashes

Comments Filter:
  • There is absolutely no point in synchronizing the clock to the rotation of the Earth to within one second.

    • by msauve ( 701917 ) on Monday July 25, 2022 @09:02PM (#62733472)
      You've obviously never done any serious astronomy.

      There's no point in deliberately breaking the system of timekeeping which has been in use for millennia, just because someone can't code properly. Leap seconds have been around for over 50 years, they've had plenty of time to get it right.

      If someone doesn't want to deal with leap seconds, there are multiple timescales they can pick from (TAI, GPS...). But leave UTC alone, it is meant to closely track solar time.
      • A millenia is considerably longer than 50 years.
      • by FeelGood314 ( 2516288 ) on Monday July 25, 2022 @09:35PM (#62733552)

        You've obviously never done any serious astronomy.

        Time is far harder to get right in systems than many people assume. You have the time zones, daylight savings problems that everyone knows about. Then you have the event logs from multiple systems where the order of events makes no sense if someone's time stamps drift. And what if your time has drifted and you have timers and events that are supposed to go off during the drift interval. And don't get me started with events that go off during the shift in daylight savings. Or hourly billing when a day has 25 hours in it. And then there are leap seconds. I have to have a table somewhere saying which days they occurred so that my time since epoch matches human billing time. Except that table needs to be updated when a new leap second is added. Will I even be employed at the company the next time there is a leap second so as to create an over the air update. Will the update servers still even be reachable?

        Time is far far harder than most people realize. Anything to make it simpler is welcome.

        • Time is far far harder than most people realize. Anything to make it simpler is welcome.
          Time is hard, because it is hard.
          If there would be a way to make it simpler, one already had found one. Don't you think so?

        • by msauve ( 701917 ) on Monday July 25, 2022 @10:30PM (#62733646)
          > You have the time zones, daylight savings problems that everyone knows about.

          You're confusing timekeeping with the display of local time.

          >don't get me started with events that go off during the shift in daylight savings.

          So, don't schedule events based on "wall time." If you do, do it with the understanding that 2:30 AM can occur twice, or not at all.
          • It's not just "display" of local time, there are tons of systems out there, criticial infrastructure, that uses local time internally. Remember, Windows used localtime for a very long time as well ("We're Microsoft, we refuse to learn from the mistakes of others!").

            The advancement or retardation of time, even UTC time, is a real thing. Clocks drift, and you need to resynchronize. The event system may not be able to handle time that skips forward past an event. I have seen actual real time operating system

        • Time is far far harder than most people realize.

          Yes, but it is possible to get it right.

          Anything to make it simpler is welcome.

          Hell, no. Abolishing leap-seconds is not the way.

        • by raymorris ( 2726007 ) on Tuesday July 26, 2022 @12:20AM (#62733792) Journal

          While you're not wrong, 99% of the pain can be avoided by using epoch time everywhere but the GUI. Systems generally expect monotically increasing time - it goes up by one second every second. So use that - seconds since 1970 is the standard for *nix.

          Generally the only time you care about what day or week or month or hour is the UI, time picker widget. That's the place to have months and days and such mess.

          The other place you need calendar stuff is of course financial reporting. Generally that stuff won't go crazy whether you choose 1658809211 or 1658809210 as the cutoff.

        • by Pascal Sartoretti ( 454385 ) on Tuesday July 26, 2022 @03:01AM (#62734038)

          You've obviously never done any serious astronomy.

          Time is far harder to get right in systems than many people assume. You have the time zones, daylight savings problems that everyone knows about. Then you have the event logs from multiple systems where the order of events makes no sense if someone's time stamps drift. And what if your time has drifted and you have timers and events that are supposed to go off during the drift interval. And don't get me started with events that go off during the shift in daylight savings. Or hourly billing when a day has 25 hours in it. And then there are leap seconds. I have to have a table somewhere saying which days they occurred so that my time since epoch matches human billing time. Except that table needs to be updated when a new leap second is added. Will I even be employed at the company the next time there is a leap second so as to create an over the air update. Will the update servers still even be reachable? Time is far far harder than most people realize. Anything to make it simpler is welcome.

          All what you said is correct, and it can be even worse : some time calculations in the future (for instance "add 10 years to the current timestamp") simply can't be made, because you can't know that far in advance where leap seconds will be added. Performing such computations produce an "impossible to evaluate" result when using a leap-second aware library.

          I learned this the hard way on a project for the European Space Agency.

          • by bn-7bc ( 909819 )
            Or yo know maybe just maybe accept that an event scheduled 10+ years in the future miget drift a few seconds, for most things that wount be a lrobken, and if it is you will just have to resceduel to take the leap seconds in to acounr when they accure.and as others have said for logging use ntp that can be accurate to within ns if you have a local ( in dc) ntprp server synced by gnss, if that is not is not enugh there is allways ptp , and if you need more then that, first holy cow what are you doing and se
          • When designing such a system, one must decide what is the correct time for the future event to take place. Should it be a certain number of seconds in the future or is it more important that it matches what clocks are showing at the moment. Or does it need to match the position of the earth. Since one doesn't know whether the leap second will be added or not, the spec had better be more specific. But yes, time is hard, so use existing libraries!
          • by billyswong ( 1858858 ) on Tuesday July 26, 2022 @09:41AM (#62734696)

            All what you said is correct, and it can be even worse : some time calculations in the future (for instance "add 10 years to the current timestamp") simply can't be made, because you can't know that far in advance where leap seconds will be added. Performing such computations produce an "impossible to evaluate" result when using a leap-second aware library. I learned this the hard way on a project for the European Space Agency.

            This is a rationale for why UNIX timestamps use UTC but ignore leap second. If we standardize Google's "leap smear" into timestamps too, then I think the issue will be tamed alright. The clocks found in common PC aren't that accurate anyway and thus standardizing a 1 second drift smeared over 24 hours is not outlandish - it could be already drifting in such rate (or more) every day, and rely on NTP servers for periodical correction.

            If there are scientific experiments that care the 0.01 millisecond per second difference introduced by leap smear, they should connect their equipment to a dedicated atomic clock, not relying on computer clocks that are never that accurate. And they can use TAI for their record purpose. Oh, for your space agency need, just use TAI!

        • by AmiMoJo ( 196126 )

          Whenever I have to build a time handling system, I always use UTC internally with an epoch (usually 2000/01/01 00:00:00). Anything that needs local time or DST is just derived from that.

          Which reminds me. Stop changing your DST rules. I'm looking at you, America.

          Leap seconds are either ignored or when they come they are treated as one extra long second. It will screw some stuff up if, for example, it needs to count the number of events per second, but my solution is usually to just avoid doing anything at mi

        • Yes and this is why one should not write their own time libraries. There needs to be a small number of well-designed, intensively-reviewed (all bugs are shallow) code libraries that one can use for time calculations. I have no idea why people keep reimplementing this stuff.

          If you have timers and events that are supposed to go off during a drift interval and they are that important... don't let your time drift. Use the atomic clock radio broadcasts to constantly adjust your time.

          I would never writ

      • by mbkennel ( 97636 )

        The article is about getting rid of leap seconds to TAI, not UTC.

      • Another solution would be to publish the offset between UTC and ephemeris time for the benefit of astronomers or celestial navigators.
      • Seconded! (Score:5, Interesting)

        by SomethingOrOther ( 521702 ) on Tuesday July 26, 2022 @05:38AM (#62734230) Homepage

        Trust the tech giants to think they can bend nature to their will!

        Seriously, learn to code you lazy bastards....... I work in GNSS where nanosecond time keeping and syncing to UTC is critical and we manage it without problems.

    • If you would not do it, you would need to synchronize it roughly every 60 years to one minute.
      What is better?

      • NTP will need a lot more stratums.
      • by amorsen ( 7485 )

        Or more likely, every 1000-2000 years to one half-hour, by changing the zone files. This is well-tested, as countries change DST rules and UTC offsets all the time anyway.

    • Whoever modded this "troll" is really misusing the moderation system. I mean if you disagree, you disagree. But that doesn't mean this is a troll.
      • I don't have mod points at the moment, and didn't mod it as Troll, but it certainly seems like a troll to me. Someone would have to be unusually naive to think that abolishing the leap second is a good thing.
        • I don't have mod points at the moment, and didn't mod it as Troll, but it certainly seems like a troll to me. Someone would have to be unusually naive to think that abolishing the leap second is a good thing.

          By your standards, there are lots of people who are unusually naive. The summary lists several companies and two government agencies.

        • Re: (Score:2, Informative)

          Actually I think it's a brilliant idea! And while they're at it the tech giants should also define pi to be 3 exactly, and e to be 3 as well (means you can use the same constant as you use for pi, saves code and memory space!). And then make each day 10 hours long, and 100 days a year to keep other time-based calculations more manageable.

          Think of how much simpler the world would be if only we followed every brain fart of some IT company.

    • Great. Apparently those companies are being run by programmers that think Eventual Consistency was a great idea and should be applied to everything.

      • Perhaps you should google what "Eventual Consistency" actually means.
        Because it is indeed a great idea.

        Hint: it has nothing to do with SQL constraints regarding "consistency" :P

      • Heat death will see to that - eventually.

    • There is absolutely no reason to use anything else than (micro)seconds from Epoch at GMT+0 in machine to machine interaction.
      And from that you calculate what you need for user interaction.
      Computers usually don't need accurate time, but continuity.

      Leap smear is a very interesting technique to deal with that leap second madness.

  • Damn! (Score:5, Funny)

    by PPH ( 736903 ) on Monday July 25, 2022 @08:29PM (#62733416)

    I don't want to lose that extra sleep.

  • If we'd be good for 2 millennia, then why have we already drifted 37 seconds in only 40 years? Leap seconds are only "not an issue" for people who don't have to keep track of time over the course of more than a few hours. And frankly they're only a problem for people who convert time back to date-based formats to manipulate it. Hint: most computer systems don't keep time in date-based format, and don't even notice leap seconds when doing arithmetic on times as seconds-since-epoch.

    It's a lot like the argumen

    • by reanjr ( 588767 )

      That's half an hour drift over the next 2k years. I think that's probably fine since large parts of the world are in timezones that are already about half an hour off.

      • It is much more than half an hour.
        And what exactly have time zones to dow with that? Nothing obviously.

        Imagine on 23rd of December 2020 at you place the sun rices around 7:30 in the morning.
        In the year 4020 that would be 6:15 ...

        Does not really make sense. Or does it for you?

      • by jaa101 ( 627731 )

        That's half an hour drift over the next 2k years

        No, because the day is gradually getting longer so the rate of drift is increasing. If you go back 2000 years the offset was about 3 hours (according to NASA [nasa.gov]). Do you really want to be that far off?

        • by amorsen ( 7485 )

          So change the time zones when the drift gets bad enough. This is well tested and happens all the time anyway.

    • Yep. Timestamps should be number of seconds since 1970, plus fraction if you want.

      A leap second doesn't change that so databases won't break.

      The only thing that changes is the code to convert a timestamp to human-readable format and so what if it's off by one second until the next patch?

      • by msauve ( 701917 ) on Monday July 25, 2022 @09:04PM (#62733478)
        >Timestamps should be number of seconds since 1970

        That's what POSIX says, but it's not what it does. POSIX ignores leap seconds.
        • POSIX ignores leap seconds.

          You got a source on that?

          • POSIX ignores leap seconds.

            You got a source on that?

            The POSIX documentation is Standard for Information Technology–Portable Operating System Interface (POSIX®) Base Specifications, Issue 7. IEEE Std 1003.1, 2016 Edition (incorporates IEEE Std 1003.1-2008, IEEE Std 1003.1-2008/Cor 1-2013, and IEEE Std 1003.1-2008/Cor 2-2016), pages 1–3957, Sep. 2016. doi: 10.1109/IEEESTD.2016.7582338

            POSIX section 4.16 defines "seconds since the epoch". It contains these two paragraphs:

            The relationship between the actual time of day and the current value for seconds since the Epoch is unspecified.

            How any changes to the value of seconds since the Epoch are made to align to a desired relationship with the current actual time is implementation-defined. As represented in seconds since the Epoch, each and every day shall be accounted for by exactly 86 400 seconds

            I think it is clear from that last sentence that "seconds since the epoch" ignores leap seconds.

            I advocate not using "seconds since the epoch" since it is so poorly defined. For details, see my paper on the subject: https://www.systemeyescomputerstore.com/leap_seconds/avoid_time_t.pdf [systemeyes...rstore.com].

            • I think you just mean that POSIX is not a time standard, and if you want to actually store time for anything other than counting some seconds you need to use a real standard like TAI, UTC etc and use the appropriate system / library to convert to/from that standard. (that would be the "implementation dependent" part.) My understanding of this has always been that if someone gives you a time in posix seconds that happens to fall during a day that had a leap second, then you don't know the exact time (at th
          • He's correct. Look up the terms TAI, UT1 and UTC and read up on their definitions and the differences between them. For most people they don't really matter as long as everything uses the same one of them consistently, and almost all computers use UTC for timekeeping, but for the people who have to deal with eg. atomic clocks they're a big deal and an almighty headache if you want things to be right, not just consistent.

    • by robbak ( 775424 )

      The clock was many seconds out of sync when the leap second was introduced - they fixed that by having, I think, predetermined leap seconds every year until they caught up. So, that's more like 37 seconds over maybe 60 years.

      And it sounds like their argument is that we wouldn't really need to adjust things until it got to be something like an hour out of sync with the Sun. After all, we randomly jump our time back and forth by an hour because we feel like it (DST rubbish), and the time of sunrise and sunset

      • Time being off by an hour would mean for a sailor using stars for navigation to be off by roughly 360/24 -> 15 degrees, which is up to 900 nautical miles (at the equator it is 900 nautical miles), which is roughly 1040 land miles.

        People who think time is not important: are idiots.

    • 100%---business logic shouldn't work with dates. Conversion to and from dates is a problem for the human-facing IO layer.
  • Best Solution (Score:4, Insightful)

    by Shugart ( 598491 ) on Monday July 25, 2022 @08:35PM (#62733432)
    Best solution to this problem is to Banish tech giants.
  • by Rosco P. Coltrane ( 209368 ) on Monday July 25, 2022 @08:37PM (#62733438)

    How about we attach a giant rocket engine to the Earth at the equator, and every day at a certain time, when it points rearward, fire it for a few minutes to speed up the Earth's rotation around the Sun until it matches exactly 365 days.

    Or...

    Get less lazy programmers and tell them to code code that handles seconds values over 59 without barfing.

    • It is seconds values less than one that are the real problem.

    • This is more about the rotational speed of earth rather than orbital period. A day is not exactly 24 hours.
      • This can be solved with more rockets. :)

      • by ls671 ( 1122017 )

        This is more about the rotational speed of earth rather than orbital period. A day is not exactly 24 hours.

        Both rotational speed of earth and orbital period are part of the equation and impact the duration of a day.

        Earth rotation period is almost exactly 23 hours and 56 minutes, ~23h56m04s. Yet, we have a 24 hours day due to the orbital period around the Sun.
        here are some numbers with bc:
        (86400-(86400/365.25))/60/60
        23.9342915811
        0.9342915811/60*3600
        56.0574946800
        0.0574946800*60
        3.4496808000

        In short, the daily noon alignment with the Sun arrives later because the Earth is also moving around the sun so the Earth need

  • A Software Problem (Score:4, Insightful)

    by ve3oat ( 884827 ) on Monday July 25, 2022 @08:41PM (#62733442) Homepage
    To the "Tech Giants" I would say, "This is simply a software problem in your hardware systems. Just fix it!"
  • by test321 ( 8891681 ) on Monday July 25, 2022 @08:51PM (#62733452)

    The Atomic clock (IAT) is what is used for people into timekeeping, and it does not leap. The leap second is what is added to sync the Universal Time, and it is an interesting feature to civilian time have synced within a second.to astronomical events. It is also maintained by astronomers who know what they are doing.

    Tech giants are in charge of computer programming and ought to find a technical solution to program computer timekeeping in agreement with the level of what astronomers figured. Now they are saying the new Y2K bug is so difficult that we better start counting back at year 0 to avoid problems.

    One future-proof solution could be to sync computer clocks to IAT instead of UTC and add leap seconds to timezone-data. It's easy in Unix systems because unix system clock is UTC so the difference is a known 32 seconds, while Windows would need to change from local time system clock to IAT/UTC and that could be what irates Microsoft.

    • by amorsen ( 7485 )

      Windows hasn't crashed because of leap-second bugs, as far as I know. The Linux kernel has. The POSIX and NTP handling of leap seconds is fatally broken and unfixable without changing the standards. Windows should have an easier time of it.

  • ...tech giants call to abolish gravity, saying "It makes our data centers heavier."

    • No, timekeeping is not time. There is no law of nature that says the number 12 should be associated with whenever the point where you are is nearest the sun.
      • Actually there is. Depending what you actually want to name a "law of nature".
        Or do you think it is an accident^H^H^H^H^H^H^H coincidence that a circle has 360 degrees and the year is 365 days long?

        • Actually there is. Depending what you actually want to name a "law of nature". Or do you think it is an accident^H^H^H^H^H^H^H coincidence that a circle has 360 degrees and the year is 365 days long?

          The circle has 360 degrees because the Babylonians liked numbers with lots of factors. The factors of 360 are 1 (obviously), 2, 3, 4, 5, 6, 8, 9, 10, 12, 15, 18, 20, 24, 30, 36, 40, 45, 60, 72, 90, 120, 180, and 360 (obviously). The year is about 365 days long because the Earth turns on its axis about 365 times for each time it revolves around the Sun. There is no causal connection between the two numbers.

  • Way to burden the future great-great-great-great...great grand kids!
  • "We were such fools!"

  • by Pinky's Brain ( 1158667 ) on Monday July 25, 2022 @09:18PM (#62733514)

    Their presence in Unix time causes 99% of the problems ... are Unix nerds too cowardly to change it on their own because the POSIX constitution is inviolable so they need UTC to change?

    Kinda funny that the world has to change not just to suit them, not just to make their code work ... but to make their fucking standards work. Get your shit together nerds.

    • by robbak ( 775424 )

      Unix time is a perfectly good way to store time. Seconds since 1970, simple to understand. The decision to not include the leap second in Unix time was a reasonable one - you can choose to include that complexity when you are displaying the time thousands of times a day, or once every few years when you adjust the clock.

      Of course, there is always a corner case caused by there being a whole second every few years that doesn't have a Unix timestamp. But coping with that complexity in the places where it matte

      • They do include leap seconds in Unix time, as repeated seconds. It could have just been SI seconds since the epoch, but instead it's UTC seconds which has caused most of the big crashes.

        • by robbak ( 775424 )

          That's what I'd call 'not including leap seconds' - Unix time ignores their existence. And for almost all uses of UNIX time, the programmer can ignore their existence, as well. That is a good thing - make UNIX time the actual number of seconds since the epoch, and every programmer would have to deal with leap seconds every time they presented the user with a time. No thanks!

          If you are one of the few that need to take them into account - like, having the occasional interval calculation be inaccurate by a sec

          • by amorsen ( 7485 )

            Many of the crashes have been when scripts crash when trying to parse x:59:60 (or even x:29:60 in a few timezones!) - that would happen whether the underlying structure tracks leap seconds or not.

            Linux time never returns :60. It returns :59 twice or effectively stops the clock for a second, or (the less-insane Google way) makes seconds longer for 24 hours. All those options are somewhat crazy, but since NTP is broken, the options are limited.

          • So what would you call simply SI seconds since the epoch? Double plus not including leap seconds?

      • a) Seconds since 1970, simple to understand.
        Correct.
        b) The decision to not include the leap second in Unix time was a reasonable one
        Wrong. Leap seconds are included. Otherwise a) would not work. (* facepalm *)

  • The GPS satellites already ignore the leap seconds.
    https://en.racelogic.support/V... [en.racelogic.support]

    Why? Receivers require very precise clock analysis to triangulate locations on Earth. They let go of being on perfect sync wrt. UTC to make sure no unintended bugs were introduced.

    Could this be handled? Sure. Can they add additional features and tests to make sure satellites were exact wrt. UTC? Sure. Would it still fail in unpredictable ways? Sure, have you never done any programming?

    • GPS is about 20 seconds off from whatever you consider to be âoenormalâ time. Of course it is good that GOS time changes by exactly one second every second, but it wouldnâ(TM)t be usable to synchronise your watch. (Of course we know _exactly_ how many seconds to add or remove to get the time we want. And a single satellite is enough to set your watch within 50ms).
    • Triangulate?

      Good god man! Do you think a GPS receiver measures angles to calculate its position?
      Look up Trilateration. The difference is an important one.

      https://www.gps.gov/multimedia... [gps.gov]

  • Create and use a time library that doesn't fsck whatever program is using it.

    It should be a solved problem by now. Input a number of seconds from some type of epoch, get an output date in string format. Input date string (potentially with how it's supposed to have been formatted), get associated timer.

    And while they're at it - find a way past all the politics and get a standard way of writing dates.

  • by Randseed ( 132501 ) on Monday July 25, 2022 @10:06PM (#62733598)
    But what if my computer is on a space ship flying at relativistic speeds? Are you going to account for the difference in time frame? Hmm? HMM???
  • Since 1972, the world's timekeeping authorities have added a leap second 27 times to the global clock known as the International Atomic Time (TAI).

    TAI is syncronized with a set of atomic clocks. There are no leap seconds. UTC is TAI plus leap seconds. If you don't like leap seconds, use TAI, that's why it's there.

  • roughly a minute a century
    over 2,000 years, about 20 minutes
    would throw lots of shit all over the place
    that's why we have a gold standard and NTP
    tech giants might own the world but so far don't control it
    or do they ???

  • A typical tech solution. "Let's plug a FIXME comment into there and worry about it later"

    No, morons. There is a working solution right now that avoids the problem that you're trying to shift into the future. It's just annoying for you to deal with it, so you'd rather create a larger problem sometime later than a small problem now.

  • by jaa101 ( 627731 ) on Tuesday July 26, 2022 @02:10AM (#62733964)

    and one seems more likely than ever before. The UT1-UTC graph [wikipedia.org] is looking like crossing into positive territory by the end of the year. If it makes it past about +0.7s they'll have to cancel a second for the first time ever, no doubt causing massive software failures. UTC will have to tick from 23:59:58 to 00:00:00, skipping over 23:59:59, on either 30 June or 31 December.

    But my view is that the current system should be retained. The long-term average makes it look like leap seconds will become increasingly common. Computers can keep a continuous time scale like TAI internally and convert to and from UTC as necessary with a table of leap seconds.

    The statement that "we are predicting that if we just stick to the TAI without leap second observation, we should be good for at least 2,000 years" seems bogus. NASA says [nasa.gov] that the offset as of 2,000 years ago was around 3 hours.

  • ...ban decimals to avoid floating point rounding issues!
  • by Goose In Orbit ( 199293 ) on Tuesday July 26, 2022 @03:36AM (#62734098)

    ... they can scrap the leap second iff they pay to fix the Earth's rotation first.

  • Apple guarantees that itâ(TM)s Apple Watch is precise within 50ms - obviously achieved by synchronising with time servers from time to time.

    At that point you have to ask: 50ms compared to what exactly? For example, GMT and UTC can be 900ms apart, so it can only be within 50ms from one of them.

    I have looked at Appleâ(TM)s APIs and there is nothing obvious that would report leap seconds. Their APIs assume years, leap years with 29th of February added, time zones and DST, but assume 24x60x60 se
  • We have basically two time sources: Atomic clocks that increase by exactly 1 second every second and are more precise than earth rotation. And earth-rotation based clocks, where by definition noon in Greenwich is exactly 12:00:00 by definition - actually measured by determining the location of some quasars in the middle of the night, with an error of 25 millionths of a second. A day is precisely 86,400 seconds, but seconds are variable.

    Most people are just fine with astronomical time. Itâ(TM)s preci

It is easier to write an incorrect program than understand a correct one.

Working...