Slashdot Mirror


'Leap Seconds' May Be Eliminated From UTC

angry tapir writes "Sparking a fresh round of debate over an ongoing issue in time-keeping circles, the International Telecommunications Union is considering eliminating leap seconds from the time scale used by most computer systems, Coordinated Universal Time (UTC). Since their introduction in 1971, leap seconds have proved problematic for at least a few software programs. The leap second added on to the end of 2008, for instance, caused Oracle cluster software to reboot unexpectedly in some cases."

470 comments

  1. Hmmm by HappyClown · · Score: 5, Funny

    Now waaaaaait just one second! Oh, scratch that...

    1. Re:Hmmm by skila · · Score: 1

      For years we have used the Sun for setting the time, now we have to rely on Oracle? Does that mean the makers of Stonehenge are going to get sued for non-compliance in their virtual machine implementation?

    2. Re:Hmmm by Compaqt · · Score: 1

      Was that, ahem, "Unbreakable Linux" that broke?

      --
      I'm not a lawyer, but I play one on the Internet. Blog
  2. Stupid by Anonymous Coward · · Score: 2, Interesting

    Yeah, leap seconds suck, but the proposed solution (to let UTC drift farther and farther away from reality) sucks even harder. UTC should just be abolished in favor of UT1. Computer clocks are so crude anyway (mine is off by 3 seconds right now) that the supposed benefits of UTC's constant second are really non-existent, every computer needs to have its time adjusted now and then no matter what.

    1. Re:Stupid by tagno25 · · Score: 4, Informative

      Yeah, leap seconds suck, but the proposed solution (to let UTC drift farther and farther away from reality) sucks even harder. UTC should just be abolished in favor of UT1. Computer clocks are so crude anyway (mine is off by 3 seconds right now) that the supposed benefits of UTC's constant second are really non-existent, every computer needs to have its time adjusted now and then no matter what.

      And that is what NTP is for. To automatically adjust the computers clock to account for drift.

    2. Re:Stupid by Anonymous Coward · · Score: 0

      try asking ten supposedly-authoratative NTP servers what time it is right now

    3. Re:Stupid by mikael_j · · Score: 3, Informative

      Well, if you tell your NTP client to use those ten servers for setting the time chances are your computer's clock will be very accurate.

      --
      Greylisting is to SMTP as NAT is to IPv4
    4. Re:Stupid by bickerdyke · · Score: 5, Insightful

      Why abolish it?

      You're free to CHOOSE your timescale! GPS, UTC, UT1, TIA.....

      So if leap seconds confuse you, use a timescale without them. Thats what they're for. But keep the timescale that's supposed to be in sync with earth rotation in sync with earth rotation!

      --
      bickerdyke
    5. Re:Stupid by xaxa · · Score: 1

      Who cares what they do with UTC, I'm bigging up GMT (at great risk of troll mods).

      You all use UTC because you can't stand being reminded it's GREENWICH Mean Time, a UK concept of time that stuck around the world.

      UTC isn't the same as GMT. GMT is UT1.

      UTC is the same as GMT.

      (So Wikipedia tells me, anyway.)

    6. Re:Stupid by kno3 · · Score: 1

      Hmm. The only reason it stuck is because we had gone round, raping and pillaging half the world. But anyway, Greenwich sounds so much better than Zulu!

    7. Re:Stupid by Muros · · Score: 1

      Getting rid of UTC only lets UTC "drift farther and farther from reality" in that noon would not be at the exact middle of the solar day. However the flip side would be that it would give an accurate record of time passed, instead of people having to take leap seconds into account if trying to calculate the amount of time since a specific point in time.

    8. Re:Stupid by ultranova · · Score: 2, Interesting

      Yeah, leap seconds suck, but the proposed solution (to let UTC drift farther and farther away from reality) sucks even harder.

      No, it doesn't. Simply use UTC as an abstract "seconds after a certain point" and use time zone data to adjust for local Solar time. It's simpler, less likely to result in weird bugs, and allows anyone who wants adjust their local time every day if they so wish.

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

    9. Re:Stupid by somersault · · Score: 1

      Probably depends whether "British Summer Time" is in effect.

      --
      which is totally what she said
    10. Re:Stupid by GooberToo · · Score: 1

      Because many computer clocks are not entirely accurate, based on the assumption NTP will take care of the variation, we should assume computer clocks will always be inaccurate and therefore give up?

    11. Re:Stupid by xaxa · · Score: 1

      Hmm. The only reason it stuck is because we had gone round, raping and pillaging half the world. But anyway, Greenwich sounds so much better than Zulu!

      Greenwich was chosen for a few reasons:
      - Most maps at the time used the Greenwich meridian (although lots used Paris, and some Washington DC)
      - The Americans preferred Greenwich to Paris

      But the most useful reason:
      - The anti-meridian goes through mostly ocean and uninhabited land

      The minutes to the meeting where it was all decided are online somewhere.

    12. Re:Stupid by xaxa · · Score: 1

      Unix time serves well as a "seconds after a certain point" indicator, and is already used by plenty of databases, etc.

    13. Re:Stupid by Tacvek · · Score: 2, Informative

      That timescale already exists. It is called TIA. It is identical to UTC except for having no leap seconds, and an initial deviation of exactly 10 seconds. The second ticks occur at exactly the same time as UTC. It is always an exact number of seconds off from UTC, that delta increases or decreases as leap seconds are inserted in UTC. It is currently offset by exactly 34 seconds.

      --
      Stylish sheet to fix many problems in Slashdot's D3: https://gist.github.com/801524
    14. Re:Stupid by John+Hasler · · Score: 1

      > You're free to CHOOSE your timescale! GPS, UTC, UT1, TIA.....

      Some people are required by regulators to use "official" time. Others find it extremely inconvenient not to use what those they deal with use. Thus we have standards. This is about a proposal to change a standard.

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    15. Re:Stupid by maxwell+demon · · Score: 1

      So why change UTC, instead of simply changing critical applications to use TIA instead?

      --
      The Tao of math: The numbers you can count are not the real numbers.
    16. Re:Stupid by bickerdyke · · Score: 2, Informative

      but these are all standards. Different standards for different purposes. And UTC was chosen for civil timekeeping,as this is the standard that aims to keep in sync with the actual astronomical time.

      besides that.. if you took out the leap seconds,you would get TIA! You'd have two identical standards with different names, and none of them would fulfill the requirement for civil timekeeping. (no noon drifting off into the evenings)

      --
      bickerdyke
    17. Re:Stupid by John+Hasler · · Score: 1

      Getting rid of UTC only lets UTC "drift farther and farther from reality"

      You assume that mean solar time is reality. In fact the Earth is not a very good clock: it wiggles and wobbles and loses time at an erratic rate.

      However the flip side would be that it would give an accurate record of time passed, instead of people having to take leap seconds into account if trying to calculate the amount of time since a specific point in time.

      The advocates of UTC want to define "an accurate record of time passed" as the number of times (and fractions thereof) the Earth has rotated on its axis. The problem with this is that it turns out that the length of each day differs slightly (and unpredictably) from the last.

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    18. Re:Stupid by The+Flymaster · · Score: 1

      No it doesn't. Unix time is defined as UTC seconds since 1970-1-1 00:00. But UTC seconds didn't exist since 1972. And Unix time has exactly 86400 seconds in a day. No matter what. Even though UTC doesn't.

      So an implementation has to determine which "Unix time" to follow: UTC seconds, or 86400 seconds (essentially TAI). And different implementations choose differently.

    19. Re:Stupid by Tacvek · · Score: 2, Interesting

      Beats me. For computers I would recommend using TIA, with the Unix epoch being defined as 1970-01-01T00:00:00 (TIA), with the stored value being the number of seconds elapsed since that time. Display time for human consumption could be in UTC, using a timezone file to determine the offset, much like is currently done for local time, and the inane Daylight Saving Time rules. Displaying values in the future for human consumption would be a bit problematic, if the exact seconds are important, since leap seconds (or changes to timezones or DST rules) cannot be accurately predicted ahead of time. However, for most human purposes, giving a time of day accurate to the second for some future event is not necessary or useful.

      Of course, time in general is a very tricky thing. Special and General relativity do indicate that the concept of keeping a universally synchronized timebase is never going to work the way we would hope. We will continue to have more and more time standards created in the future, as we need them. It is just the way of things.

      --
      Stylish sheet to fix many problems in Slashdot's D3: https://gist.github.com/801524
    20. Re:Stupid by Muros · · Score: 1

      Getting rid of UTC only lets UTC "drift farther and farther from reality"

      You assume that mean solar time is reality. In fact the Earth is not a very good clock: it wiggles and wobbles and loses time at an erratic rate.

      Stop misquoting me.

    21. Re:Stupid by John+Hasler · · Score: 1

      The idea is to define UTC as TAI plus a table of corrections instead as series of random length segments of TAI seperated by discontinuities. You would generate UTC times by applying corrections to TAI as needed instead of attempting to operate your clock on UTC and having to jump it around every few years.

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    22. Re:Stupid by bickerdyke · · Score: 1

      THAT sounds sensible, but more like a implementation detail how an OS should handle time.

      --
      bickerdyke
    23. Re:Stupid by John+Hasler · · Score: 1

      Files and messages get time-stamped with system time. These files and messages get used by other systems. Thus it is important that different machines agree on what system time is. We have such an agreement: the standard called UTC. We are proposing to change that standard, but we need to get everybody to agree to the change. This makes it more than an OS implementation detail.

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    24. Re:Stupid by bickerdyke · · Score: 1

      Not sure, but don't they get timestamped with system timestamps (epoch)? And they could easily be timestamped with TIA. We only would need to agree to a new standard, and not fiddle around with an existing standard thats used in many more scenarios than computer or network stuff.

      Perhaps we should simply go for a big solution and only use timestamps along with meta-information about timescale/zone.

      --
      bickerdyke
  3. Oracle sholuld simply fix their software... by zebslash · · Score: 2, Insightful

    Isn't the problem with Oracle here? It should not be that difficult to fix their software. What's the difference with Summer time change?

    1. Re:Oracle sholuld simply fix their software... by nacturation · · Score: 5, Informative

      Isn't the problem with Oracle here? It should not be that difficult to fix their software. What's the difference with Summer time change?

      The difference with spring/fall time changes is that although the local time may change, the UTC time does not. In other words, your offset from UTC (eg: GMT-8) may get adjusted depending on your location's observance of daylight savings time but UTC itself simply marches on oblivious to anything. The leap second is the one exception.

      --
      Want to improve your Karma? Instead of "Post Anonymously", try the "Post Humously" option.
    2. Re:Oracle sholuld simply fix their software... by mysidia · · Score: 1

      Definitely. Oracle is not so big that even time itself should bend to their will.

      Leap seconds have value in that they keep the UTC consistent with localtime, having only a number of hours offset.

      Can you imagine how complicated things will get when we need to define time zones as -0X000+5seconds UTC?

    3. Re:Oracle sholuld simply fix their software... by Anonymous Coward · · Score: 0

      What we should fear is if Oracle patent the idea of software crashing due to leap seconds bugs. You all know companies start to sue when all their innovation is gone.

    4. Re:Oracle sholuld simply fix their software... by carini · · Score: 3, Interesting

      Insted of using "leap" seconds why NTP dosn't use a longer interval to adjust the time in small steps?. With 1/1000s adjustment every 1024 seconds (which is the polling interval for most stable ntp client) the leap seconds adjustment need less than 2 week to complete.

    5. Re:Oracle sholuld simply fix their software... by pe1chl · · Score: 1

      I can assure you that Oracle cannot even get summer time change right!
      This spring, the Oracle Hyperion software had a major issue in its job scheduler at the summer time change.
      Apparently the folks at Oracle Hyperion have little or no idea about how to implement things like a scheduler, in the face of timezones and summertime.

      Probably the next proposal will be to stop using DST to accomodate the proficiency level at Oracle.

    6. Re:Oracle sholuld simply fix their software... by Inconexo · · Score: 1

      Oracle software is big, buggy and slow. And they use the same excuses for all.

      If Oracle GNU/Linux installer has a bug that must be workarounded, and that bug hasn't been fixed in a lot of years, it should be GNU/Linux fault. If leap seconds cause their software to crash, it must be leap seconds' fault.

      I really mean it's easier that the whole world changes its time computation that Oracle fix a bug.

    7. Re:Oracle sholuld simply fix their software... by ewertz · · Score: 0

      Definitely. Oracle is not so big that even time itself should bend to their will.

      You really don't know anything about Larry Ellison, do you?

      (Just kidding Larry... really! No, Larry... Larry!... nnnnnnnoooooooooo! ,,... )

    8. Re:Oracle sholuld simply fix their software... by rjch · · Score: 2, Informative

      Insted of using "leap" seconds why NTP dosn't use a longer interval to adjust the time in small steps?. With 1/1000s adjustment every 1024 seconds (which is the polling interval for most stable ntp client) the leap seconds adjustment need less than 2 week to complete.

      The answer can be found in the Wikipedia article on leap seconds - the need for leap seconds isn't constant and predictable.

    9. Re:Oracle sholuld simply fix their software... by TheRaven64 · · Score: 3, Informative

      Oracle is just being used as an example in the summary. They are not the only people to develop software that doesn't properly work with leap seconds. Check the Slashdot archives, and you'll see a story about how a lot of air traffic control software doesn't either. ATC software is safety critical - if it goes wrong, planes can crash - and it depends heavily on synchronising clocks with a variety of different places. And these are just the examples that people have already found - how much other code do you think has been tested against an event one second long that's only happened twice in the last decade?

      --
      I am TheRaven on Soylent News
    10. Re:Oracle sholuld simply fix their software... by Anonymous Coward · · Score: 1, Informative

      Insted of using "leap" seconds why NTP dosn't use a longer interval to adjust the time in small steps?. With 1/1000s adjustment every 1024 seconds (which is the polling interval for most stable ntp client) the leap seconds adjustment need less than 2 week to complete.

      Because in the intervening two weeks you now have inaccurate time as you slew/step the clock. You're gaining accuracy at 23:59:59, but losing it in tiny chucks up to that point.

      To a certain extent it's zero sum.

    11. Re:Oracle sholuld simply fix their software... by Lorien_the_first_one · · Score: 1

      Seems like a reasonable solution to me.

      --
      The diversity and expression of human opinion is essential to human survival.
    12. Re:Oracle sholuld simply fix their software... by Just+Some+Guy · · Score: 2, Insightful

      The answer can be found in the Wikipedia article on leap seconds - the need for leap seconds isn't constant and predictable.

      That doesn't really address his question, though. His proposition is a different way to implement leap seconds, not a way to determine if they're needed. I don't like his idea either, but for different reasons.

      --
      Dewey, what part of this looks like authorities should be involved?
    13. Re:Oracle sholuld simply fix their software... by ZaphDingbat · · Score: 1

      If they want a steady clock, they should be using CLOCK_MONOTONIC on the system.

      If they're parsing date/times, they should be using their system libraries, which already account for leap seconds.

      Really, I don't know what Oracle was trying to do here.

    14. Re:Oracle sholuld simply fix their software... by John+Hasler · · Score: 2, Informative

      Oracle is not so big that even time itself should bend to their will.

      Oracle is irrelevant.

      Can you imagine how complicated things will get when we need to define time zones as -0X000+5seconds UTC?

      They would be simpler. The TAI second is the standard second, used by both TAI and UTC. Timekeeping consists of numbering seconds as they pass. TAI simply numbers them sequentially. UTC also numbers them (using a rather odd number system) but jiggers the numbers every few years to adjust for the erratic rotation of the Earth and then pretends nothing has happened. The proposal is to instead number the seconds sequentially and distribute a lookup table containing corrections for the Earth's rotation. This what the GPS already does.

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    15. Re:Oracle sholuld simply fix their software... by cynyr · · Score: 1

      and yet it uses a time scale that has leap seconds can't handle when they happen? seems like testing failed, "ohh we use UTC, it coud have a leap second, better simulate that, *adds a leap second*, *watches ATC software crash* better fix that". . . It's called engineering rigor, and field tests.

      --
      All of the above was encrypted with a Quad ROT-13 method. Unauthorized decryption is in violation of the DMCA.
    16. Re:Oracle sholuld simply fix their software... by izomiac · · Score: 1

      If we're redefining standards, then it'd be a lot simpler to change the second rather than the minute (via leap seconds). Redefine a second to be 1/86,400th of a day (or 1/604,800th of a week). For scientific measurements that require a more consistent time interval, refer to the actual measurement, like n vibrations of a particular atom. There aren't a whole lot of applications (any?) where ultra-precise time needs to be measured over years (i.e. where leap seconds would significantly reduce error), and synchronized with the Earth's orbit. Even if they exist, you can just have the specialized software do the conversion.

    17. Re:Oracle sholuld simply fix their software... by epine · · Score: 1

      It's obvious to me that rigour is best served by treating time as a monotonic, linear domain as done under TAI.

      However, there is potential for confusion about the conversion to civil time if the correction for leap seconds is unavailable or unimplemented.

      What we need is a convention, perhaps called "marshal time" where the leap second correction is guaranteed to be current, or the time is simply not reported (N/A).

      The authorities declare ahead of time where the leap seconds will occur, e.g. one leap second between now and December 2015, on such a date, or whatever. If this leap second declaration is downloaded with a proper signature chain, then the marshal time function can report accurate UTC times until December 2015, in absence of the next declaration.

      If correct UTC synchronization to within a few seconds is mission critical, then you request marshal time, and handle the condition when it comes back "no can do" because the conversion download was botched.

    18. Re:Oracle sholuld simply fix their software... by Anonymous Coward · · Score: 0

      All safety ciritical must systems must be simulated virtually for such occurences. I know bank systems which on each code deploy, performs virtual simulation of 10 years of operation with virtual timeing, including such strange things like leap years and seconds.

      There are tons of documentation for ATC software design and testing. I'm sure it is documenteted issues and how to handle it.

  4. Poor solution by LostMyBeaver · · Score: 5, Insightful

    The proper solution is to make programmers aware of leap seconds. There are 86400 seconds in a normal day, however there is an additional second added once or twice a year to adjust for solar time.

    Wikipedia documents it quite well and programmers in modern times should be heading to wikipedia almost constantly anyway. The real problem occurs when the date/time is given in seconds since an "event" such as Jan 1, 1970. Most programmers don't know about leap seconds and I must admit, I don't generally bother calculating for them. But if it were necessary, it would be relatively trivial to do so.

    We shouldn't remove fixes to the clock just because programmers are undereducated. I'm quite convinced that just posting this on Slashdot will raise awareness across a high percentage of the programming world.

    I also always wondered why undergraduate studies for computer science didn't make time a relevant issue. It seems as if it's one of the more complex topics and yet, we don't pay any attention to it. Last formal education I had on time (not talking about physic related, but calendar) was in primary school. There are so many time systems out there that we should pay more attention to educating programmers on it.

    1. Re:Poor solution by mrnobo1024 · · Score: 1, Insightful

      Christ, as if programmers don't have enough damn complexity to deal with already. For the purposes of timekeeping, a second should just be defined as 1/86400 of a day. There, problem solved, we never have to screw with the calendar again for thousands of years.

    2. Re:Poor solution by Anonymous Coward · · Score: 2, Informative

      But the reason we need leap seconds is because "a day" is changing. The earth's rotation is slowing.

      Defining a fundamental physical unit in terms of a moving target isn't a fantastic idea.

    3. Re:Poor solution by toastar · · Score: 2, Interesting

      Why adjust for solar time?

      if you were to count the number of days since the 0AD, Would you ignore leap days? UTC is a count of seconds since a specific time. All computers do is count time. It's the user interface that should adjust for leap seconds when it converts to local time.

      Why can't Computer people and farmers use different time metrics?

    4. Re:Poor solution by mrnobo1024 · · Score: 0, Troll

      So let the length of the day change, and let the second change with it.

      Physicists can continue to use the constant cesium-133-defined second, let's call it the "SI second", for measurements when they need precision. But why does the SI second need to exactly equal the time_t second? I can't think of any reason.

    5. Re:Poor solution by LostMyBeaver · · Score: 4, Interesting

      Nobo has a point... but it would make it so that the hardware engineers would suffer instead of the software ones. 1/86,4000 of a day = 1 second could be a fair solution. All we would need to do then would be to come up with a new atomic clock which allows for the alteration and then come up with computer crystals that are accurate to the new system (hey, let's get ones that are accurate to begin with, that would be great).

      But, since respectable companies tend to run their own SNTP servers and they themselves adjust against national servers (we hope), it could simply be a good idea to ditch the leap second in favor of fixing all the clocks.

      But, I think the real issue of the article is the occasions where "17:59:60" is a valid time. I think for presentation (and databases), it would in fact have been better to simply prolong 17:59:59 or progressively added a millisecond for the next 1000 seconds for example. Although it might through off scientific calculations during that period, the impact would be less critical.

    6. Re:Poor solution by TapeCutter · · Score: 2, Interesting

      "I also always wondered why undergraduate studies for computer science didn't make time a relevant issue."

      They did when I was at uni, I'd never heard of leap seconds or the 100yr & 400yr rules for leap days until I had to redo the same dammned calender assignment every time a new language was introduced.

      --
      And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
    7. Re:Poor solution by Anonymous Coward · · Score: 0

      the issue is that time delta should not be computed by asking utc because that's not constant.

      every os has a 'timer' that's already utc-compliant. use that to compute time delta and be done with it.

    8. Re:Poor solution by olden · · Score: 1

      There's really no need to redefine UTC -- especially if it's just because some programmers are ignorant of alternatives.
      Absence of leap seconds is exactly what already-existing scales like TAI are for.

    9. Re:Poor solution by TapeCutter · · Score: 1

      Sorry but that's an "april fools" soultion, it won't fix calender drift and it would screw up physics. The second is the SI unit of time, it's definition has nothing to do with the motion of the Earth.

      --
      And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
    10. Re:Poor solution by Thorsett · · Score: 5, Insightful

      Why adjust for solar time?

      We adjust for solar time because UTC is an astronomical timescale, not a "count of seconds since a specific time." If "computer people" want a timescale that ignores leap seconds, they can use an atomic timescale like TAI (or GPS time, which is a constant offset from TAI). But choosing to standardize the internet on UTC and then complaining it is too hard to do the programming right is a little like buying a house next door to a turkey farm and complaining about the smell.

    11. Re:Poor solution by Anonymous Coward · · Score: 0

      Is it really that hard? Under the hood, computers are only storing elapsed ticks, so for comparing times internally there's no problem. The only problem leap seconds create is in displaying those counts in human terms, which in a great many cases doesn't need exact-to-the-second accuracy, since it's just displaying a timestamp and every second is still unique even if the displayed labels are technically wrong by a few seconds.

      For things where you DO need the label to be correct, you should be able to do it with a list of the timestamps of all past leap seconds (and keep it updated with future planned leap seconds as they're announced. Hmm. Would be great if that was a standardized little table provided by the OS and kept automatically updated. I wonder if that already exists?). In practice you'd want a data structure a little nicer than just a bland sorted array of timestamps, so you do certain lookups faster/easier; you could generate such things from the list, of course. Like a precalculated list of timestamps of the first second of each year would be nice for Important Things that absolutely must roll over exact at the year boundaries; that'd have all the past leap seconds 'baked in' already. Likewise a month one for month boundaries. Paired with a "what are the leap seconds for year X" table, you should be able to generate the human date for any timestamp without much code.

    12. Re:Poor solution by Anonymous Coward · · Score: 1, Insightful

      Parent poster is quite correct. The second used to be based on the rotation of the earth. The earth is very gradually slowing down. Therefore the second defined by the rotation of the earth is changing, so it is not a satisfactory physical unit. The second is now defined in a manner which is more stable than the rotation of the earth. Once you have a second which is sufficiently accurate to successfully measure the slowing of the earth, then leap seconds become inevitable.

      The alternative would be to continually change the definition of the second, which would cause the whole system of physical units to be continually changed. A whole bunch of physical constants would no longer be constant. Doing physics would become near impossible. That would be a very foolish course of action.

      Programmers need to grow up. Leap seconds are here to stay. This is an unfortunate case of the general problem of programmers needing adult supervision.

    13. Re:Poor solution by Odinlake · · Score: 1

      mod parent up.

    14. Re:Poor solution by Hognoxious · · Score: 1

      if you were to count the number of days since the 0AD

      You'd get very confused - there was no 0 AD (or BC for that matter).

      1 BC was followed by 1 AD.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    15. Re:Poor solution by Lord+Bitman · · Score: 1

      non-idiot programmers use a library for this sort of thing. Solve it ONCE.

      --
      -- 'The' Lord and Master Bitman On High, Master Of All
    16. Re:Poor solution by mrnobo1024 · · Score: 1

      The SI second should continue to be what it's been since 1967: 9,192,631,770 periods of the radiation corresponding to the transition between the two hyperfine levels of the ground state of the caesium-133 atom. But there's no reason such an arbitrary unit needs to be part of our calendar.

      It's bad enough that the day doesn't fit into the year evenly -- there's no way around that, so we need leap days to fix it. But why do we have to introduce another annoyance, one that is even worse as it needs constant maintenance (unlike the leap-day system which hasn't needed adjustment since 1752), by trying to shoehorn the SI second into the day? As far as I can tell, this accomplishes nothing but making life harder for people.

    17. Re:Poor solution by Anonymous Coward · · Score: 0

      Letting the programmer take care of the problem is all nice and well. It also works for well for CompSci. where the case usually is that someone else pays for the hardware.
      When you have a microcontroller with about 2k program space and 128 byte sram you'd rather not make the time calculation needlessly complex.
      Sure, you could just buy a larger controller but for larger product series this could easily strip $1M from your profit and possibly bring the project to a no-go.
      There are a lot of things that must keep time out there, your average computer is in minority there. Having a complex method to keep an accurate time might be ok, but if it cannot be easily be implemented in a way that has roughly second precition then I wouldn't bet on it being a popular standard.

    18. Re:Poor solution by dcollins · · Score: 3, Funny

      I nominate you to write the interface between the physicists' Geiger-counter measuring "SI-seconds" in an experiment, and the computer software that works in "time-t-seconds", accounting for all the past & future history of changed time-t-seconds. Sounds so simple.

      --
      We know where leadership by an anti-intellectual "strongman" who scapegoats minorities and likes boisterous rallies goes
    19. Re:Poor solution by at10u8 · · Score: 2, Interesting

      The reason we adjust for solar time is that two standing international agreements demand that we define the day as a "mean solar day". Computer people and farmers can use different times if mean solar days are not made illegal and replaced with atomic days, that's what zoneinfo is for.

    20. Re:Poor solution by Zoxed · · Score: 1

      > The proper solution is to make programmers aware of leap seconds. There are 86400 seconds in a normal day, however there is an additional second added once or twice a year to adjust for solar time.

      You should have checked your favoured Wikipedia first (!!): leap seconds *can* be added in June or December but they are actually only needed every few years, and none have been added for some time.
      (When I studied Computer Studies I did not learn about Leap Seconds. But when I started in the space industry that required Leap Seconds to be accounted for I was told about them.)

    21. Re:Poor solution by Eivind · · Score: 1

      A day isn't constant length.

      Sounds fairly complex to me, to deal with a second in 1900 being a different time-period from a second in 2000.

    22. Re:Poor solution by at10u8 · · Score: 1

      There is no international regulation which specifies either TAI or GPS time, and the agencies which provide those do not want such regulation. For those who are constrained by regulation, only a time scale specified by the ITU-R will suffice.

    23. Re:Poor solution by Anonymous Coward · · Score: 0

      I don't see it making life harder for most people - the only people it would be harder for is programmers involved in timekeeping, for whom understanding the leap second is a part of their job. 99% of the population either won't be bothered by a drift of a few seconds in their lifetime or will let it be corrected by whoever they synchronise their clocks with (e.g. central servers).

      Splitting the second into "real seconds" and "sort-of seconds" is just going to confuse things.

    24. Re:Poor solution by RAMMS+EIN · · Score: 1

      ``I also always wondered why undergraduate studies for computer science didn't make time a relevant issue. It seems as if it's one of the more complex topics and yet, we don't pay any attention to it.''

      I couldn't agree more. Now that most programmers I know have moved on from languages with broken type systems and manual memory management, one of the few recurring issues I see in every project is time. Time zones, in particular, often aren't specified, or not picked up by people reading the specification. Same goes for time formats. And then there are people who forget to arrange for their clocks to be synchronized with the rest of the world, leading to wildly incorrect system times. It's almost a given that exchanging time information will cause trouble.

      And that's without getting into the _actually_ difficult stuff, such as adding a number of years to a time format expressed as a number of seconds, or implementing a program that will perform some computation periodically, without drifting away from synchronized time.

      --
      Please correct me if I got my facts wrong.
    25. Re:Poor solution by mrnobo1024 · · Score: 0

      The difference between atomic time and solar time is minuscule compared to the inaccuracy of a typical computer clock. No physicist would be using their computer clock for anything that requires serious precision.

    26. Re:Poor solution by Penguinisto · · Score: 1

      I also always wondered why undergraduate studies for computer science didn't make time a relevant issue. It seems as if it's one of the more complex topics and yet, we don't pay any attention to it. Last formal education I had on time (not talking about physic related, but calendar) was in primary school. There are so many time systems out there that we should pay more attention to educating programmers on it.

      Time-keeping and even leap-seconds are covered as far back as the frickin' K&R*. A sibling mentioned the ancient (and for some odd reason still dreaded) calendar and timer exercises that a huge chunk of CompSci students have had to face. It's not like leap seconds are some sort of big and sudden surprise that just popped up in the last couple years (now their implementation schedule seems to be, but still...)

      * My copy (2nd ed.) is at home, but I'm somewhat sure that sure someone on /. can reference one quick enough to confirm/deny/whatever...

      --
      Quo usque tandem abutere, Nimbus, patientia nostra?
    27. Re:Poor solution by Penguinisto · · Score: 1

      I also always wondered why undergraduate studies for computer science didn't make time a relevant issue. It seems as if it's one of the more complex topics and yet, we don't pay any attention to it. Last formal education I had on time (not talking about physic related, but calendar) was in primary school. There are so many time systems out there that we should pay more attention to educating programmers on it.

      Time-keeping and even leap-seconds are covered as far back as the frickin' K&R*. A sibling mentioned the ancient (and for some odd reason still dreaded) calendar and timer exercises that a huge chunk of CompSci students have had to face. It's not like leap seconds are some sort of big and sudden surprise that just popped up in the last couple years (now their implementation schedule seems to be, but still...)

      * My copy (2nd ed.) is at home, but I'm somewhat sure that sure someone on /. can reference one quick enough to confirm/deny/whatever...

      --
      Quo usque tandem abutere, Nimbus, patientia nostra?
    28. Re:Poor solution by Anonymous Coward · · Score: 0

      I nominate you to write the interface between the physicists' Geiger-counter measuring "SI-seconds" in an experiment, and the computer software that works in "time-t-seconds", accounting for all the past & future history of changed time-t-seconds. Sounds so simple.

      The overwhelming majority of programmers are not solving such problems and therefore do not care.

      There is no reason why the overwhelming majority of programmers should be forced to factor in something ultimately impossible to plan for like leap seconds when the complexity adds no benefit whatsoever for what it is they are trying to do, ie solve a business problem.

      It doesn't make a shit of a difference if the customer's order comes in at 4:36:37pm or 4:36:38pm. Forcing someone working on such a system to care about leap seconds is a colossal waste of time in over-engineering, and programmers should not have to care about it unless what they are doing specifically requires such precision.

      There are orders of magnitude more programmers working on mundane ordering, inventory management, data processing applications than there are working on Geiger counter interfaces and Mars rover logic units.

    29. Re:Poor solution by chaboud · · Score: 2, Informative

      One clock has to win, but simple things like file times/dates for saving trace data, network behavior, and exceedingly long runs could be a real pain with an SI second and magical 86400th second.

      Worse, before you do any of this, you'd better be able to tell us in advance how long every day is going to be.

      This is as daft an idea as making each day 1/365th of a year, damn the consequences. We'll be catching lunch in the dark.

    30. Re:Poor solution by TapeCutter · · Score: 1

      How do you define a "day"? If you use the sun from zenith to zenith then depending on where you are in the yearly orbit that value can vary by ~8 seconds either side of the average (24hrs). So now you have the problem of calibrating the vibrating crystal in your clock to something that is not only abitrary (zenith to zenith) but also changes depending on the season (24hrs +/- 8 seconds).

      --
      And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
    31. Re:Poor solution by Chuck+Chunder · · Score: 1

      Is it really that hard?

      It isn't hard if you think about it.

      If you haven't thought about it and a "60" appears where you only anticipating 0-59 then the results could presumably be surprising!

      I doubt that very many people actively consider that possibility but in most cases get away with it because it doesn't really matter to their code because they are just recording or displaying a time, rather than doing any particular calculations on it.

      --
      Boffoonery - downloadable Comedy Benefit for Bletchley Park
    32. Re:Poor solution by indeciso · · Score: 1

      Great, then every time the second definition changes, we can get rid of our old watches, clocks, motherboards, cell phones, and any other stuff we use to measure time, cause they're going to be outdated and defective. Sounds like a great idea to activate the economy with some extra sales! [sarcasm mode off]

      Anyway, what's the reason why we'd need an invariable "SI second" if nobody would use it?

    33. Re:Poor solution by toastar · · Score: 3, Informative

      if you were to count the number of days since the 0AD

      You'd get very confused - there was no 0 AD (or BC for that matter).

      1 BC was followed by 1 AD.

      Well if you want to get technical it was neither.

      I think it was called 753 AUC

    34. Re:Poor solution by mrnobo1024 · · Score: 1

      How do you define a "day"?

      UT1 is as good a definition as any.

      Of course it's impossible to calibrate a crystal timer to match solar time exactly, because it's impossible to calibrate a crystal timer to match anything exactly. My clock is already 4 seconds behind time.gov and that's with it being synchronized periodically. Computer clocks don't need to change a bit, because it wouldn't do any significant amount of good anyway.

    35. Re:Poor solution by mrnobo1024 · · Score: 0

      Every single one of the things you mentioned are already inaccurate by a far greater margin than the difference between atomic time and solar time anyway. We're talking about differences of a second every few years. My computer probably loses about a second per day without nist.gov to keep it honest.

    36. Re:Poor solution by Guy+Harris · · Score: 1

      The proper solution is to make programmers aware of leap seconds. There are 86400 seconds in a normal day, however there is an additional second added once or twice a year to adjust for solar time. Wikipedia documents it quite well and programmers in modern times should be heading to wikipedia almost constantly anyway. The real problem occurs when the date/time is given in seconds since an "event" such as Jan 1, 1970. Most programmers don't know about leap seconds and I must admit, I don't generally bother calculating for them. But if it were necessary, it would be relatively trivial to do so.

      Arthur Olson and company knew about them and even wrote code to calculate for them. A lot of UN*Xes out there use that code (or the glibc code, which, as I remember, was a GPLed reimplementation, reading the same file format).

    37. Re:Poor solution by Threni · · Score: 1

      > programmers in modern times should be heading to wikipedia almost constantly
      > just posting this on Slashdot will raise awareness across a high percentage of the programming world

      No, that's not how it works. Statistically, no programmers read Slashdot, and only a few read Wikipedia. I can hardly think of a more terrible way to inform people of the right way to deal with this problem, such as it is.

    38. Re:Poor solution by mrnobo1024 · · Score: 0

      Please be more specific - what exactly will fail if we just start setting computer clocks by solar time? And why have these things not failed already, given that computer clocks are often off by a few seconds anyway?

      This is as daft an idea as making each day 1/365th of a year, damn the consequences. We'll be catching lunch in the dark.

      I'd be all in favor of redefining the day as 1/365 of a year, if not for, as you said, that it has physical significance in our lives. That's the only reason why we should tolerate this incommensurability in our calendar. The same argument cannot be made for the second.

    39. Re:Poor solution by TapeCutter · · Score: 1

      A day is defined as 86,400 seconds. If you define a day using the sun from zenith to zenith it becomes 86,400 +/- 8 seconds depending on where the Earth is on it's orbit around the sun. How do you propose calibrating the vibrating crystal in your clock to 1/86400th of an interval of time that varies with the seasons?

      The reason why we have to "shoehorn" an SI second into a day is because there is no invariant time interval in Earth's orbital mechanics that can be used to define a day. Because of nature's messy ways our nice neat calenders will always need adjustments to stay in sync with nature.

      --
      And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
    40. Re:Poor solution by Anonymous Coward · · Score: 0

      The only mention I found in my copy of K&R 2nd Ed (which just happened to be open on my desk for the first time in many years) is on page 257, the strftime format string.

      %S second (00-61)

      Hardly in-depth coverage.

    41. Re:Poor solution by wgoodman · · Score: 1

      Technically, every time they muck with adding a leap second or not, they're adjusting the length of a day. If they didn't, the leap day thing would need maintenance as well. Given, it would not be a particularly big issue for a very long time, without doing the math on it, my guess would be somewhere around 86400 times as long. (I'm aware that with the occasional leap second being added to that number, it's wrong, not to mention that the addition of leap seconds/days don't occur at a scalable interval, and likely several more reasons that are missing due to still being hungover from this weekend. It was supposed to be a joke)

      If we stopped adding leap days, would people notice? would they notice when the equinox was no longer on the correct day? Would they notice when Christmas was eventually actually in July?
      Say we stop using leap seconds. Would people notice that their watch was minutely off? That the sun was coming up earlier than it once did in the past? That midnight is the new noon?

      Leap years are more obvious because it's a big chunk of time that they're adding. Leap seconds are smaller increments of time, but we need to add the proper number of units that make up a day together before we can add a full day. If not, it's still wrong so why bother adding the day at all?

    42. Re:Poor solution by jez9999 · · Score: 0, Troll

      choosing to standardize the internet on UTC and then complaining it is too hard to do the programming right is a little like buying a house next door to a turkey farm and complaining about the smell.

      Or complaining about Sarah Palin interviews.

    43. Re:Poor solution by Anonymous Coward · · Score: 0

      Better yet, depend on other programmers who are kind enough to write libraries to calculate it for them.
      Or, the OS time since that is what it should be doing anyway.

      OS times are always correct, right? Windows, back me up here man, i'm counting on you.
      Windows cancelled back-me-up-here: Windows is unconscious.
      Well, damn.

    44. Re:Poor solution by AGMW · · Score: 1

      Every single one of the things you mentioned are already inaccurate by a far greater margin than the difference between atomic time and solar time anyway. We're talking about differences of a second every few years. My computer probably loses about a second per day without nist.gov to keep it honest.

      The problem, as I understand it, is that if we ignore the problem that the current solution (Leap Seconds) fixes (ie time drift) then at some point in the future we will have to make a large adjustment to the calendar again.

      It seems far more sensible to make a small adjustment reasonably regularly than a large adjustment every 100 years as, for the general population at least, the adjustment will pass without being noticed.

      --
      Eclectic beats from Leeds, UK
      handmadehands.co.uk
    45. Re:Poor solution by Anonymous Coward · · Score: 0

      Well, why dont we just stretch the period of a tick a tiny but. And after doing that, just round down planks constant, and maybe trim pi to only a dozen (OK, round down to ten) decimal places? That sound much easier than simply fixing a three year old bug in Oracle.

    46. Re:Poor solution by TapeCutter · · Score: 1

      UT1? - I thought you said you wanted to reduce complexity?

      --
      And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
    47. Re:Poor solution by Anonymous Coward · · Score: 0

      Programmers almost never really have to deal with leap seconds. They are affected by leap seconds because of an invalid abstraction: They like to convert every date and time into a common "milliseconds since the epoch" format. If done right, this works for past events, but it can not work for future events. When the user enters a date in the future, then it's that date, not a number of seconds from now. If you get the calculation wrong (which is beyond your control, because you don't know if there will be leap seconds), then a conversion from the point in time to a duration will result in an error. The same kind of error would occur if the programs used a timescale without leap seconds internally and converted back and forth between that and the user's timescale, which has leap seconds. It is therefore pointless to switch to a different timescale to avoid leap-second-induced errors.

    48. Re:Poor solution by jelle · · Score: 1

      It's not about education, it's about determinism. Leap seconds are _not_ deterministic like leap years, etc, are.

      Leap seconds are not known more than _one_ in advance, at the most... For example, right now, nobody knows exactly when the next leap second will be. When one is inserted depends on where the planet 'hangs out' in space around the sun, and that has some characteristics that are either nondeterministic, or still unknown to us humans.

      It is not possible to make a program the will correctly account for all leap seconds it will encounter in its life for the next five or ten years, because those leap seconds have not been determined yet.

      For example: How many seconds are there between August 24, 2010, and September 1 2017? You don't know yet, because you don't know how many leap seconds will be inserted in that time period, so no programmer can make a program _right now_ that can give that answer correctly. Yet, there are many applications where such accurate time differences are needed. The solution, is in the clock.

      http://www.timeanddate.com/time/leapseconds.html

      --
      --- Hindsight is 20/20, but walking backwards is not the answer.
    49. Re:Poor solution by AGMW · · Score: 2, Insightful

      But why do we have to introduce another annoyance, one that is even worse as it needs constant maintenance (unlike the leap-day system which hasn't needed adjustment since 1752), by trying to shoehorn the SI second into the day? As far as I can tell, this accomplishes nothing but making life harder for people.

      OK, now hands up why the wonderful leap-day system hasn't needed adjustment since 1752?
      Anyone?
      Yes, you at the back ... "mumble mumble leap seconds mumble mumble?"

      Speak up lad!

      "Sorry Sir - is it because the sensible use of regular leap seconds means a leap day is only required once every for years and they are actually both part of the same time adjustment because a leap day is actually made up of many leap seconds?"

      Yes indeed, well done. Yes the time adjustment required to keep our calendar in sync with the passage of the Earth around the Sun requires somewhere around a 1/4 day extra per year, give or take a second or two, and it was decided at some point that an extra day every 4 years would be a sensible way to make the majority of the correction leaving the odd seconds to be added as required to remove the need to add extra leap days far less often.

      --
      Eclectic beats from Leeds, UK
      handmadehands.co.uk
    50. Re:Poor solution by Anonymous Coward · · Score: 0

      So you're a Unix guy. The Unix time is defined as counting milliseconds since the epoch, not including leap seconds. Unix time counts exactly 86400 seconds per day. If the actual day happens to be longer, Unix skews the clock or halts it for a second. Either way, the extra second(s) do(es) not exist according to Unix. That does not appear to solve the problem though. Any more ideas?

    51. Re:Poor solution by Anonymous Coward · · Score: 0

      There is no international regulation which specifies either TAI or GPS time, and the agencies which provide those do not want such regulation. For those who are constrained by regulation, only a time scale specified by the ITU-R will suffice.

      Citation(s) please? IIRC, TAI is a count of SI seconds since an agreed epoch, and the SI second is defined in physical terms independent of its means of measurement. What's to regulate?

    52. Re:Poor solution by FalcDot · · Score: 1

      How about the other way round? Define one year as 365 days. Sure, in (365/2)*4 = 730 years we'll have winters in august in the northern hemisphere, but that's not gonna matter to any computer...

    53. Re:Poor solution by xelah · · Score: 1

      if you were to count the number of days since the 0AD

      You'd get very confused - there was no 0 AD (or BC for that matter).

      Obviously he meant the year 173.

    54. Re:Poor solution by bickerdyke · · Score: 1

      If we stopped adding leap days, would people notice? would they notice when the equinox was no longer on the correct day? Would they notice when Christmas was eventually actually in July?

      They noticed it when christmas was off by 14 days. Which led to the current systemof leap days.

      --
      bickerdyke
    55. Re:Poor solution by Chrisq · · Score: 3, Informative

      1 BC was followed by 1 AD.

      Not with ISO 8601 time representation, which is more logical having a year zero before year one.

    56. Re:Poor solution by fbjon · · Score: 1

      Have some ISO 8601, and do things the smart way.

      --
      True confidence comes not from realising you are as good as your peers, but that your peers are as bad as you are.
    57. Re:Poor solution by bickerdyke · · Score: 1

      Keeping time at those levels of precission is hard enough.

      Keeping irregular earth rotation in sync with some uber-precise caesium oscillations is even harder, but at least connects a high precission timekeeping with the actual meaning of time! (morning, noon, evening, night)

      it shouldn't need to bow to some bad unix design descisions.

      --
      bickerdyke
    58. Re:Poor solution by Hognoxious · · Score: 1

      Why do you think a modern standard for representing dates in a computer has anything to do with historical fact?

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    59. Re:Poor solution by jonbryce · · Score: 1

      It used to be that, but the problem is that every day is a different length so it isn't an accurate enough definition for some things.

    60. Re:Poor solution by Hognoxious · · Score: 0, Flamebait

      What the fuck has language got to do with anything? Come on smart cunt, tell me what country they speak Julian in.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    61. Re:Poor solution by Chrisq · · Score: 1

      Are you saying that you think that year numbers exist somehow historically?

    62. Re:Poor solution by Anonymous Coward · · Score: 0

      dwarf fortress reference? HERE? wow!

    63. Re:Poor solution by Anonymous Coward · · Score: 0

      A year has always meant a full revolution of the earth about the sun.
      A day has always meant a full cycle of the sun in our sky.

      These two units are defined with respect to external physical phenomena.
      Seconds, on the other hand, have always been defined as a fraction of a day. I see nothing wrong in keeping that definition, even if the length of the day can vary slightly.

      As mentioned before, for scientific calculations, or for any case requiring precision, you could always refer to the absolute definition of a second. But, for everyday cases include those relying on imprecise PC clocks, an ever so slightly longer second would be perfectly acceptable.

    64. Re:Poor solution by Bozzio · · Score: 1

      accidentally modded this insightful. sorry!

      --
      I just pooped your party.
    65. Re:Poor solution by dave420 · · Score: 0, Offtopic

      Stay classy.

    66. Re:Poor solution by AmiMoJo · · Score: 1

      But, I think the real issue of the article is the occasions where "17:59:60" is a valid time.

      Sounds a lot like Y2K and 9/9/99. IIRC we managed to fix those.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    67. Re:Poor solution by petermgreen · · Score: 1

      I don't see it making life harder for most people - the only people it would be harder for is programmers involved in timekeeping, for whom understanding the leap second is a part of their job.
      The problem is even if we do understand the leap second afaict our operating systems don't.

      Unix time simply cannot represent 23:59:60 . Windows has a couple of time formats. "SYSTEMTIME" could in thery represent 23:59:60 but the documentation on valid values specifically says that it isn't a valid value. Filetime has much the same problem as unix time.

      --
      note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register
    68. Re:Poor solution by AbbeyRoad · · Score: 1

      See "UTC with Smoothed Leap Seconds (UTC-SLS)"

      http://www.cl.cam.ac.uk/~mgk25/time/utc-sls/

      -paul

    69. Re:Poor solution by Dwonis · · Score: 3, Informative

      I think it was called 753 AUC

      According to Wikipedia, it tended only to be called that by later historians:

      Renaissance editors sometimes added AUC to Roman manuscripts they published, giving the false impression that the Romans usually numbered their years using the AUC system. In fact, modern historians use AUC much more frequently than the Romans themselves did. The dominant method of identifying Roman years in Roman times was to name the two consuls who held office that year. The regnal year of the emperor was also used to identify years, especially in the Byzantine Empire after 537 when Justinian required its use.

    70. Re:Poor solution by Anonymous Coward · · Score: 0

      Programmers are aware of centuries but cannot count them accurately. See ./s passim

    71. Re:Poor solution by petermgreen · · Score: 1

      Time-keeping and even leap-seconds are covered as far back as the frickin' K&R*. A sibling mentioned the ancient (and for some odd reason still dreaded) calendar and timer exercises that a huge chunk of CompSci students have had to face. It's not like leap seconds are some sort of big and sudden surprise that just popped up in the last couple years (now their implementation schedule seems to be, but still...)
      The thing is before the days of global clock synchronisation systems becoming popular (which in turn had to wait for the internet to become popular) leap seconds weren't really a concern for OS designers. Local clock drift was far more significant as a source of error and in any case there wouldn't have been any way to distribute the leap second updates (descisions on leap seconds are not made very far in advance). Many systems out there today STILL don't have thier clocks synchronised well enough that leap seconds matter.

      The two main operating system designs we use today (windows and *NIX) date back to this period and so thier time formats simply can't represent leap seconds correctly. NTP provides a warning of a leap second but there doesn't seem to be any mechanism for passing that data on to applications (or at least if there is it's poorly documented, i've certainly never seen any mention of such a thing when reading the documentation of the time fuctions on either windows or linux).

      So as application programmers our real choices are either to ignore leap seconds and just make our programs tolerant of time jumps or to implement a complex system for handling leap seconds in spite of what the OS is doing.

      --
      note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register
    72. Re:Poor solution by drinkypoo · · Score: 1

      It is not possible to make a program the will correctly account for all leap seconds it will encounter in its life for the next five or ten years, because those leap seconds have not been determined yet.

      don't operating systems know about these things? isn't there some standard way to store time that isn't subject to problems due to leap seconds? isn't there some standard, portable library that programmers can use to apprehend time?

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    73. Re:Poor solution by Muros · · Score: 1

      The proper solution is to do absolutely nothing. A record of time should be as exact as possible, and people should not have to worry about seconds being added or deleted to account for inconsistencies in the length of an earth solar day. Yes they keep everything tidy for us here on a day to day basis, but if you want to make a time system that is both accurate and that is to be eventually used elsewhere than just earth, it is stupid to use leap seconds.

    74. Re:Poor solution by noidentity · · Score: 1

      The proper solution is to make programmers aware of leap seconds.

      Nonsense. The proper solution is to make every minute 60 seconds, every day 24 hours, and every month 30.5 days.

    75. Re:Poor solution by Joce640k · · Score: 1

      It shouldn't matter...don't try to be a smart-ass, just use the OS library function for conversion between Unix time (for storage) and displayable time (for the users).

      The 60s only appear at midnight on a day when everybody's drunk so who cares?

      --
      No sig today...
    76. Re:Poor solution by dcw3 · · Score: 1

      ...programmers in modern times should be heading to wikipedia almost constantly anyway.

      LostMyBeaver has LostHisMind

      Seriously, why would I rely on wikipedia for critical information? It's nice and all, but it's NOT something you want to refer to when fact checking.

      --
      Just another day in Paradise
    77. Re:Poor solution by xded · · Score: 2, Informative

      We adjust for solar time because UTC is an astronomical timescale, not a "count of seconds since a specific time." If "computer people" want a timescale that ignores leap seconds, they can use an atomic timescale like TAI (or GPS time, which is a constant offset from TAI).

      No, GMT=UT1 is an astronomical timescale, based on astronomical observations.

      UTC is based on TAI and it is ajusted with leap seconds to track UT1 with an error less than 0.9 seconds.

      Here.

    78. Re:Poor solution by Anonymous Coward · · Score: 0

      But why do we have to introduce another annoyance, one that is even worse as it needs constant maintenance (unlike the leap-day system which hasn't needed adjustment since 1752), by trying to shoehorn the SI second into the day? As far as I can tell, this accomplishes nothing but making life harder for people.

      OK, now hands up why the wonderful leap-day system hasn't needed adjustment since 1752?

      Anyone?

      Yes, you at the back ... "mumble mumble leap seconds mumble mumble?"

      Speak up lad!

      "Sorry Sir - is it because the sensible use of regular leap seconds means a leap day is only required once every four years and they are actually both part of the same time adjustment because a leap day is actually made up of many leap seconds?"

      Yes indeed, well done. Yes the time adjustment required to keep our calendar in sync with the passage of the Earth around the Sun requires somewhere around a 1/4 day extra per year, give or take a second or two, and it was decided at some point that an extra day every 4 years would be a sensible way to make the majority of the correction leaving the odd seconds to be added as required to remove the need to add extra leap days far less often.

      Eight years is the longest period between two leap years.

    79. Re:Poor solution by Kjella · · Score: 1

      The computers would have no problems at all counting seconds since epoch, no leap anything not even minutes, hours, days or years. But it'd be a helluva problem trying to convert it into human time, since the answer you get will depend on how many leap seconds the system think has passed. If a system hasn't been upgraded in a year "gets" a new leap second, all the human timestamps it's given in the last months will be off. Any calculation it's made may be a second off in human time.

      --
      Live today, because you never know what tomorrow brings
    80. Re:Poor solution by amorsen · · Score: 1

      It seems far more sensible to make a small adjustment reasonably regularly than a large adjustment every 100 years as, for the general population at least, the adjustment will pass without being noticed.

      Except we're talking a not-too-large adjustment every 1000 years, possibly even every 10000 years.

      --
      Finally! A year of moderation! Ready for 2019?
    81. Re:Poor solution by orangesquid · · Score: 1

      Yes. ATC and safety systems should probably just use a timescale that has no arbitrary corrections.

      OTOH, systems where humans expect the time to be correct (which is probably many of the Oracle DBs) should use something we have already had for a long time: adjtimex and its equivalents, which implement systematic drift.
      Instead of suddenly adding or removing one second, just make the second longer or shorter for a few minutes/hours/days (depending on how quickly you need it to be synchronized with UTC vs. how much shift your systems can tolerate w/o getting confused). The solution is simple, and already exists.

      --
      --TheOrangeSquid Is it any wonder things seem so awry? We swim in a sea of confusion and don't have to think to survive
    82. Re:Poor solution by amorsen · · Score: 0

      You are wrong. Leap days fix the fact that the year isn't an integral number of days. Leap seconds fix the fact that the day isn't an integral number of seconds. Neither helps the other.

      --
      Finally! A year of moderation! Ready for 2019?
    83. Re:Poor solution by amorsen · · Score: 1

      Right, so we should propose to standardize the Internet on TAI then. As long as we can relegate UTC to something only astronomers care about like sidereal years, I'm happy.

      --
      Finally! A year of moderation! Ready for 2019?
    84. Re:Poor solution by ZaphDingbat · · Score: 1

      Even stranger is that leap seconds are already implemented in most system libraries. If programmers were less eager to roll their own solutions to already-solved problems, it wouldn't be that big of a deal.

    85. Re:Poor solution by amorsen · · Score: 1

      The 60 thing is easy to handle. The problem is that right now you have

      $ LC_ALL=en_US.UTF-8 date -u -d '@1300000000'
      Sun Mar 13 07:06:40 UTC 2011

      In 6 months time this same command could return a different output, perhaps 07:06:39 or 07:06:41. And the result on different computers depends on whether the zone files have been updated or not.

      --
      Finally! A year of moderation! Ready for 2019?
    86. Re:Poor solution by camperdave · · Score: 1

      We've got too much invested in the second. It is the basis of our physics, our astronomy, our chemistry; all of our sciences. Change the length of the second and you'd have to redefine physical constants, recalculate formulas, reprint references, re-educate teachers and students. You'd have to redefine the world.

      The whole point behind the leap second is that, in general, it's lost in the noise. As you say, most clocks are off by seconds, if not minutes (and in some cases by twelve hours (why do we have two twelve hour half days instead of one twenty-four hour day?)) If you need accuracy enough to detect it, you should be building your systems to account for it. It's not like they're a surprise or anything.

      --
      When our name is on the back of your car, we're behind you all the way!
    87. Re:Poor solution by Anonymous Coward · · Score: 0

      I also always wondered why undergraduate studies for computer science didn't make time a relevant issue. It seems as if it's one of the more complex topics and yet, we don't pay any attention to it. Last formal education I had on time (not talking about physic related, but calendar) was in primary school. There are so many time systems out there that we should pay more attention to educating programmers on it.

      Maybe they don't have the time for that in their studies.

    88. Re:Poor solution by John+Hasler · · Score: 1

      They did when I was at uni, I'd never heard of leap seconds or the 100yr & 400yr rules for leap days...

      I didn't learn about leap seconds until university but I was taught the complete leap day rules in elementary school.

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    89. Re:Poor solution by fishbowl · · Score: 1

      You didn't understand. Operating Systems cannot "know" something that isn't determined yet, and that cannot be determined by any formula.

      --
      -fb Everything not expressly forbidden is now mandatory.
    90. Re:Poor solution by Scott+Wood · · Score: 1

      Which raises the question of why the software that failed relied on human-readable time for internal operation...

    91. Re:Poor solution by prockcore · · Score: 1

      There are 86400 seconds in a normal day, however there is an additional second added once or twice a year to adjust for solar time.

      No. There is an additional second added every few years... at completely unpredictable times.

    92. Re:Poor solution by plcurechax · · Score: 1

      The proper solution is to make programmers aware of leap seconds.

      Actually, I disagree, programmers should be well designed, documented, and tested time and date libraries included in the development environment (system libraries, language libs, VM SDK, whatever), and stop re-implementing the f-ing wheel.

      For most users and programmers, until you deal with enterprise solutions or scientific applications, time is a rough and fuzzy thing. Most of the code and experience is taken to be as good as their wristwatch, close enough to within five minutes being good enough for almost all cases. Then once you hit the "big times", you discover that either a) a second is large time frame when you are counting nanoseconds, so a leap second is a huge deal, b) that enterprises are national if not global and "issues" like using time zones to differentiate local time from system time (UTC) matter, and that local time is a human viewing preference, and should not be used as an internal representation.

      Basically, stop letting system analysts act like 12-year olds ("oh, shiny new methodology") of thinking they can single handedly design a rocket ship in a 2 page specification, and hold programmers to the expectation of acting like professionals, not hill-billy motorcycle mechanics, if their are demanding a white collar professional salary.

      I don't mind young programmers, I dislike professional programmers acting like a bunch of Prima donnas thinking that they are all hot-shot hero programmers.

    93. Re:Poor solution by grumbel · · Score: 1

      The proper solution is to make programmers aware of leap seconds.

      That hasn't worked all that great in the last 40 years, what makes you think it would work better in the future?

      If the solution creates more problems then the original problems itself, it is probably better to just drop the solution, then trying to play around further with what is not working.

    94. Re:Poor solution by toastar · · Score: 1

      I think it was called 753 AUC

      According to Wikipedia, it tended only to be called that by later historians:

      Renaissance editors sometimes added AUC to Roman manuscripts they published, giving the false impression that the Romans usually numbered their years using the AUC system. In fact, modern historians use AUC much more frequently than the Romans themselves did. The dominant method of identifying Roman years in Roman times was to name the two consuls who held office that year. The regnal year of the emperor was also used to identify years, especially in the Byzantine Empire after 537 when Justinian required its use.

      Nah, I held a coin with AUC on it.

    95. Re:Poor solution by John+Hasler · · Score: 1

      systems where humans expect the time to be correct (which is probably many of the Oracle DBs) should use something we have already had for a long time: adjtimex and its equivalents, which implement systematic drift.

      No. They should never store local time. They should store time in a universal form (presently UTC, we are suggesting TAI) and convert to local time for display.

      Instead of suddenly adding or removing one second, just make the second longer or shorter for a few minutes/hours/days (depending on how quickly you need it to be synchronized with UTC vs. how much shift your systems can tolerate w/o getting confused). The solution is simple, and already exists.

      And is how it is actually done. Unfortunately, it means the the system time is wrong while the clock is slewing.

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    96. Re:Poor solution by AGMW · · Score: 1

      You are wrong. Leap days fix the fact that the year isn't an integral number of days. Leap seconds fix the fact that the day isn't an integral number of seconds. Neither helps the other.

      LOL: OK, so if we stopped having leap seconds that would never have any bearing on leap days then.
      Thanks for clearing that up.

      --
      Eclectic beats from Leeds, UK
      handmadehands.co.uk
    97. Re:Poor solution by amorsen · · Score: 1

      LOL: OK, so if we stopped having leap seconds that would never have any bearing on leap days then.
      Thanks for clearing that up.

      Correct. I'm not sure why you had the LOL bit, unless you're laughing at yourself.

      --
      Finally! A year of moderation! Ready for 2019?
    98. Re:Poor solution by SleazyRidr · · Score: 1

      Actually that wouldn't be that hard. Basically if you keep the same thing that UTC is doing (with the leap seconds), keep a track of that, and compare it to TAI, a simple table lookup, and you're done.

    99. Re:Poor solution by GravityStar · · Score: 1

      Counting the number of days since 0AD could be interesting. In what Calendar? Solar days or administrative days? Do we account for the 17 or so days that were skipped switching from one calendar to the other? And how exactly do we account for them?

    100. Re:Poor solution by dcollins · · Score: 1

      Except that what this guy's proposal requires is to track the differing length of a day (in some quasi-milliseconds) every day. Instead of 1 second every 6 months or a year.

      --
      We know where leadership by an anti-intellectual "strongman" who scapegoats minorities and likes boisterous rallies goes
    101. Re:Poor solution by SleazyRidr · · Score: 1

      Ooh, shit. I didn't think that far ahead. That does pretty much screw up that system. Imagine going to all that effort to effectively get less accuracy.

    102. Re:Poor solution by jelle · · Score: 1

      That's a very valid question... Probably the person who wrote the related API spec thought that UTC was a good way to communicate time, since it doesn't have things such as time zones and daylight savings time to deal with... I think the idea behind UTC was for it to be a good time format to use for communication. How it deals with leap seconds makes that only true if all the software involved, or its time library is kept up-to-date for each new leap second that gets inserted.

      --
      --- Hindsight is 20/20, but walking backwards is not the answer.
    103. Re:Poor solution by AthanasiusKircher · · Score: 1

      LOL: OK, so if we stopped having leap seconds that would never have any bearing on leap days then.

      Yes, this is correct, despite your LOL indicating you were being facetious.

      Seasons are determined by where the earth is in its orbit. Time of day is determined by where the earth is in its rotation. Leap days make a correction so that calendar days occur when the earth is at a "similar place" in its orbit. ("Similar place" isn't a good term -- it actually has to do with when the tilt of the earth is in a particular relationship to the sun.) Leap seconds make a correction so that the noon occurs when the sun appears at its highest point in the sky. When the sun is highest in the sky has nothing to do with the season.

      Theoretically, it is true that if we never made corrections for leap seconds, we would eventually need a leap day, but that would require clock time to go all the way around a 24-hour cycle first, which people would obviously find quite confusing. ("It's 9 AM and sunset... that's fine.") That would take many, many, many thousands of years. In contrast, we need leap-year corrections almost every century (years divisible by 100 but not divisible by 400 don't have a leap year -- the year 2000 was, but the year 2100 won't be), and we'll probably need to throw in an extra leap day correction in the next couple thousand years.

      In essence, rotation versus revolution. These are two different motions, and they are corrected two different ways.

    104. Re:Poor solution by Anonymous Coward · · Score: 0

      Except its not as simple as 1 day in every 4 years - its actually 97 days in every 400 years, and even that is not accurate enough such that it has even been proposed that the year 4000 (& multiples) be non-leap years.

    105. Re:Poor solution by sznupi · · Score: 1

      Unix idiosyncrasies will get really fun with the Barycentric Coordinate Time. At some point humanity will probably use it (or something close) more and more; and in an environment where high levels of precision can be often a matter of life and death...

      --
      One that hath name thou can not otter
  5. Oracle by Anonymous Coward · · Score: 5, Interesting

    Perhaps Oracle should concentrate more on making their software reliable, and less on lawsuits.

    From what I recall Digital VMS didn't have that problem, and even had no problems migrating an always on system over different processors, and keeping the cluster running over more than 15 years. One second and Oracle crashes.

    It's a pity which of those companies survived.

    1. Re:Oracle by williamhb · · Score: 2, Interesting

      Perhaps Oracle should concentrate more on making their software reliable, and less on lawsuits.

      From what I recall Digital VMS didn't have that problem, and even had no problems migrating an always on system over different processors, and keeping the cluster running over more than 15 years. One second and Oracle crashes.

      It's a pity which of those companies survived.

      Speaking empirically (and somewhat cheekily), isn't the lesson from your example that Digital should have concentrated less on making their software reliable, and more on lawsuits, in order to survive then?

    2. Re:Oracle by TheRaven64 · · Score: 2, Interesting

      Actually, Digital should have known better than to bet their long-term strategy on a competitor. They had the fastest (by a significant margin) CPU architecture, in the form of the Alpha. They had an amazing OS in the form of VMS and a decent UNIX (some horrible bits, some really impressive ones); Tru64. Then Intel came along and said they, and the other 64-bit CPU vendors, could reduce costs by consolidating their platforms on Intel's new Itanium chips.

      Unfortunately, Itanium sucked. It wasn't cheaper than the Alpha, and performance was better eventually, but only after the Alpha had been without active development for several years. VMS stayed on VAX, Alpha, and Itanium, reducing it to a niche role. Tru64 went the same way as most other commercial UNIX systems.

      If they'd kept developing Alpha and ported VMS to x86, they'd probably still be around. They'd probably also have been in a good position to partner with ARM to produce high performance, low power, chips.

      --
      I am TheRaven on Soylent News
    3. Re:Oracle by Anonymous Coward · · Score: 0

      There's a lesson in here somewhere.

    4. Re:Oracle by evilviper · · Score: 1

      They had an amazing OS in the form of VMS and a decent UNIX (some horrible bits, some really impressive ones); Tru64. Then Intel came along and said they, and the other 64-bit CPU vendors, could reduce costs by consolidating their platforms on Intel's new Itanium chips.

      Digital never had an OS called Tru64, and they never decided to hitch their wagon to Intel's. That would be COMPAQ you are thinking of, not DEC. DEC certainly did continue to develop Alpha and DigitalUnix up until the end, which is why COMPAQ got it, fully formed, and merely renamed the OS to get Digital out of the title. What COMPAQ did with Digital after they bought it out is hardly DEC's fault. DEC's fall from #2 in the computing world to a ruins, which COMPAQ could then aquire, was ALL DEC's doing, and it happened long before Itanium.

      --
      Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
  6. Faulty Software by bysin · · Score: 1

    The issue is the faulty time implementation in software, not time itself.

  7. The problem with leap seconds... by NixieBunny · · Score: 4, Informative

    They aren't predictable in advance. They are basically the noise in the solar system's timekeeping. It's impossible to write code that knows in advance when they will occur, since they are only announced six months ahead of time. So any clock that wants to stay in sync with UTC must be connected to either NTP or GPS or similar timekeeping service.
    If only those darn astronomers didn't care so much about keeping the sun at Greenwich precisely at the meridian at high noon, we wouldn't have this problem.

    --
    The determined Real Programmer can write Fortran programs in any language.
    1. Re:The problem with leap seconds... by joe_frisch · · Score: 5, Funny

      We could fix this tricky programming issue by regularly adjusting the earth's orbit....

    2. Re:The problem with leap seconds... by Anonymous Coward · · Score: 0

      How about if all the people in the appropriate hemisphere jumped at the same time?

    3. Re:The problem with leap seconds... by Yvanhoe · · Score: 1

      It seems reasonable to say that a computer program that needs to stay precise to the second on a several years interval must have a NTP or GPS.
      It seems reasonable in such case to add a test in your test suite to acknowledge for the "one leap second event on 31th of december"

      --
      The Wise adapts himself to the world. The Fool adapts the world to himself. Therefore, all progress depends on the Fool.
    4. Re:The problem with leap seconds... by Anonymous Coward · · Score: 0

      So any clock that wants to stay in sync with UTC must be connected to either NTP or GPS or similar timekeeping service.

      ...except GPS time already doesn't follow leap seconds.

    5. Re:The problem with leap seconds... by chichilalescu · · Score: 1

      6 months in advance is not enough?

      --
      new sig
    6. Re:The problem with leap seconds... by at10u8 · · Score: 1

      Neither are changes to civil time as decreed by local authorities predictable, but zoneinfo manages to handle the problem. If leap seconds went into zoneinfo with the underlying time_t being uniform then the handling of leaps would be in user space, not in kernel space.

    7. Re:The problem with leap seconds... by Undead+Waffle · · Score: 1

      Might as well fix global warming too while we're at it. Anyone have $40 billion for an Annihilatrix?

    8. Re:The problem with leap seconds... by Anonymous Coward · · Score: 0

      Your solution, if I understood it correctly, would make things easier for Oracle and harder for thousands and thousands of pieces of software that would need handle timezones like "UTC + 2h - 5s"

    9. Re:The problem with leap seconds... by wvmarle · · Score: 1

      I wonder where the real problem lies... is it that the software encounters an illegal time? Then the software writer should account for that possibility: this can be called a bug as the "illegal time" is in fact legal. Or is there something else, like the application trying to count seconds since a certain time and then running into a mismatch with the system software? Again something that can and should be fixed on application level.

      To me it seems to be very much something that software programmers that are working with time on a level that leap seconds are an issue, should know about. And thus be able to account for that they may happen - without knowing in advance when it will be.

    10. Re:The problem with leap seconds... by wvmarle · · Score: 1

      You don't have any software running on your system that is more than six months old?

    11. Re:The problem with leap seconds... by omidaladini · · Score: 2, Funny

      try
      {
      adjustEarthsOrbit();
      }catch(...)
      {
      //TODO Ask Larry.
      reboot();
      }

    12. Re:The problem with leap seconds... by chichilalescu · · Score: 1

      I don't think it can be very hard to write a code that can be told 6 months in advance that time will do something strange. It's the programmers problem if they're using too many libraries to be able to do this without introducing a few bugs.

      --
      new sig
    13. Re:The problem with leap seconds... by Anonymous Coward · · Score: 1, Interesting

      I'm an astronomer, and I hate the inclusion of leap seconds in UTC. If I have UTC timestamps for two observations, a few decades apart, and I want to find the exact interval between them (to track changes in the rotation period of a star, for example), then I need to look up all the leap seconds that occurred between them.

      Honestly, is there anyone who cares about both (a) keeping the sun at Greenwich at the meridian at high noon, and (b) timing to a precision of less than 1 second/year? Removing leap seconds from UTC would making doing either (a) or (b) easier - it only makes things harder for people who want to do both.

    14. Re:The problem with leap seconds... by wvmarle · · Score: 1

      If software is written properly it doesn't have to be told in advance that this is going to happen, it will just see it happen (getting a strange time from the system) and deal with it. This way only NTP has to know it's going to happen, and the rest will simply follow.

    15. Re:The problem with leap seconds... by Man+On+Pink+Corner · · Score: 1

      Don't astronomers usually use MJD for that very reason?

    16. Re:The problem with leap seconds... by chichilalescu · · Score: 1

      Just receiving a bad time and dealing with it is a bad idea.

      --
      new sig
    17. Re:The problem with leap seconds... by aynoknman · · Score: 1

      Here's the solution: Just get enough people working together

      --
      We need a "+1 -- nice sig" moderation.
    18. Re:The problem with leap seconds... by Anonymous Coward · · Score: 0

      Welcome to you're "DOOM!"

    19. Re:The problem with leap seconds... by bickerdyke · · Score: 1

      So any clock that wants to stay in sync with UTC must be connected to either NTP or GPS or similar timekeeping service.

      ...except GPS time already doesn't follow leap seconds.

      but, as I learned, at least transmits the offset against UTC (= number of skipped leap seconds) along with the GPS time signal.

      --
      bickerdyke
    20. Re:The problem with leap seconds... by bickerdyke · · Score: 1

      why are you using UTC-Timestamps in the first place instead of, say, TAI timestamps?

      --
      bickerdyke
    21. Re:The problem with leap seconds... by GrumblyStuff · · Score: 1

      You jest but we have affected the Earth's rotation by damming so much water. The effect is small but akin to an iceskater pulling in her arms to spin faster.

    22. Re:The problem with leap seconds... by Anonymous Coward · · Score: 0

      Nope. My systems run Cisco IOS

    23. Re:The problem with leap seconds... by petermgreen · · Score: 1

      The fundamental problem as I understand it is that operating systems (at least *nix and windows) use time formats that either can't represent leap seconds (because they count time intervals exluding leap seconds since some EPOCH) or could theoretically represent them but don't (see for example the documentation of "SYSTEMTIME" on windows that clearly states valid values for the seconds field as 0-59).

      So applications end up seeing a leap second as a jump backwards in time as the fractions of a second tick roll over but the seconds don't advance. Jumps backwards in time have a number of problematic affects.

      1: time differences calculated spanning the leap second are inaccurate.
      2: short time differences arround can come out negative which can crash some software (ideally short time differences should be calculated from a seperate monotonic clock to avoid this but that can be difficult to do in practice since the monotonic clock on windows wraps annoyingly often and there doesn't seem to be a standard way to get a monotonic clock on *nix).
      3: timestamps no longer correctly document the order in which things happened (this can be particularlly important for software like databases).

      --
      note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register
    24. Re:The problem with leap seconds... by Anonymous Coward · · Score: 0

      We could fix this tricky programming issue by regularly adjusting the earth's orbit....

      Ejecting a few billion Chinese and Indians into outerspace via super-duty catapults every century or mllenium, depending on aggregate weight differrentials between the Earth and those soon-to-be ejected persons, could solve the time-keeping issue and be environmentally-friendly to Mother Earth.

    25. Re:The problem with leap seconds... by ktappe · · Score: 1

      If only those darn astronomers didn't care so much about keeping the sun at Greenwich precisely at the meridian at high noon, we wouldn't have this problem.

      "If only those darn HUMANS didn't care so much about keeping the sun overhead at noon" you mean.

      --
      "We can categorically state we have not released man-eating badgers into the area." - UK military spokesman, July 2007
    26. Re:The problem with leap seconds... by Anonymous Coward · · Score: 0

      Except if you live anywhere but Greenwich, it will be off by up to a half-hour, depending on where you are in your time zone, so the entire exercise is meaningless.

    27. Re:The problem with leap seconds... by Grim+Leaper · · Score: 1

      We could fix this tricky programming issue by regularly adjusting the earth's orbit....

      The time-honoured approach: fix the software problem in hardware. I like it!

    28. Re:The problem with leap seconds... by Anonymous Coward · · Score: 0

      Fine, could you tell your mom to exercise more often.

    29. Re:The problem with leap seconds... by John+Hasler · · Score: 1

      If leap seconds went into zoneinfo with the underlying time_t being uniform then the handling of leaps would be in user space, not in kernel space.

      Yes. That is the way to handle it.

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    30. Re:The problem with leap seconds... by John+Hasler · · Score: 1

      "If only those darn HUMANS didn't care so much about keeping the sun overhead at noon" you mean.

      So adjust the time when (and only when) you are going to show it to a human.

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    31. Re:The problem with leap seconds... by maxwell+demon · · Score: 1

      Well, it's a very specific bad time (60 seconds after the minute), and it only can occur at very specific times (IIRC there are exactly two times a year where a leap second could be inserted). Therefore a malfunction causing this very specific time at the very specific date is much less likely than a malfunction creating a generally valid-looking time. Therefore basically the following rule should work well: If seconds>60 or seconds0, it's bogus. If seconds == 60, check if it's one of the two times a year it may occur, otherwise it's bogus. If it's at one of the two valid times, assume it's a legit leap second. Basically it increases the number of valid time codes in a year from 31536000 different values (31622400 for leap years) to 31536002 different values (31622402 for leap years).

      --
      The Tao of math: The numbers you can count are not the real numbers.
    32. Re:The problem with leap seconds... by Anonymous Coward · · Score: 0

      It not just astronomers. Despite the advent of LORAN-C and GPS, celestial navigation is still practiced as a backup method. As a small-boat sailor, I love my electronics, but not to the point of trusting the safety of my vessel and crew to their reliability. Seawater is just to good a conductor, and too good at getting into places it doesn't belong.

      If you're reading this in English and aren't in the UK, it is a direct result of the ability of the British Admiralty to keep accurate time synchronized with the Royal Astronomical Observatory in Greenwich.

    33. Re:The problem with leap seconds... by SamSim · · Score: 1

      If we're going down that road, can we have a 360-day year?

    34. Re:The problem with leap seconds... by Anonymous Coward · · Score: 0

      Well without NTP your computer clock will with high probability deviate from real date by few seconds after a year.

      Oracle guys probably crashed becuase they do not excepted something in the form of 23:59:60. And this throwed exception somewhere.

      If you have NTP (and you should, of course from verified and secure source) , you can also easly download builetines once a week and compensate. It is not very hard. And it isn't very important in most software systems.

  8. Sweeping the issue away? by Anonymous Coward · · Score: 0

    I guess for some train timetable the question of using UT or UTC will be quite interesting in 20 years (when the difference is 15 seconds). Abandoning the leaps seconds for a millenium seems a way to make the issue hide from our sight, but then we need to abandon using anything non-UTC-based for timetables.

    And imagine "the problem of leap hour" - Y2K will pale...

  9. warp by Anonymous Coward · · Score: 0

    OMG !

    please twist reality so that software developper won't make errors ? THAT's the idea ?

    Considering people I work with are still today unable to get the proper week number in a given year in their applications, I understand the leap second can be a hassle, yet it does exist for a reason.

    Who remembers that 1900 and 2100 weren't and won't be bissextile ?

    Rules exist and govern the world. When implementing them, first thing is to get to know them.

    1. Re:warp by Anonymous Coward · · Score: 0

      Who remembers that 1900 and 2100 weren't and won't be bissextile ?

      What 1900 and 2100 do in their bedrooms is no one's business except their own.

  10. Changing time because of Oracle? by koinu · · Score: 4, Insightful

    Leap seconds are handled well, when the system supports it well and the software is not utter crap.

    I am always annoyed when people break basic things to make software work (e.g. hardware, also see ACPI). Now they are not only breaking hardware, but redefining measurements to make buggy software work. What comes next?

    I can understand when something is changed for convenience purposes (to have simpler calculations), but justified with buggy software is plain wrong. And I surely don't care if an Oracle database "reboots"... whatever that might mean.

    1. Re:Changing time because of Oracle? by arcade · · Score: 1

      Not only Oracle.

      Leap seconds the way they're handled in Unix (and probably a lot of other platforms) is straight out stupid.

      The definition of how time is accounted for in Unix needs to change from being bound to UTC, to being bound to TAI. This, in addition to an /etc/leapseconds or somesuch which keeps track of when to insert leapseconds (can probably be distributed via ntp - if not yet, it should be simple enough to make it so).

      Now, with the system clock running TAI, and an /etc/leapseconds file, the system libraries should return the correct time according to the configured LOCALE, as long as it takes the skew from /etc/leapseconds into account. At the same time, seconds from epoch, if you want them, would be monotonically increasing and not fucked around with just because of some leapseconds.

      --
      "Rune Kristian Viken" - http://www.nwo.no - arca
  11. More Complication by Anonymous Coward · · Score: 0

    I, for one, like the idea of being able to take a the UNIX time of event one and subtract the UNIX time of event two to get the elapsed time. Keep it simple. But it won't be simple because making the change now still means pre-2010 will be handled differently, so I'm not sure this is a good idea.

    1. Re:More Complication by Lord+Bitman · · Score: 1

      I like the idea of being able to take the IP address of one workstation, and subtract the IP address of another workstation to get the number of people sitting at the same table. But I don't, because that's not what it means and it's not what it should mean.

      --
      -- 'The' Lord and Master Bitman On High, Master Of All
  12. Time Zones... the stupidest idea ever conceived by Anonymous Coward · · Score: 0

    This is a good move but really the whole time system is messed up. Our current system has timezones which extends a flat-earth mentality and pretends like the world has 24 sides (except in Canada where they have 30 minute timezones). Your location should have nothing to do with time, it's absurd that we still have timezones.

    China had the right idea -- no timezones in that country.

    1. Re:Time Zones... the stupidest idea ever conceived by scdeimos · · Score: 1

      except in Canada where they have 30 minute timezones

      Don't forget Nepal with its 15-minute offset (currently UTC+0545).

    2. Re:Time Zones... the stupidest idea ever conceived by _merlin · · Score: 1

      You need timezones simply so that businesses, schools, etc. located close together (in longitude) can agree on opening times. It would be far more complex if you didn't have time zones.

    3. Re:Time Zones... the stupidest idea ever conceived by Per+Wigren · · Score: 1

      I agree. We should move to the TAI time zone instead of UTC/GMT as the basis instead of changing UTC, and in the long run get rid of time zones. What does it matter if your work day is defined as 14-22 instead of 8-17 when it's the same thing anyway? Oh, and the yanks and brits should also move to 24h time and SI-units and all of us should measure temperatures in Kelvin . :-)

      --
      My other account has a 3-digit UID.
    4. Re:Time Zones... the stupidest idea ever conceived by bickerdyke · · Score: 1

      If you're proposing a global time without the need for timezones, don't make it confusable with "ordinary" times. People tend to meet at "2 o' clock" and NOT at either "two hours after the sun passing its highest point" or "two hours after the global time resetted to 0"

      Each time would need to be accompanied with information about the timescale in use.

      Or to be more exact: Each time would STILL need to be accompanied with information about the timescale in use.

      This should already be done, but usually can be skipped if you have an idea if the person you're talking with is in the same country.

      --
      bickerdyke
    5. Re:Time Zones... the stupidest idea ever conceived by GrumblyStuff · · Score: 1

      Don't forget Poland!

    6. Re:Time Zones... the stupidest idea ever conceived by Per+Wigren · · Score: 1

      I don't understand why one would resort to "two hours after the sun passing its highest point"?

      Why is it harder to say "we meet at 15 o'clock" (which can mean the same thing that "we meet at 2 o'clock" means today depending on where you are)? On the internet you can say "logon to IRC at 11" and global TV channels can just say "news at 11" and it's 11 o'clock for everybody all over the world.

      I don't think it should be that hard to relearn that "morning" is another number on the clock than it is today.

      --
      My other account has a 3-digit UID.
    7. Re:Time Zones... the stupidest idea ever conceived by bickerdyke · · Score: 1

      Because it will be confusing and not clear if you're referring to the "old" or the "new" 11 o'clock.

      you're giving an old expression new semantics. That's confusing at best, newspeak at worst.

      At least make the new timescale different enough from the old one so that it's clear to which someone is referring.

      Swatch did at least this right when they tried their "internet time". (Thats pretty much the same thing you're proposing)

      --
      bickerdyke
    8. Re:Time Zones... the stupidest idea ever conceived by Per+Wigren · · Score: 1

      It would only be confusing if only half of the population switched to the "global time zone".

      It's no different than going from summer time to winter time. Just set your clock to the correct time in the new time zone and be done with it. It's not like people ask "11 o'clock in winter time or summer time?" when you say "11 o'clock" in the middle of the summer, or "11 o'clock in Sydney or New York?" when you are in New York. There is no new semantics involved.

      --
      My other account has a 3-digit UID.
    9. Re:Time Zones... the stupidest idea ever conceived by Anonymous Coward · · Score: 0

      They can still agree on a time. Why couldn't they?

    10. Re:Time Zones... the stupidest idea ever conceived by Anonymous Coward · · Score: 0

      Actually, we used to need timezones for that, because there was a period in history where people were mobile enough to routinely deal with more than a few seconds' worth of local solar time difference, but timekeeping technology was not universally advanced enough to maintain a single global time everywhere.

      This is no longer the case; only tradition prevents us from using UTC for everything. Local harmonization of business hours would naturally follow as people simoly converted their old hours to UTC, and ifanyone really thought DST made sense, they could always push their local school board to adopt "winter hours (or more likely to shift the entire schedule).

    11. Re:Time Zones... the stupidest idea ever conceived by Anonymous Coward · · Score: 0

      You need timezones simply so that businesses, schools, etc. located close together (in longitude) can agree on opening times. It would be far more complex if you didn't have time zones.

      The notion of timezones was established in response to time-keeping and scheduling for the railroads. At the outset timezones had nothing to do with schools, farms, or business, apart from the business of railroads. " The first time zone in the world was established by British railways on December 1, 1847 — with GMT hand-carried on chronometers." (http://www.exactspent.com/time_zone.htm)

    12. Re:Time Zones... the stupidest idea ever conceived by bickerdyke · · Score: 1

      It would only be confusing if only half of the population switched to the "global time zone".

      Good luck trying to switch the whole world to the same thing at once.

      I'll come back to you when the confusion between inch and m is gone for good. (and I'm not even talking about real SI units!) I guess bythen also everyone drives on the same side of the roads...

      --
      bickerdyke
    13. Re:Time Zones... the stupidest idea ever conceived by sznupi · · Score: 1

      Not quite - summer and winter time are not that much different; not much outside of gradual transitions in day/night lenght happening throughout the year anyway. Plus as it is, you know pretty well when everybody should be awake, at work, eating dinner, etc.; everywhere.

      Instead of remembering to check other timezones (when needed) now, you would need to remember about local schedules. I think it might be sligthly more confusing; though who knows, perhaps worth it at some some stage of world integration...

      --
      One that hath name thou can not otter
  13. Anonymous Coward. by Anonymous Coward · · Score: 0

    It's all well and good to blame developers, but what about when the definition of time itself we have to work with frequently doesn't account for them (i.e. Unix time).
    http://en.wikipedia.org/wiki/Unix_time

  14. Why not get rid of leap year correction? by MessageDrivenBean · · Score: 1

    While we are at it, why don't we get rid of leap year correction at all? Why do we still have leap year correction? I mean, 1 day every 4 years means a month every 120 years means a season shift every 360 years. People won't notice it during their 'normal' lifespan (apart from cryonics). What benefits does the leap year correction itself bring? What unforeseen consequences will occur when the leap year correction isn't applied anymore? Why is it important to have a perfect "seasonal year"/"seasonal calendar"?

    --
    Quisque verborum suorum optimus interpres...
    1. Re:Why not get rid of leap year correction? by ekran · · Score: 1

      I think that the major benefit is that you don't have to worry about experiencing snowfall in July (unless you live really far North.)

    2. Re:Why not get rid of leap year correction? by MavEtJu · · Score: 1

      Have a chat with Mr Julian and Mr Gregorian.

      --
      bash$ :(){ :|:&};:
    3. Re:Why not get rid of leap year correction? by WoRLoKKeD · · Score: 1

      What unforeseen consequences will occur when the leap year correction isn't applied anymore?

      Oh sure, give them ideas. This was probably what caused the systems in Black Mesa to go wrong.

      You may well have just doomed us all.

      --
      Immolation is the sincerest form of flattery.
    4. Re:Why not get rid of leap year correction? by Anonymous Coward · · Score: 0

      Or South.

    5. Re:Why not get rid of leap year correction? by Trepidity · · Score: 1

      That's Julius Caesar and Pope Gregory XIII to you.

    6. Re:Why not get rid of leap year correction? by sznupi · · Score: 1
      --
      One that hath name thou can not otter
  15. The root of the problem by Joosy · · Score: 4, Funny

    The original article has a quote from one person who sees through the mess to the root of the problem:

    The revision "doesn't resolve the underlying geophysical issue"

    Simply resolve the "underlying geophysical issue" and the problem will be solved.

    --
    I'm sick and tired of these hip, "ironic" sigs. This is an actual, honest-to-goodness no-nonsense sig!
    1. Re:The root of the problem by scdeimos · · Score: 1

      Yes, let's use rockets to make the earth spin slightly faster so it keeps up with UT. :)

    2. Re:The root of the problem by sznupi · · Score: 1

      Wouldn't really work with an exhaust confined to the atmosphere; a bit like blowing into the sail of a boat in which you stand.

      If not for that small problem - we finally could have some use of all those nuke stockpiles... (nuclear detonations on west sides of steep mountains near the equator would be probably the closest to practical method)

      PS. Aren't we launching space rockets primarily in the "wrong" direction? Did I find the culprit? ;)

      --
      One that hath name thou can not otter
  16. Ok... by Chyeld · · Score: 5, Insightful

    Isn't this like legislating that PI is 3.14 because some people have problems with the idea of irrational numbers? If programs have issues with leap seconds, it sounds like programs weren't written properly, not that the spec needs to be rewritten to accommodate this flaw. Would these same people have demanded that it be 1999 again to avoid all the costs of the Y2K fixes?

    1. Re:Ok... by wvmarle · · Score: 1

      I get the idea but I think it's not that great an example.

      Pi is irrational - but also a constant. And can easily be approximated; for many applications 3.14 is accurate enough. And with modern computers it's trivial to go for higher accuracy.

      Time, as in UTC, is moving. Not a constant, but always moving, always changing, and thanks to leap seconds not fully predictable in its values. And this unpredictability is what apparently breaks some software.

    2. Re:Ok... by ath1901 · · Score: 2, Interesting

      No, it is not the same thing. PI can be determined algorithmically but there is no algorithmic way of predicting leap seconds since they are added whenever it is deemed necessary.

      Thus, you can not write a program that "handles" leap seconds without constant outside input (for example internet connection and wikipedia). I would be much annoyed if my wrist watch wanted to connect to wikipedia every couple of months...

      I consider the leap second a big mistake since it makes it inaccurate to talk about future time. I can state that "X seconds have passed since 2008" but not "Y seconds will pass until 2012".
      A leap hour every couple of 100 years (as the article mentions) would cause much less trouble.

    3. Re:Ok... by Estanislao+Mart�nez · · Score: 2, Insightful

      The correct value of pi is the conclusion of a theorem. If you propose that the ratio of the circumference to the diameter is exactly 3.14, we can use math to prove that you're wrong. We don't have any choice as to what the value is; if you assume the wrong value for pi and try to reason from that assumption, you're going to end up with contradictory conclusions.

      UTC, on the other hand, is an arbitrary convention. Its inventors and adopters chose to keep it within one second of GMT by adding or subtracting leap seconds at the unpredictable times when it starts to diverge too much. They could have chosen not to care about it, and they could now choose to stop doing so. All that we're changing is the labels in the scale in the time axis.

      To give an analogy, it's like deciding to write pi in binary from now forward instead of decimal: 11.001001000011111101101010100010001... It's the same number, but we've labeled it differently.

    4. Re:Ok... by FrootLoops · · Score: 1

      It's more like saying pi=3.1415927, considering one year is about 32 million seconds. At some point accurate is accurate. The only real issue in my mind is, will we still be using UTC when leap seconds seconds accumulate to effect a significant number of its applications? Since they've been added about once per year, I doubt it.

    5. Re:Ok... by thegarbz · · Score: 1

      But a leap second can be managed without significant problems to anything. A database suddenly thinks it was one second ago and you get a few time entries that are out or miss-sorted. Moving to a leap hour is simply ignoring the problem now and making a bigger problem in 100 years time. When that time comes we'll still need external input to make it accurate, however all of a sudden there's no easy way to manage it. You're stuck with moving the clock an hour, whereas with a second you could slow / speed up time for a period, or simply write software that understands 24:59:60 as a valid input.

      What really needs to happen is for computer programmers to put up with the decision they made or simply co-ordinate to move to a time scale like GPS time or TIA (atomic time) which doesn't have external input, not lobby to bend time to make it suit your application.

    6. Re:Ok... by ath1901 · · Score: 1

      I believe a leap hour which would occur every 6000 years would be easier to handle than a leap second occuring every second year (approx).

      The leap hour could be announced a couple of hundred years in advance giving plenty of time for lazy programmers to update their COBOL apps.

      Question is, what do we gain from keeping the leap second? I can't think of a single reason to keep it. Just admit it was a mistake to begin with. Who cares if we are perfectly aligned with the celestial bodies or not?

    7. Re:Ok... by Wannabe+Code+Monkey · · Score: 1

      Isn't this like legislating that PI is 3.14 because some people have problems with the idea of irrational numbers?

      I get your point. But, to me it kind of seems like having leap seconds in the first place is more like legislating the value of pi because people have a hard time reconciling that 1 sec != 1/86400 of a day all the time. They basically want 1 second to always be constant and they want solar noon at Greenwich England to be 12:00:00 on their clocks. It would be like people wanting the diameter and circumference of a circle to both be rational numbers.

      --
      We always knew Comcast was corrupt, here's the proof: http://tech.slashdot.org/comments.pl?sid=1909890&cid=34545432
    8. Re:Ok... by noidentity · · Score: 1

      I think the difficulty is that leap seconds are rare enough that they aren't given much priority, similar to properly handling the tens and hundreds digits of the year.

    9. Re:Ok... by thegarbz · · Score: 1

      But that's the point. UTC (Coordinated Universal Time) is a time scale specifically created to line up Atomic Time (TAI) with the movement of celestial bodies as defined by the Royal Observatory in Greenwich.

      If you don't want a leap second there exists other time keeping methods such as GPS time or TAI. Instead the world adopts UTC and then complains that it is adjusted for earth's rotation? I mean it's not like this wasn't known before. Rather than changing a time system that much of the world uses just so programmers can write simpler programs that don't need to rely on external time adjustment why not simply adopt a system that is more suitable to what you are doing in the first place.

      You may not be able to think of a single reason to keep the leap second, and frankly neither can I, but this is a very one sided view of a debate that seems to crop up at least once a year. Someone out there (astronomers maybe) seem to rely on the leap second otherwise the debate would have been over many years ago (didn't Bush try to get rid of the leap second too?).

  17. Unreliable by Khyber · · Score: 0, Troll

    "The leap second added on to the end of 2008, for instance, caused Oracle cluster software to reboot unexpectedly in some cases."

    And people wonder why I tell them to avoid Oracle at all costs.

    They don't have the team to debug-test this crap, they *ONLY* test for running functionality.

    I got hit by this bug - it cost me half a million dollars.

    If you use Oracle software, you're a total fool.

    --
    Still waiting on Serviscope_minor to wake up to fucking reality and realize that Jessica Price isn't going to fuck him.
    1. Re:Unreliable by dakameleon · · Score: 3, Interesting

      So you knew that leap seconds should be tested for, did you?

      I'm not defending Oracle, but at least give them this much credit - leap seconds don't exactly spring to mind when you're planning a test suite for software. Certainly after this incident I can't imagine they would miss it again, but I'd have been surprised if anyone can claim they knew to test for these beforehand.

      --
      Man who leaps off cliff jumps to conclusion.
    2. Re:Unreliable by swilver · · Score: 1

      Maybe not, but I doubt it would cause any fatal errors in otherwise properly written software.

  18. This is Bull* ... by garry_g · · Score: 2, Interesting

    Sounds to me like some programmers are putting the blame on anyone else than themselves ... I'm wondering, how do computer systems cope with re-syncing the local clock with a remote time source, e.g. NTP server? Computer RTCs are _never_ exact, so updating the local time is necessary in regular intervals, which will always lead to time jumps of milli-, micro- or even complete seconds and more. If your software can't cope with that, fix your software, but don't expect the universe will adapt to fix your shortcomings!

    1. Re:This is Bull* ... by Anonymous Coward · · Score: 0

      Time jumps break software that relies on time, obviously; the solution is generally to skew the clock speed rather than jump it. This can correct your micro- or milli-second errors that you have once you're synchronized to a reliable clock source, but can't be used for leap seconds.

      You can't have one second be both 1/86400 of a rotation of the Earth and be a constant length of time. You need to pick one or the other. Leap seconds are a crude hack.

    2. Re:This is Bull* ... by boxwood · · Score: 1

      its just not something you think of when programming, and even if you did, there is no easy fix. 23:59:60 is 99.99% persent of the time an invalid time. Even if you though to test for that, you don't know in advance what days that that time is valid for.

      So you have to write a program to occassionally check NTP somehow so that you know when you can make that exception. Maybe you can make a call to the OS to do this? Thats a lot of searching docs. And what if the OS on your client machine is not aware of the leap second, but the server is? The server checks with NTP often, but I have to write some software for some network aware devices that connect to the server. Does the embedded OS I'm running on that device support leap seconds? What do I do if it doean't? I guess I have to add a check for any data that it gets from the server that has a time field, and if the second part of the time is 60, change it to 59. But thats not a good solution because If I use that time to "SELECT * FROM table WHERE time=@time" and I've made an alteration to the time varible I'm setting the parameter to, its not going to work. So I guess I have to create a new class to store time. But if I ask the user to enter a time do I allow him to enter 60 in the seconds field? It might be valid, but I have to have this device keep using network resources so it knows when leap seconds are valid.

      You're talking about a lot of resources, time and effort to make time correct.

      I can understand wanting to keep time accurate, but wouldn't a leap minute be much more sensible? when time is off by around 60 seconds, they could announce that in ten years time, there will be a leap minute. Then at least we know well in advance that on a certain date, there will be an extra minute. we can write in the code if "date = xx/xx/xxxx then 23:60 is valid. And if someone does miss something its only going to cause an issue two or three times a year, not once or twice a year.

  19. the problem will not go away even without leaps by at10u8 · · Score: 3, Informative

    The historical record of time_t is already ambiguous and cannot be corrected by abandoning leap seconds. There is a way to get leap seconds out of the kernel and into user space which amounts to reclassifying them as decrees of change of civil time and putting them into zoneinfo while letting the broadcast time scale not have leaps. It's a matter for posterity whether the word "day" will be re-defined by the ITU-R, changed from the current treaty-specified "mean solar day" to a technically-defined "atomic day".

  20. Maybe not... by bradley13 · · Score: 1

    The last thing we want is every programmer inventing his or her own way to deal with this - imagine the mess of mutually incompatible implementations. Moreover, just how do you propose to change time-validation code to accept 23:59:60? With leap-days, it is quite clear when February 29th is acceptable and when not (and look how many people still get it wrong!). With leap-seconds, there are no rules. Just imagine the myriad of ways creative people will be able to foul this up! Leap seconds should be completely ignorable for everyone outside of physics and astronomy. They should disappear into routine time-corrections from the central time servers.

    --
    Enjoy life! This is not a dress rehearsal.
    1. Re:Maybe not... by bickerdyke · · Score: 1

      Sounds good, but would be another timescale where seconds are of a variable length, keeps in sync with astronomical time, unix time AND UTC without leap seconds.

      I propose the name Simple Universal Computer timeKeeping.

      --
      bickerdyke
  21. why not give people the option by bugs2squash · · Score: 1

    That is utc with choice of correction factors. Never more than 10ns correction but at unpredictable times, a few 100s of ns every week at midnight (old UTC) on Sunday or an occasional annual update of a few seconds. Pick the update scheme that suits your situation best. They could be called UTCa, UTCb etc. To most people that don't care, it will all still be UTC.

    --
    Nullius in verba
    1. Re:why not give people the option by Anonymous Coward · · Score: 0

      You are almost there. UTC should consist of a count and an offset. Only the offset ever gets adjusted.

      Side problem is that all real time clock IC's used in computers keep time in hours, minutes, seconds, instead of a time (in 1/32768ths of a second) plus an offset. Causes no end of problems.

  22. Invalid Assumptions by RAMMS+EIN · · Score: 1

    ``Since their introduction in 1971, leap seconds have proved problematic for at least a few software programs. The leap second added on to the end of 2008, for instance, caused Oracle cluster software to reboot unexpectedly in some cases.''

    That just means that the software contains invalid assumptions. And, in this case, it seems to me that it was quite poorly worked out. Time being off by a second causes the system to reboot? I don't think that's what the customers ordered.

    --
    Please correct me if I got my facts wrong.
  23. Superior solution by butlerm · · Score: 1

    Getting rid of leap seconds in the representation would be a mistake in the long run. A much superior fix would be to have computers keep track of TAI internally and then convert to UTC with a leap second table, much the same way we convert to local time with a time zone table.

    Cluster software should be running off of a leap second free distributed clock, and TAI or the equivalent is the best one we have, handily provided (within a constant) on a world wide basis courtesy of the GPS system.

    POSIX time_t values as it stands today isn't much of a clock at all, more like a short hand for encoding a wall time. We should have a new interface for a reference clock that doesn't need unpredictable adjustments every couple of years, _by definition_.

    1. Re:Superior solution by arcade · · Score: 1

      Indeed. I've been arguing for using TAI as the basis for unix time for a while, then have various time-functions return UTC.

      One could have an /etc/leapseconds that is kept up to date by ntp, which gets its leapseconds from it's upstream ntp-servers. It could simply list the seconds-from-epoch where a leap should be inserted. In other words, it would slowly be appended to whenver a new leapsecond is announced.

      Libraries read /etc/leapseconds to figure out how to convert TAI to whatever timezone the user wants.

      --
      "Rune Kristian Viken" - http://www.nwo.no - arca
    2. Re:Superior solution by Chrisq · · Score: 1

      Exactly. Why bother to change the definition of UTC when computers could already use TAI if they don't want leap seconds.

  24. What about leap days? by Anonymous Coward · · Score: 0

    I doubt most of us would miss Mondays.

  25. The best solution is a robust solution by Chuck+Chunder · · Score: 3, Interesting

    I think it makes absolutely no sense for most computers or programmers to have to account for leap seconds.

    The reality is that computers already have to allow for their clock drifting from universal time, that's why we have NTP. There's no point getting individual computers account for leap seconds, it would be easier and less error prone if reference clocks transparently accomodate leap seconds (ie without sending a 23:59:60 to the world) and everyone else can just drift back in sync with them when one occurs.

    There may be a few applications where a computer really does need to accomodate leap seconds (such as a reference clock!) but for the rest of us the additional complexity gives no advantage whatsoever.

    --
    Boffoonery - downloadable Comedy Benefit for Bletchley Park
    1. Re:The best solution is a robust solution by shird · · Score: 1

      This exactly. Even if they didn't correct their clocks through NTP or other means, their clocks would only be slow by about 10 seconds or so over the course of 50 years. The servers/desktop PCs are likely to have been rebooted a few times in those 50 years, so they can correct the clocks in that downtine if they really must. As you mentioned, clock drift and corrections via NTP make thinking about implementations of 'leap seconds' for end user software a waste of time.

      --
      I.O.U One Sig.
    2. Re:The best solution is a robust solution by jelle · · Score: 1

      Drift is not a solution. Drift means accepting you will have a clock that can be one second off. Accurate clocks means that two independent systems are each keeping time accurately enough to allow monitoring of events such that it is known which event occurred first, or how much time difference _exactly_ there was between the events, even if the events occurred on different systems thousands of miles apart.

      --
      --- Hindsight is 20/20, but walking backwards is not the answer.
    3. Re:The best solution is a robust solution by TheRaven64 · · Score: 1

      Even if they didn't correct their clocks through NTP or other means, their clocks would only be slow by about 10 seconds or so over the course of 50 years

      A bit more than that. The difference is about 0.002 seconds per day, so it will be around 36 seconds after 50 years, or about a minute per century. Actually, about a minute and a half for the next century, because the length of a solar day is slowly increasing. How many people are in a position where they will be affected by noon and midday being at different times by a few minutes? Maybe a few thousand? It's really not worth fudging the entire time system that everyone uses just for those few. When it gets really bad, in a couple of thousand years, add a leap-hour if anyone cares. Or add a leap minute every century. Or don't bother - the difference will get worse every century, and eventually you get to the point where the solar day is so far off that it's not worth trying to keep the two in sync.

      --
      I am TheRaven on Soylent News
  26. Please do this ten years ago! by TimToady · · Score: 1

    They ought to have abandoned leap seconds in the year 2000, which would have made a dandy new epoch, and simplified all date calculations for a millennium or so. There is absolutely no reason to inflict leap seconds on civil time; the amount I'm off from the center of my current time zone already introduces more error than that. It's just not important to anyone but astronomers or masochists. Well, and maybe sadists (especially standards wonks).

  27. Comment removed by account_deleted · · Score: 1

    Comment removed based on user account deletion

  28. Representative sample of tech reporting by c0lo · · Score: 1
    From TFA:

    Since 1971, 24 leap seconds have been added on to UTC in order to reconcile UTC and Universal Time.

    In the revised ITU plan, the divergence between UTC and UT will be allowed to grow over the next few hundred years, and could be reconciled by a single leap hour at some point.

    Hmmm... let's say: 40 years for 24 leap seconds... yeah... it would be allowed to grow over the next 60 hundreds years... quite a few indeed (some would even argue that's the age of the world).

    --
    Questions raise, answers kill. Raise questions to stay alive.
    1. Re:Representative sample of tech reporting by at10u8 · · Score: 1

      the deviation is quadratic, so an hour accumulates 800 to 900 years

  29. oracle? by omidaladini · · Score: 1

    Can someone explain what kind of business the Oracle cluster was doing with the seconds?!

  30. Superior solution indeed... by KonoWatakushi · · Score: 1

    This is exactly what should be done. Since Unix time does not include leap seconds, it is discontinuous--either skipping a second, or repeating the same one twice. Almost all software built on top of it simply wants a monotonically increasing clock, with no regard for the date. It is annoying to have to check for a leap second every second and in every application that needs this functionality. TAI is simply more appropriate for internal timekeeping.

    Like leap years, leap seconds should only concerned when the time is needed in date form--after all, both of their goals are to keep our calendar and time of day in sync with solar time.

    1. Re:Superior solution indeed... by John+Hasler · · Score: 1

      This is exactly what should be done. Since Unix time does not include leap seconds, it is discontinuous--either skipping a second, or repeating the same one twice

      Only on remarkably poorly configured systems. Others skew the clock by slowing it down until it is correct (usually using Chrony or Ntpd). The clock is never stepped. It is still wrong during the slewing period, however.

      Like leap years, leap seconds should only concerned when the time is needed in date form--after all, both of their goals are to keep our calendar and time of day in sync with solar time.

      Yes. Like local time, UTC should be something that is generated on request from system time and a lookup table. System time should be TAI or an offset thereof.

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
  31. Bah, you don't get it! by LostMyBeaver · · Score: 1

    Let's face it, in we've found copies of the Epic of Gilgamesh dating to 4500B.C., the old testament (which is really more a monotheistic superset of gilgamesh) is from 1800B.C.ish. The real reason only "scholars" got the whole math thing is because they were the only ones who knew why the were counting down instead of up.

  32. so... by yyxx · · Score: 1

    We're all supposed to set our clocks wrong because Oracle can't write software that doesn't crash? I think not.

    Probably just another attempt by Larry Ellison to demonstrate his power; one really wonders what he is trying to compensate for.

  33. The real problem is using seconds for everything by Terje+Mathisen · · Score: 5, Interesting

    I've worked with NTP for nearly 20 years now, and the leap second adjustments isn't a real problem.

    The crux of the matter is that we've insisted (in both Unix and Windows) on measuring calendar events in seconds:

    The proper solution is to use Julian Day Number as the basic unit for calendars and (SI) seconds for any kind of short-term measurement. If you really need second/sub-second precision for long-term (multi-day) measurements, then you have to accept that the conversion is not just a matter of multiplying/dividing by 86400.

    Calendar appointments and similar things should be defined by day number and some form of fractional day, not SI seconds.

    NTP is somewhat to blame though: Even though it has full support for leap second handling (both adding and subtracting), the core of the protocol pretends that UTC seconds (without leap adjustments) is sufficient, i.e. NTP timestamps are defined to be in a 64-bit fixed-point format with 32 bits counting seconds since 1900-01-01 and 32 bit for the fractional seconds, i.e. sufficient to handle a 136-year block with a quarter of a ns resolution.

    http://www.eecis.udel.edu/~mills/ntp/html/ntpd.html#leap

    This causes small hiccups for an hour or so after each adjustment: The primary servers and those that either have a leap-second aware source or a cluefull operator keep in sync throughout the adjustment, while the remainder will slowly detect that their local clocks seems to be a full second off. Since this is way more than the default +/- 128 ms which NTP is willing to handle with gradual adjustments, NTPD will instead step the clock (backwards for an added leap second) and restart the protocol engine, after discarding all history.

    Modern versions of NTP have been rewritten to use a vote between all otherwise good servers: If a majority claim that there will be a leap second at the end of the current day, then the local deamon will believe them, and thereby stay in sync even during the actual leap second itself.

    Terje

    --
    "almost all programming can be viewed as an exercise in caching"
  34. Let's see if I've got this right by Joce640k · · Score: 5, Insightful

    We have to make every clock in the world inaccurate because Oracle's software is crap...?

    --
    No sig today...
    1. Re:Let's see if I've got this right by Chrisq · · Score: 2, Funny

      Careful ... bitching about Oracle's patented.

    2. Re:Let's see if I've got this right by TheRaven64 · · Score: 4, Interesting

      Do we actually care about that level of accuracy? The leap second is a stupid idea to start with. We have leap years because a calendar year is about a quarter of a day shorter than a solar day. Without them, you'd have the seasons slowly moving around the calendar. The equinox would move by one day every four years, and so on. This was a problem for pre-technical societies, which depended heavily on the calendar for planting crops and avoiding starving, but it's irrelevant now. We're stuck with it though, and it does make it a bit easier to remember where the seasons are, although they won't change by much over a person's lifetime.

      Leap seconds, in contrast, are completely pointless. They exist because the SI day is slightly shorter than the solar day, by a tiny fraction of a second. This means that, after a few years, the sun will not quite be at its apex precisely at midday. How much is the variation? We've had 24 leap seconds since they were introduced in 1972, but a lot of these were to slowly correct the already-wrong time. In the last decade, we've had two. At that rate, it will take 300 years for the sun to be a minute off. It will take 18,000 years for it to be an hour off. These numbers are slightly wrong. The solar day becomes a bit under 2ms longer every hundred years, so we'd need leap seconds more often later.

      In the short term, they introduce a lot of disruption (see air traffic control problems for a good reason why we shouldn't have them - safety-critical systems that depend on time synchronisation and don't reliably work with leap seconds. Great). They don't provide any noticeable benefit. Maybe after a thousand or so years, UTC time will be offset enough from the solar day that it will be irritating, but if people still care about the relationship between noon and midday then they can add a leap-minute or two to compensate. Or they can just let it drift. I'd like to think that a significant proportion of the human population will not be on the Earth by that point, and so purely local inconsistencies with the time won't matter to them.

      --
      I am TheRaven on Soylent News
    3. Re:Let's see if I've got this right by red_dragon · · Score: 2

      The solar day becomes a bit under 2ms longer every hundred years, so we'd need leap seconds more often later.

      Or, given that the Earth started spinning a bit faster after the Chile earthquake, we'll likely not need any leap seconds whatsoever.

      --
      In Soviet Russia, Jesus asks: "What Would You Do?"
    4. Re:Let's see if I've got this right by WiglyWorm · · Score: 3, Insightful

      Pretty typical "let future generations deal with it" thinking. Why don't we just have Oracle fix their code?

    5. Re:Let's see if I've got this right by dominious · · Score: 1

      no, if you RTFS, since their introduction in 1971, leap seconds have proved problematic for at least a few software programs. The leap second added on to the end of 2008, for instance, caused Oracle cluster software to reboot unexpectedly in some cases.

    6. Re:Let's see if I've got this right by Anonymous Coward · · Score: 1, Informative

      We have to make every clock in the world inaccurate because Oracle's software is crap...?

      That's nothing. Read this (The OOXML leap year bug and the Chernobyl design pattern) and weep...

    7. Re:Let's see if I've got this right by Arrepiadd · · Score: 1

      Because as he just put it, the problem isn't *only* with Oracle. Flight industry and other safety-critical stuff don't (necessarily) depend on Oracle...

    8. Re:Let's see if I've got this right by stdarg · · Score: 5, Funny

      Eh, let a future generation fix Oracle's code.

    9. Re:Let's see if I've got this right by delinear · · Score: 1

      I couldn't agree more - personally I'd do away with leaps years and daylight savings while I was at it. Running our entire calendar system based on systems that were introduced to solve problems that mostly no longer exist, and creating all kinds of computing headaches into the bargain seems a little crazy. I can appreciate the aims of the people behind these types of initiative, but when the differences, as you've pointed out, are incredibly minimal, what makes them think we'll even be using their calendar by the time it would make a difference (let's face it, calendars have a habit of being replaced and even the current one has been massively overhauled since we began using it). Having it dictate mission critical systems when the practical effect on life on Earth is near zero is just a bad idea.

    10. Re:Let's see if I've got this right by Anonymous Coward · · Score: 0

      >These numbers are slightly wrong. The solar day becomes a bit under 2ms longer every hundred years, so we'd need leap seconds more often later.

      Unless an earth quake causes the Earth's diameter to shrink, resulting in an increase in rotational velocity.

    11. Re:Let's see if I've got this right by TheRaven64 · · Score: 1

      So you think it's worth the millions that have been wasted, and still need to be wasted, fixing safety critical systems now to address a problem that, in theory, may be noticeable in 1,000 years? Do you really think that people living in the year 3,000 will care that their time system doesn't quite match Earth's solar year? How many of them will even be living on Earth by then?

      A thousand years worth of drift would cause no practical problems for us today. In a thousand years, it is even less likely to cause problems. Sometimes 'let future generations deal with it' is the correct answer.

      --
      I am TheRaven on Soylent News
    12. Re:Let's see if I've got this right by somersault · · Score: 2, Funny

      So now Oracle have bought God too? Damn.

      --
      which is totally what she said
    13. Re:Let's see if I've got this right by Svartalf · · Score: 1

      Indeed. However, it also highlights a problem with Oracle's cluster implementation. I'm thinking it's a fencing problem- which doesn't account for things like leap seconds. They rely on having the machines in perfect lock-step and if they're not, the cluster hangs itself to protect data integrity.

      --
      I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
    14. Re:Let's see if I've got this right by dcw3 · · Score: 1

      Daylight Savings has had numerous studies showing reduced electricity consumption.

      --
      Just another day in Paradise
    15. Re:Let's see if I've got this right by JasterBobaMereel · · Score: 2, Interesting

      ...and The Noonday sun is probably not overhead anyway

      I live in the UK, I am 2 degrees off the meridian, It is summertime so we are on BST - So at noon the sun is 1:08:00 away from being overhead .. a few seconds is largely irrelevant at this point ...

      --
      Puteulanus fenestra mortis
    16. Re:Let's see if I've got this right by Burdell · · Score: 4, Interesting

      It wasn't just Oracle. The Linux kernel would deadlock if the system was under load when the leap second happened. I only had one server hang, but a customer with a rack of busy servers had about half of them freeze. Lots of "fun" on New Year's Eve. Even more annoying was that the problem wasn't in handling the leap second, it was in printing a message that the leap second had been handled.

    17. Re:Let's see if I've got this right by Kjella · · Score: 5, Insightful

      Daylight Savings has had numerous studies showing reduced electricity consumption.

      Yes, the question is more if there's more or less hassle to have summer and winter opening hours than to change "time" itself.

      --
      Live today, because you never know what tomorrow brings
    18. Re:Let's see if I've got this right by AltairDusk · · Score: 5, Insightful

      Flight industry and safety equipment also goes through very stringent testing. If the capability to handle leap seconds isn't included in their battery of tests then they have a hole in their testing procedure.

    19. Re:Let's see if I've got this right by contrapunctus · · Score: 2, Informative

      As long as the moon exists, earth will still slow down in the long run...

    20. Re:Let's see if I've got this right by paeanblack · · Score: 2, Insightful

      see air traffic control problems for a good reason why we shouldn't have them - safety-critical systems that depend on time synchronisation and don't reliably work with leap seconds. Great

      The same argument can be made for leap-days.

      December 31 23:59:60 is no less valid than February 29. Throwing out accurate timekeeping because some software designers didn't do their homework is not a good solution. Throw out the bad designers instead...or at least keep them away from "safety-critical systems"

    21. Re:Let's see if I've got this right by JonahsDad · · Score: 1, Informative

      Daylight Savings has had numerous studies showing reduced electricity consumption.

      Newer Daylight Savings studies often find either no appreciable reduction or even an increase.

    22. Re:Let's see if I've got this right by dcw3 · · Score: 1

      Daylight Savings has had numerous studies showing reduced electricity consumption.

      Yes, the question is more if there's more or less hassle to have summer and winter opening hours than to change "time" itself.

      Recommend you go look at the first .gov site you come across in Google, and read the amount of energy consumption they've shown saved by DST. Other than getting off our asses twice a year to change all the clocks & watches we own, what hassle is there?

      --
      Just another day in Paradise
    23. Re:Let's see if I've got this right by tajribah · · Score: 1

      Can you cite any recent one?

    24. Re:Let's see if I've got this right by dcw3 · · Score: 1

      Here, I'll save you the trouble...

      From http://www.energy.ca.gov/daylightsaving.html

      Studies done in the 1970s by the U.S. Department of Transportation show that we trim the entire country's electricity usage by about one percent EACH DAY with Daylight Saving Time.

      --
      Just another day in Paradise
    25. Re:Let's see if I've got this right by Anonymous Coward · · Score: 2, Interesting

      It sounds like the problem is due to the fact that the leap second is implemented as a step function and not a slew.

      Couldn't the problem be fixed by the affected systems slewing over a long period, say one whose individual updates are much smaller than the maximum tolerance for clock synchronization for the system?

      Seems to me it would make much more sense for these systems to count:

      58
      59
      00 + .01
      01 + .02 ..
      xx + .98
      yy + .99
      zz

      instead of

      58
      59
      60
      00
      01
      02

    26. Re:Let's see if I've got this right by Anonymous Coward · · Score: 0

      When you are retrieving satellite observations or calculating orbital trajectories, incorrect seconds = km off-course

    27. Re:Let's see if I've got this right by mangu · · Score: 3, Insightful

      They exist because the SI day is slightly shorter than the solar day, by a tiny fraction of a second.

      Wrong. They exist because the solar day is getting longer every time. The tides caused by the moon are slowing down the earth's rotation rate.

      safety-critical systems that depend on time synchronisation and don't reliably work with leap seconds

      They should. If a programmer is so incompetent he can't get leap seconds right, I shudder to think what else he did wrong.

    28. Re:Let's see if I've got this right by TheRaven64 · · Score: 4, Insightful

      No it can't, for three reasons. Firstly, leap days are deterministic. They happen based on a set of simple rules. If the year is divisible by 4, you get a leap year, unless the year is divisible by 100 but not by 400. Leap seconds, in contrast depend on a variable that changes daily, so are not predictable. They are fudged in with a few months notice, requiring every computer that needs to deal with them to be updated regularly.

      Secondly, leap years don't violate basic sanity checking rules. You can assert that every month is 28-31 days, and that's not broken by leap years. You can assert that every minute contains 60 seconds. In the last decade, that has been true for 2,106,718 minutes, and false for 2. In every year before 1970, it was true.

      Finally, leap years solve a real problem. The point of a solar calendar is that the seasons are in the same place every years. Having the seasons move made it difficult for people to plan when to plant crops. It's less important now, but having the seasons move around would be noticeable for everyone and irritating for a lot of people. In contrast, the only 'problem' that leap seconds solve is that the sun is not at its highest above the meridian at precisely 12:00. As the poster above you pointed out, the skew from not having leap seconds for a thousand years makes less of a difference to the position of the sun than simply not living quite on the meridian.

      Leap seconds are a (very) complex solution looking for a problem.

      --
      I am TheRaven on Soylent News
    29. Re:Let's see if I've got this right by amorsen · · Score: 1, Troll

      You can't get leap seconds right, in general. They shift future events unpredictably, and even getting updates on to all computers within the couple of months warning of a leap second is a challenge.

      --
      Finally! A year of moderation! Ready for 2019?
    30. Re:Let's see if I've got this right by cizoozic · · Score: 5, Funny

      Leap seconds, in contrast, are completely pointless. They exist because the SI day is slightly shorter than the solar day, by a tiny fraction of a second. This means that, after a few years, the sun will not quite be at its apex precisely at midday. How much is the variation? We've had 24 leap seconds since they were introduced in 1972, but a lot of these were to slowly correct the already-wrong time. In the last decade, we've had two. At that rate, it will take 300 years for the sun to be a minute off. It will take 18,000 years for it to be an hour off. These numbers are slightly wrong. The solar day becomes a bit under 2ms longer every hundred years, so we'd need leap seconds more often later.

      Well in that case it's probably easier for Oracle to just buy the Sun.

    31. Re:Let's see if I've got this right by apoc.famine · · Score: 2, Interesting

      I've argued for some time that we need to ditch timezones as well. Lets all use GMT. Then when I say my store is open from 11-19, it's open at those hours for everyone around the world. There's no trying to figure out how many hours behind or ahead I am. Yes, lots of people no longer have the sun highest in the sky at noon. That's a casualty of dropping timezones. Yes, some people will get up with the sun at 6, some at 7, some at 10, some at 16, some at 23. But when a TV show is on at 20, it's on at 20. Not 10pm Eastern time, 7pm Pacific.

      We don't rely on the sun anymore. There's no good reason to go through all this trouble trying to keep it in the sky between 7am and 7pm, with a high point at 12. Those are just arbitrary numbers. Lets fix time so it's the same world-wide. Then we can get up when it's light, go to bed when it's dark, and stop screwing around with the numbers. Really, there are a lot of better things we can do with our lives.

      --
      Velociraptor = Distiraptor / Timeraptor
    32. Re:Let's see if I've got this right by dcw3 · · Score: 0, Offtopic

      citation needed.

      --
      Just another day in Paradise
    33. Re:Let's see if I've got this right by Anonymous Coward · · Score: 0

      They shift future events unpredictably

      Isn't unpredictability in the core definition of "future events"?

    34. Re:Let's see if I've got this right by DrBoumBoum · · Score: 2, Informative

      Daylight Savings Time has had numerous studies showing increased energy consumption, mostly due to increase in A/C use.

    35. Re:Let's see if I've got this right by JonahsDad · · Score: 3, Informative

      The first two things that came to mind were the Indiana DST changeover and the Australia study. Then I found this nice Wall Street Journal article that mentions both: http://online.wsj.com/article/NA_WSJ_PUB:SB120406767043794825.html

    36. Re:Let's see if I've got this right by gumbi+west · · Score: 1

      TV shows now on at "8, 7 central" would be on at "24, 1 Mountain, 2 Pacific, 4 Alaska and Hawaii" think of all the wasted time listening to that!

      But that's the only flaw I see.

    37. Re:Let's see if I've got this right by rainmaestro · · Score: 3, Informative

      On the other hand, modern studies such as:

      http://energy.ca.gov/2007publications/CEC-200-2007-004/CEC-200-2007-004.PDF

      and

      http://online.wsj.com/public/article/SB120406767043794825.html
      (don't have a link to the article they published, sorry)

      These imply that the savings are negligible or, in the case of Indiana, *increased* electric usage. There is no clear answer, since the results depend heavily on the breakdown of electric usage (A/C, eletronics, etc), which varies depending on your region.

    38. Re:Let's see if I've got this right by fishbowl · · Score: 1

      Ok then, they cause you to fail to meet scheduled and/or synchronized commitments.

      --
      -fb Everything not expressly forbidden is now mandatory.
    39. Re:Let's see if I've got this right by maxume · · Score: 1

      Due to time zones and dst, solar noon here happens at about 1:40 in the afternoon.

      The U.S. Eastern time zone is rather wide though.

      --
      Nerd rage is the funniest rage.
    40. Re:Let's see if I've got this right by TheLink · · Score: 1

      Maybe in the future that won't be a problem if most people watch TV on demand or use stuff like PVRs.

      --
    41. Re:Let's see if I've got this right by Scott+Wood · · Score: 2, Insightful

      If we're still going to "get up when it's light, go to bed when it's dark", it doesn't exactly sound like "we don't rely on the sun anymore".

      The knowledge that it's 11:00 doesn't tell me anything about whether it's a reasonable time to call someone in another part of the world, for example. Instead of checking a time zone offset I'd have to consult local sunrise/sunset times?

      Then there's daylight saving time -- it's easier to adjust the clocks than to adjust every schedule. I guess you'd ditch that too?

      Would midnight and noon still be 0:00 and 12:00, or could you have mid"night" in the middle of the day? :-P

    42. Re:Let's see if I've got this right by Anonymous Coward · · Score: 0

      Well, citation needed on your original claim as well.

    43. Re:Let's see if I've got this right by Anonymous Coward · · Score: 0

      citations needed, which shouldn't be difficult for you since there are so many of them, especially recent ones

    44. Re:Let's see if I've got this right by Arrepiadd · · Score: 1

      Oracle should also have testing procedures to check for the handling of leap seconds and it didn't. I'd rather be on a situation where something is not in the need to be tested (not having leap seconds) than hoping they tested for it.

    45. Re:Let's see if I've got this right by Attila+Dimedici · · Score: 0

      If Daylight Savings is such a wonderful idea (which as some other posters point out is questionable based on more recent studies), why don't we make it the standard time (especially since now more of the year is under Daylight Savings Time than Standard Time).

      --
      The truth is that all men having power ought to be mistrusted. James Madison
    46. Re:Let's see if I've got this right by Rockoon · · Score: 4, Informative

      ..or its actually difficult to 'handle' leap seconds. I can tell that you've never worked seriously with time values as a programmer.

      If you can't answer "When will each of the next 10 leap seconds be?" and "When were the last 10 leap seconds?" then you are pretty much fucked from a programming standpoint of 'handling' it in any sane manner using common time encodings, which use a count of intervals (usually seconds, or milliseconds) since some specific date and time.

      Leap seconds make it impossible to incorporate them into intervals because leap seconds are not computationally predictable.

      They are simply arbitrary announcements from the time keepers "we are adjusting the clocks by 1 second on such and such a date. We dont know when we will adjust them again.. we'll keep you posted."

      Leap seconds are not like leap years, which are easily handled because they are introduced systematically based on only the interval value.

      --
      "His name was James Damore."
    47. Re:Let's see if I've got this right by SeNtM · · Score: 2, Funny

      News Flash: Oracle Buys Moon!

      Analysts predict that Oracle's poor management will cause the Moon's gravity to disband, causing it to fracture and the smaller particles to fly into space. This brilliant move will undoubtly solve Oracle's inability to handle its leap-second delema.

      --
      "There ought to be limits to freedom." -George W. Bush
    48. Re:Let's see if I've got this right by Anonymous Coward · · Score: 0

      Upon further reading, it does not appear to be the step itself that causes the problem, but the appearance of a 60th second in a minute (:59, :60, :00). The solution is still the same. Instead of adding an additional second to a minute, slew the clock by one second over an acceptable amount of time. For example, if you need to ensure accuracy of a millisecond, slew .5 ms per second for 22+ days.

    49. Re:Let's see if I've got this right by Rockoon · · Score: 2, Informative

      It sounds like the problem is due to the fact that the leap second is implemented as a step function and not a slew.

      It is because the step function is non-systematic. Leap years are implemented as step functions just fine. You simply cannot write an algorithm to predict when a leap second will be introduced based only on the time, which is the problem.

      Leap seconds are ad hoc seat-of-the-pants alterations to the time. They violate the monotonically steadily increasing property of time encoding, so simply cannot be tolerated in any system that benefits from having monotonically steadily increasing time values.

      --
      "His name was James Damore."
    50. Re:Let's see if I've got this right by apoc.famine · · Score: 1

      If we all use GMT, and it's a live broadcast, it's on at 11. Period. No matter if it's night or day, or if you're in Mountain, Alaska, or Hawaii. And in this day and age, with a move to mostly digital broadcast, I don't see the need for covering all markets in one broadcast lasting much longer. When we had to repeat an analog signal, it was a bit harder to customize it for every market.

      --
      Velociraptor = Distiraptor / Timeraptor
    51. Re:Let's see if I've got this right by apoc.famine · · Score: 1

      The knowledge that it's 11:00 gives you all the info you need, provided they provide you with their operating hours in GMT as well. If someone tells you they are open from 1 till 9, and it's 11, you can't call them and expect an answer. If we're all using GMT, UT, or some other such standardized time, it doesn't matter where in the world the two of you are located.

      Twenty years ago, we needed time zones. We needed to be able to figure out when we could get in touch with people on the other side of the world, based on whether it was light there or not. With how networked our society is now, that's no longer necessary. I can look up the number and hours of a hotel in Germany from my living room, at any time of day or night. If we're all on GMT, I can instantly know if I can call them.

      --
      Velociraptor = Distiraptor / Timeraptor
    52. Re:Let's see if I've got this right by Athanasius · · Score: 2, Interesting

      Maybe after a thousand or so years, UTC time will be offset enough from the solar day that it will be irritating, but if people still care about the relationship between noon and midday then they can add a leap-minute or two to compensate.

      The usual objection I see to this is that you've then introduce a very special event that no-one will have programmed for at all. It's far better to have more regular such events so programmers know they have to handle them...

      ... not that it's worked so far....

    53. Re:Let's see if I've got this right by AltairDusk · · Score: 1

      I'll admit I did not RTFA as closely as I should have. I assumed leap seconds were calculated in much the same manner as leap years, arbitrarily declaring them is considerably harder to deal with.

      At some point scientists will hopefully have enough data and computing power to model the changes and come up with an algorithm allowing the calculation of leap seconds much like there exists such an algorithm for leap years. Under the current system manual input will be required to handle leap seconds in software (yes I'm aware that leads to whole new bundles of possible problems, certainly not an ideal solution).

    54. Re:Let's see if I've got this right by Anonymous Coward · · Score: 0

      Are you suggesting the moon should....cease.....to exist?

    55. Re:Let's see if I've got this right by Gat1024 · · Score: 1

      unless your problem domain needs to store the occurrence of leap seconds, when they appear are irrelevant. Regardless of when they appear, time monotonically increases. There is simply a skip. By its nature, the skip is meant to be invisible. Any time system based on UTC shouldn't try to factor in leap seconds while doing arithmetic because every UTC system will see that leap second as never existing in the first place. Systems that involve motion like satellites or systems that involve crypto should use an alternate time system and map between the two.

    56. Re:Let's see if I've got this right by commodore64_love · · Score: 1

      Yeah I'm sure being off by 1-2 second will cause no problems.

      This just in: (AP) NASA's latest mars probe smashed into the planet. "Our computers did not include leap seconds, so the probe fired the retro rockets one second too early. It thought it was 9:05:30 when it was actually only 9:05:29. It fired too early, and entered at a sharp angle instead of a gentle, soft landing." Observers are saying this event is reminiscent of a few years ago when NASA engineers calculated using feet instead of meters, causing the loss of another mars probe.

      --
      "I disapprove of what you say, but I will defend to the death your right to say it." - historian Evelyn Beatrice Hall
    57. Re:Let's see if I've got this right by scheme · · Score: 1

      Leap seconds are ad hoc seat-of-the-pants alterations to the time. They violate the monotonically steadily increasing property of time encoding, so simply cannot be tolerated in any system that benefits from having monotonically steadily increasing time values.

      That word -- monotonically -- you're using it but I don't think you understand what it means. Adding leap seconds doesn't violate a monotonically increasing property of time. As long as the count of the seconds doesn't go down, the time function is still monotonically increasing.

      Hell, if the ITU declared that we'd stay at 12:59 for an hour at 23:00 12-31-2010 , time would still be monotonically increasing. As long as the ITU doesn't have the time skip back, time would still be a monotonically increasing function.

      --
      "When you sit with a nice girl for two hours, it seems like two minutes. When you sit on a hot stove for two minutes, it
    58. Re:Let's see if I've got this right by Rockoon · · Score: 1

      Regardless of when they appear, time monotonically increases.

      This presumes only one kind of leap second.. the kind that skips a second, rather than introduced an extra second.

      Leap seconds are not defined as increment-only, so 'handling' leap seconds based on the 'monotonic' assumption doesnt hold water.

      --
      "His name was James Damore."
    59. Re:Let's see if I've got this right by Ironchew · · Score: 1

      Maybe, just maybe, NASA uses GMT instead of UTC so that it doesn't have to calculate leap seconds at all? That's what I would do.

    60. Re:Let's see if I've got this right by Rockoon · · Score: 1

      That word -- monotonically -- you're using it but I don't think you understand what it means. Adding leap seconds doesn't violate a monotonically increasing property of time. As long as the count of the seconds doesn't go down, the time function is still monotonically increasing.

      Leap seconds are not defined as increment only. In fact, all the leap seconds so far (coincidental to the delay of their introduction into UTC) have been decrementing. They have all been extra seconds.

      In short, you are wrong. They have violated the monotonic property of time, every time so far.

      "After 23:59:59 UTC, a positive leap second at 23:59:60 would be counted, before the clock indicates 00:00:00 of the next day. Negative leap seconds are also possible, should the Earth's rotation become slightly faster -- in which case, 23:59:58 would be followed directly by 00:00:00 -- but they have not yet been used."

      --
      "His name was James Damore."
    61. Re:Let's see if I've got this right by Anonymous Coward · · Score: 0

      I don't see how this is so hard. Count the number of seconds since Epoch. Leap seconds will only show up when you need to convert this number into a human readable or otherwise compatible time. This only happens at the boundaries of your application. If your OS only provides you with number of seconds since Epoch-(number of leap seconds since Epoch), then keep a counter around with (number of leap seconds since Epoch), and fix the OS's time value at every call. What exactly is so hard about doing this right?

    62. Re:Let's see if I've got this right by Firehed · · Score: 1

      While I generally agree, it's not a technical issue - it's a matter of optimizing the air time to when the market is available to consume the programming. But between DVRs and Hulu (etc), that's also quickly becoming irrelevant.

      --
      How are sites slashdotted when nobody reads TFAs?
    63. Re:Let's see if I've got this right by murdocj · · Score: 1

      Actually seems way more likely to be the other way around. The retro rockets will be timed to fire at exactly the right time, the probe will download the latest update that includes a leap second, the clock will be adjusted, and the rockets will fire too early or too late.

    64. Re:Let's see if I've got this right by gumbi+west · · Score: 1

      If we all use GMT, and it's a live broadcast, it's on at 11. Period.

      Well, that's a huge problem. What if I want to watch baseball and someone else in the house wants to watch soccer. Since they are both on at 11, we have to get a second TV. Plus, how are the players going to feel about having to be up in the middle of the night when they aren't in Europe or Africa? /sarcasm

      Most TV is on at the same local time because people want to be able to watch it at about the same (local) time of day. Local time makes sense.

    65. Re:Let's see if I've got this right by Anonymous Coward · · Score: 0

      i've actually seen businesses that have summer and winter opening hours, presumably to counter the effects of daylight saving time

    66. Re:Let's see if I've got this right by Anonymous Coward · · Score: 0

      Troll mod? Really? Time to go metamod...

    67. Re:Let's see if I've got this right by Tanktalus · · Score: 1

      Daylight savings time is just as deterministic as leap seconds, and yet pretty much all modern software handles DST just fine.

      If you're on a system where time goes through glibc, then your timezone-data can get refreshed (as it seems to many times every year - we're currently on 2010l - that's the twelfth update thus far this year, and I have record here of installing 2009u last year, too, which may not have been the last one of the year). Why not just include leap seconds in there?

      As for other systems, I'm sure that the OS can handle it even on Windows - and Patch Tuesday should cover it.

    68. Re:Let's see if I've got this right by russotto · · Score: 1

      This presumes only one kind of leap second.. the kind that skips a second, rather than introduced an extra second.

      The only kind of leap second which has occurred is an extra second. It's still monotonic: 23:59:59, 23:59:60, 00:00:00 (+1 day)

      IMO, anyone designing systems which depend on to-the-second time synchronization across leap seconds should probably use TAI or GPS time, and convert to UTC (if necessary) for display. The only thing you can't do right is future time intervals.

    69. Re:Let's see if I've got this right by ChrisMaple · · Score: 1

      The moon is the largest drag on the earth, but not the only one. Any object off earth that doesn't orbit the earth faster than once a day will slow the earth's rotation (except maybe objects on the earth's axis of rotation.) Most of this is due to tidal drag. In addition, stuff that impacts with the earth tends, on average, to slow down the earth.

      --
      Contribute to civilization: ari.aynrand.org/donate
    70. Re:Let's see if I've got this right by Albatrosses · · Score: 1

      Well in that case it's probably easier for Oracle to just buy Sun.

      Didn't they do that already?

    71. Re:Let's see if I've got this right by Rockoon · · Score: 1

      The only kind of leap second which has occurred is an extra second. It's still monotonic: 23:59:59, 23:59:60, 00:00:00 (+1 day)

      You are encoding time as strings here, which is different than having a system of time. The purpose of a system of time is to be able to calculate the difference between two given encodings. Your time encoding does not have the ability to calculate such differences, so it is not a system of time.

      Basically you have to choose between interval calculations that are (A) right when a specific number of leap seconds actually fall in the interval and wrong otherwise, or (B) right when no leap seconds actually fall in the interval and wrong otherwise.

      What Oracle/etc are doing is using (B) because they want their time calculations to actually be right most of the time, rather than wrong most of the time.

      I hope that this sheds some light on the subject for you. Just keep in mind that encoding time is not the same as a system of time, that even leap years are problematic if you only demand encoding (rather than having a system of time that encompasses 4 year, 100 year, and 400 year rules that allow you to subtract dates and get an actual number of days elapsed)

      --
      "His name was James Damore."
    72. Re:Let's see if I've got this right by jecblackpepper · · Score: 2, Interesting

      The length of the second in GMT is not fixed. It's really hard to use for anything which requires precise accuracy. A second in GMT is defined based on the length of the day in Greenwich, so if the Earth's spin speed increases (see the Chile earthquake) then a GMT second decreases.

      NASA and others would be much better off using TAI than UTC

    73. Re:Let's see if I've got this right by lewiscr · · Score: 1

      So broadcast your local show in a time slot that makes sense for the local market. I'll happily watch the morning news at 16:00. I don't care when your morning news is on.

    74. Re:Let's see if I've got this right by lewiscr · · Score: 1

      The knowledge that it's 11:00pm doesn't tell me anything about whether it's a reasonable time to call someone in another part of the world. I still have to consult a timezone map to figure out their local sunrise/sunset times.

      And that *still* doesn't help me. My parents are 2 timezones east of me, and go to bed around 9pm local time. I go to bed around 11pm local time. So I have to convert my timezone to their timezone (or vice versa) to figure out if they're awake now.

      If instead, my parents are awake from 10:00 to 02:00, and at work from 12:00 to 20:00, I know when I can call them. Is that really any different that needing to know that they're awake from 5am CDT to 9pm CDT, and at work from 7am CDT to 3pm CDT?

    75. Re:Let's see if I've got this right by Anonymous Coward · · Score: 0

      Leap seconds are a (very) complex solution looking for a problem.

      Leap seconds allows astronomical software to function properly. Without it, their aiming would drift.

    76. Re:Let's see if I've got this right by SashaMan · · Score: 1

      Ugh, why is it that developers think they're so superior when they utter such nonsense as "If a programmer is so incompetent he can't get leap seconds right, I shudder to think what else he did wrong." It makes me more likely to think the person who writes this has never written actual code in a real, production system when you have things like actual deadlines to worry about.

      It's not that a good programmer couldn't get leap seconds "right", it's that it's very easy to imagine a case where the non-congruity of timing calls introduced by leap seconds could be overlooked. In a complicated program where there are literally millions of things that can go wrong, not thinking foremost about leap seconds should be expected.

    77. Re:Let's see if I've got this right by Scott+Wood · · Score: 1

      You're assuming that whoever I'm calling is a business with formal hours, rather than a coworker, friend, etc.

      I work with remote teams in many parts of the world, and when there's a conference call it's usually outside "normal business hours" for someone, and sometimes everyone. It's nice to have a reasonably simple way to figure out just how ridiculous a given time request would be for someone else.

    78. Re:Let's see if I've got this right by apoc.famine · · Score: 1

      True, but is there a difference between knowing that they are located in the GMT+2 timezone and that their business day starts at 10?

      If it's 20 now, and you know their business day starts at 10, you know it's 2 hours after a normal working day for them. Honestly, that seems easier than doing the mental math to figure out if their GMT +2 and your GMT -5 means that at 8pm your time it's ok to call them.

      Sure, it's not quite something that you can look up on a table yet, like timezones are. I can't imagine it'd be overly hard to make the exact same sort of table, but with sunrise or "culturally normal work start times" on it. Once we ditch timezones, all the people who make timezone charts will need something else to do....

      --
      Velociraptor = Distiraptor / Timeraptor
    79. Re:Let's see if I've got this right by mangu · · Score: 1

      It makes me more likely to think the person who writes this has never written actual code in a real, production system when you have things like actual deadlines to worry about.

      I wrote the GP you are talking about and let me assure you I have over a million lines of code under my belt, 99% of them for real time process control systems and the rest for corporate applications.

      In a complicated program where there are literally millions of things that can go wrong, not thinking foremost about leap seconds should be expected.

      There's a solution for that, it's called "brainstorming". You gather all the experts in a series of meetings where *everything* is discussed.

      I once worked on a software where timing was important, we investigated the matter and came to the conclusion that the following time standards should be studied in more detail:

      Universal Time (UT)
      Universal Time (UT1)
      Ephemeris Time(ET)
      International Atomic Time (TAI)
      Coordinated Universal Time (UTC)
      Terrestrial Dynamic Time (TDT)
      Barycentric Dynamical Time (TDB)
      Terrestrial Time (TT)
      Geocentric Coordinate Time (TGC)
      Barycentric Coordinate Time (TCB)
      GPS Time

      When you develop systems where human life or large investments are at stake you have no other alternative, you *must* go into this level of detail.

      If you think you can overlook something because the problem is "complicated" you better stay away from high responsibility jobs. I expect more from a company like Oracle, whose products are so widely used.

    80. Re:Let's see if I've got this right by Pseudonym · · Score: 1

      Leap seconds, in contrast, are completely pointless. They exist because the SI day is slightly shorter than the solar day, by a tiny fraction of a second.

      Wrong. They exist because the mean solar day is not constant and is affected by unpredictable events, such as seismic events.

      In the short term, they introduce a lot of disruption (see air traffic control problems for a good reason why we shouldn't have them - safety-critical systems that depend on time synchronisation and don't reliably work with leap seconds. Great).

      If your time is that critical, your system really needs to designed properly. For example, you could make your safety-critical timebase work on absolute seconds only, and correct when reporting the time to the user if that's a desired feature. GPS works that way, and there haven't been any problems with it that I've heard of, because it's part of the GPS specification that the internal working timebase counts all seconds including leap ones.

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    81. Re:Let's see if I've got this right by Gat1024 · · Score: 1

      Like I said, within the context of UTC, leap seconds should not be accounted for. UTC is an arbitrary time system and can have both static rules, like leap years, and dynamic rules, like leap seconds. Every conforming UTC system should operate like the leap second never occurred. All interval calculations will remain correct under those conditions.

      Such a time system should not be used for "real" time sensitive systems like celestial mechanics, crypto certificates, or medical devices. There are better time systems for that. Accordingly, mapping between UTC and some other system will not necessarily yield a one-to-one mapping.

    82. Re:Let's see if I've got this right by denbesten · · Score: 1

      The reason for leap seconds occurring at unpredictable times is that the earth slows down and speeds up over time, just like an ice skater does as they extend and retract their arms. Any activity that moves mass closer or further from the polar axis (upon which the earth rotates) will impact its rotational speed.

      Possible causes for this are changing wave heights (due to the moon or passing asteroids), tectonic plate shifts, volcanoes, erosion, vacationing in the mountains, etc.

      Global warming could potentially even be blamed for longer days because melting polar icecaps would cause global sea level rises, increasing the "width" of the earth at the expense of the "height".

      This sort of reminds me of the old adage that "In theory, there is no difference between theory and practice, but in practice, there is".

    83. Re:Let's see if I've got this right by denbesten · · Score: 2, Informative

      If you can't answer "When will each of the next 10 leap seconds be?" and "When were the last 10 leap seconds?" then you are pretty much fucked from a programming standpoint of 'handling' it in any sane manner using common time encodings, which use a count of intervals (usually seconds, or milliseconds) since some specific date and time.

      ftp://time.nist.gov/pub/leap-seconds.list is a publicly available file that lists all announced leap seconds (past and future), designed for use in time conversion functions. And yes, it does need to be periodically refreshed, just like the zoneinfo database.

      Life would be much easier if all manufacturers adjusted for leap seconds in their localtime() and gmtime() functions, rather than in the hardware clocks and their time() functions.

    84. Re:Let's see if I've got this right by davester666 · · Score: 1

      So you're saying we need to destroy the moon?

      --
      Sleep your way to a whiter smile...date a dentist!
    85. Re:Let's see if I've got this right by Anonymous Coward · · Score: 0

      Oracle cluster software reboots unexpectedly in most cases.

    86. Re:Let's see if I've got this right by Anonymous Coward · · Score: 0

      You know that the simple solution to the problem of UTC changing is to just flipping switch to GPS time which are independent from each other. Also that leap seconds are actually added because the Earth's rotation changes ever so slightly. I believe I read that one of the recent tsunami's induced a microsecond order slow down.

    87. Re:Let's see if I've got this right by BZ · · Score: 1

      Daylight savings time is just a matter of user presentation; it doesn't change what time the computer thinks it is now, because this last is measured as the amount of time elapsed since an arbitrary starting point around 1970. In particular, across DST boundaries nothing interesting happens to the computer's clock; it just keeps incrementing by 1 every ms.

      Leap seconds change what time the computer thinks it is. In particular, they change the number of elapsed ms since that arbitrary starting point, by fiat.

      If leap seconds were just a matter of user presentation, like DST, there would be no problem, because as far as computer timekeeping would be concerned they wouldn't really exist; they would just be an artifact of the way we humans like to see our times printed.

    88. Re:Let's see if I've got this right by AthanasiusKircher · · Score: 1
      The following is somewhat facetious....

      Think of the economy! Daylight Saving Time, which effectively adds a "leap hour" to the day during the summer, has been advocated by various retailers for many years on the basis that they get millions of dollars extra revenue from it. It's tough to get actual figures, but the total number across all commercial industries might be a few billion dollars or more. Pushing things back by a second, therefore, could cost millions of dollars!

      Also, ya know, this was exactly the same thinking they had with the old Roman calendar cycles. Add in a few extra days every few years, and it will work out. Except it didn't, until things got so far off that when Julius Caesar crossed the Rubicon on January 10, it was mid autumn. He later instituted the Julian calendar and needed to make the year 46 BC 445 days long (the so-called "year of confusion") in order to correct the errors.

      So, the Julian calendar got started two thousand years ago. The astronomers at the time knew the year wasn't exactly 365.25 days, but the error was too small apparently to worry about (and probably wasn't accurately measured).

      Fast forward about 1500 years, the calendar had already gotten significantly out of whack (about 10 days) before anyone bothered to fix it (with the new Gregorian calendar).

      The Gregorian calendar also has its flaws and will need to be adjusted at some point, but the adjustments probably need to be carried out on an ad-hoc basis in a couple thousand years as the earth's rotation slows.

      Anyhow, the leap second problem is much less significant, I agree. But if anything, history shows us that acceptance of known inaccuracy means that those inaccuracies will be ignored until they cause a major problem, and given how many systems depend on very accurate timekeeping, perhaps we should make sure they can be adjusted for leap seconds, instead of just ignoring the problem until something bad happens.

    89. Re:Let's see if I've got this right by AthanasiusKircher · · Score: 1

      There is no clear answer, since the results depend heavily on the breakdown of electric usage (A/C, eletronics, etc), which varies depending on your region.

      Agreed, but energy savings is the only issue. Much greater effects seem to come from increased economic activity from people being able to do activities outdoors later in the evening during the summer. Yes, it hurts a few industries (farmers, drive-in movies, etc.), but overall the economic benefit seems to be positive -- and in any case probably outweighs the minor energy savings/cost.

    90. Re:Let's see if I've got this right by Anonymous Coward · · Score: 0

      Oracle's patented what? You didn't finish your sentence...

    91. Re:Let's see if I've got this right by Anonymous Coward · · Score: 1, Informative

      Tell that to the Air Force. They had a six F-22 Raptors crash multiple computer systems as they passed over the International Date Line. They were unable to reboot the systems in flight. Fortunately it was only minor systems like fuel subsystems, navigation and some communications systems that crashed. They were flying with some tankers that were able to "guide dog" them to Hawaii.

    92. Re:Let's see if I've got this right by metamatic · · Score: 1

      ...then you are pretty much fucked from a programming standpoint of 'handling' it in any sane manner using common time encodings, which use a count of intervals (usually seconds, or milliseconds) since some specific date and time.

      "Doctor, it hurts when I do this..."

      --
      GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
    93. Re:Let's see if I've got this right by RockDoctor · · Score: 1

      Oracle's inability to handle its leap-second delema.

      If not their spelling checker installation. (Not that "two horns" - "dilemma" is appropriate in any case, as Oracle have more than two options.)

      --
      Birds are not dinosaur descendants;birds are dinosaurs, for all useful meanings of "birds", "are" and "dinosaurs"
    94. Re:Let's see if I've got this right by RockDoctor · · Score: 1

      Any object off earth that doesn't orbit the earth faster than once a day will slow the earth's rotation

      True, as far as it goes.

      (except maybe objects on the earth's axis of rotation.)

      That covers one class of non-compliant cases.

      Most of this is due to tidal drag.

      I think you're very close to tautology. What, if it's not the interaction of two rotating mutually-orbiting bodies through their associated gravitational fields, is a "tidal" interaction?
      Some objects that orbit the Earth (well, your primary ; why be parochial?) in less than the Earth's rotational period can slow the Earth's rotation by tidal interaction. Can you add the factors that I've left out of my description?

      In addition, stuff that impacts with the earth tends, on average, to slow down the earth.

      Hmmm, I'm seriously unconvinced. Convince me.

      --
      Birds are not dinosaur descendants;birds are dinosaurs, for all useful meanings of "birds", "are" and "dinosaurs"
  35. Oh that's just GREAT.... by DavidD_CA · · Score: 1

    ... now I'm going to have to rearrange my entire schedule.

    Bastards.

    --
    -David
  36. Zune by dbIII · · Score: 1

    The proper solution is to make programmers aware of leap seconds.

    A bit tricky. Some haven't got the idea of leap years yet.

  37. The title of this article... by Anonymous Coward · · Score: 0

    The title of this article should be "lazy incompetent programmers WIN AGAIN!" Sheesh.

  38. ...except that days aren't a constant length by Joce640k · · Score: 2, Informative

    Every day is a slightly different length due to tides, etc. Even strong winds can shave off (or add) a microsecond or two.

    The BBC did a documentary on it.

    --
    No sig today...
    1. Re:...except that days aren't a constant length by JustOK · · Score: 1

      Plus, don't some days just seem to drag on? Like, they have to be longer, right? I mean, Mondays, usually. Like Mondays, they sometimes just seem to last forever. And the weekend, just doesn't seem to be getting here any quicker. What's up with that?

      --
      rewriting history since 2109
  39. eco alright by amnezick · · Score: 0

    Of course there's a Prius in the picture in TFA. I mean sure, it's gonna suck power like nothing around it (poor students must have enought light to avoid eye strain, bla bla bla) but look .. a Prius.

    --
    mov ax,4c00h
    int 21h
  40. 'Look' seconds by s-whs · · Score: 1

    They should have introduced 'look' seconds before they introduced 'leap' seconds. Would have saved a lot of trouble.

  41. Simplified Time by Anonymous Coward · · Score: 0

    Never understood why time has to be so complicated.
    If I was king, here's how's my vastly simplified implementation would work
    1. There is UTC time.
    2. That's it.

    No time zones, no daylight savings, nothing. Only UTC.
    So when it's 12:00, it's 12:00 everywhere. So midday for me would change from 12:00 to 22:00, and for someone in New York midday would be 7:00. It's just a number, deal with it. Everyone in my timezone would quickly associate lunchtime with 22:00, and so on, and from that point there would never ever be any time zone/DST issues ever again. Whenever you have to adjust something, you adjust your life, not the clock. If your local area wants a form of DST, they simply tell everyone to rock up to work and hour early and go home an hour early. Clocks are becoming so critical these days, that it is now easier to change our behaviour than the clock.
    Maybe I've oversimplified it, but everyone I've told this about so far likes the idea.

    1. Re:Simplified Time by Qzukk · · Score: 1

      Whenever you have to adjust something, you adjust your life

      Good luck with that.

      --
      If I have been able to see further than others, it is because I bought a pair of binoculars.
  42. Where is the problem? by kbg · · Score: 1

    Where is the problem here? Just because Oracle programmers don't know how to handle time there is no need to abandon the leap second. What is needed are better programmers that have better education and actually know how to program.

  43. Fix the software and not the physics by abbadingo · · Score: 1

    The ITU cannot fix this problem. In charge is the "International Committee for Weights and Measures" http://en.wikipedia.org/wiki/International_Committee_for_Weights_and_Measures which is older than the ITU. The software should reflect the time defined by the committee. The whole discussion is ridiculous, you only need a table with the number of leap seconds defined and a function fixing the 24 exceptions to the unleaped time http://en.wikipedia.org/wiki/Leap_second
    If we would not have fixed it, the deviation would sum up to nearly half a minute. How want you fix that? In an effort similar to the Y2K bug problem. Painful nonsense.
    If a database crashes you should fix the code starting with the underlying operating system and programming languages. By the way the definition of Time in most languages should be corrected, because f.e. http://download.oracle.com/javase/1.4.2/docs/api/java/sql/Time.html#Time(int, int, int) It is wrong that a minute can have only 60 seconds. It could also have 59 (not yet happened) or 61 seconds. If the ITU makes the change, time in GPS announced and real time will deviate. This is nonsense.

    1. Re:Fix the software and not the physics by Anonymous Coward · · Score: 0

      you only need a table with the number of leap seconds defined and a function fixing the 24 exceptions to the unleaped time

      and a way to get future leap seconds into the system, since they're unpredictable and only declared six months in advance.

      But hey, it's not like that will drastically increase the complexity of your software or anything, right?

    2. Re:Fix the software and not the physics by Anonymous Coward · · Score: 0

      I have read this thread and was not going to comment, but this is the 5th (I don't know, counting comments is like predicting leap seconds) time someone has said it's the BAD CODEZ!!!..

      Yes, Oracle should have allowed for the numbers 60 and 61 in the time field, but how many people have written code that forgot to allow for this? I know I have forgotten more than once. (std libraries wont save you from that).

      Also, you do understand that systems that don't have a inward comms channel (IP connection, Serial Radio, etc...) cannot have an up to date table of leap seconds. (Think that through). So cannot guarantee that any UTC date/times (or POSIX time_t values) are actually correct. (Think data recorders, etc...)

      And as pointed out 8 comments above (that's probably changed now do to the addition of leap-comments) the time will stay within 60 seconds for about 800-900 years. I think in 800 years we could have leap-hour day. This would make coding after that really easy, if time before LEAP_HOUR_DAY then time = time - 60seconds fi. Simple.

      PS: how does an OS know in advance that a leap-second is going to happen? It has to be connected to know this. That magic table has to be updated. This also means that you have to add code to system (some of us work quite close to the OS, even under it, or without one :) ) to manage this. Adds complexity for no real reason.

      Why cause problems for no real reason except being pedantic. My life or plans do not run to the seconds compared to the position of the sun. A bet fewer than a couple of hundred or thousand people out of 6 billion people care that time_t is within a second of the relative position of the earth and the sun. I do care (and I guess a lot more people/systems do) that something happens in 60+ seconds from now, predictably.

      Also, minus leap seconds are allowed. Just adds to the fun. With daylight savings, happening for different timezones and at different times (some at 00:00, 01:00 or 02:00) this makes if time == 00:00 do this, not nearly as simple as it should be.

      Anyway, I'll go back to trying to make this ****ing TV show a picture. :)

      PPS: I am replying the wrong posting, due to the fact that leap-messages seemed to have got in the way.

  44. Damn it, that's not the solution, TAI is by Nicolas+MONNET · · Score: 1

    The solution is to keep time with TAI, which is guaranteed to increase by 1s every second, and DISPLAY time in UTC with a TZ on top if you wish. Doing calculations on UTC is bound to result in bugs, people should just forget about it. And also forget about hacking NTP's drift and other mechanisms to accommodate for leap seconds, that's not what they're for. It's just going to add more complexity and reduce precision. It's such an ugly hack I'm shocked that you should seriously advance it.

    TAI is simple. It's the number of seconds since a reference date. No days, leap seconds, whatever -- just counting seconds. Want to display local time or UTC? Add the leap seconds and the TZ, and you're set. Want to do a calculation? You can substract TAI values to get nice, friendly seconds without fear of someone pulling the rug from under you.

    Seriously, it's not complicated.

    1. Re:Damn it, that's not the solution, TAI is by Anonymous Coward · · Score: 0

      TAI is simple until a government redefines your time zones out from under you (remember the Daylight Saving change in the US?) If you stored future times in anything other than localtime, suddenly you have some future events whose TAI was calculated based on the old timezone and some future events whose TAI was calculated based on the new timezone. Your guess as to which is which is as good as mine, if you passed timezone processing to a system library like tzdata which could have been upgraded at any time.

      Java had an interesting solution: store the tzdata with the timestamp, so you know how the timestamp was originally calculated and can deal with things like this. Of course, there's a reason why most java programs require hundreds of megs of ram to hold all that shit.

      The right answer is that future events should always be stored in localtime with timezone name and converted as necessary according to the then-current rules. Past events can be stored in TAI or whatever, since we're assuming that no government would ever retroactively change the definitions of the timezones.

  45. This is ridiculous. Use TAI, problem solved by Nicolas+MONNET · · Score: 2, Interesting

    Accounting for leap seconds is complicated and error prone. It's also completely useless; the solution exists and it's called TAI.

    Example: how do you figure how long an operation has taken? With TAI:
    starttime := tai()
    dosomething()
    duration := tai() - starttime

    That's it. How do you do that with leap seconds sneaking on you? It's impossible to do, at least reliably.

  46. software programs by Hognoxious · · Score: 1

    Does anyone else find the expression "software programs" grating?

    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    1. Re:software programs by Anonymous Coward · · Score: 0

      No, but I find your abusive language above sophomoric. Take the chip off your shoulder.

    2. Re:software programs by John+Hasler · · Score: 1

      > Does anyone else find the expression "software programs" grating?

      I do. It's about as irritating as "softs" or "proggies".

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
  47. You people ... by Nicolas+MONNET · · Score: 3, Informative

    There's a reason why the second is defined based on an atomic phenomenon. An earth day is something hilariously unreliable; it varies all the time. A near earth asteroid would measurably alter it. Today we can measure time with accuracies in the 10^-15 or something, possibly even less. And besides, you're confusing the problem of defining the base unit (second) with choosing its scale and keeping a calendar. The SI second was scaled to look like the standard second used for centuries, just defined more precisely. The problem here is that the "real" second in the historical definition (one nth of a day) varies because of astronomical phenomenons that cannot be predicted (unless you can solve the n body problem for n very large and have inventoried the whole solar system), it's not a time keeping problem.

    There's a solution to all this, it's called TAI. There is no reason not to use it but ignorance and incompetence. Every other "solution" that has been advanced here was completely, utterly stupid.

    1. Re:You people ... by ktappe · · Score: 1

      There's a solution to all this, it's called TAI. There is no reason not to use it but ignorance and incompetence. Every other "solution" that has been advanced here was completely, utterly stupid.

      No, there is a good reason to not use TAI. That reason is that humans are not computers and our brains do not tell time like an atomic clock. TAI will eventually tell us that 12:00 is at sunset and that's not something humans will (or should) accept. We are smart enough to devise clocks (and computers) that can adjust to keep 12:00 to be when the sun is overhead. Creating and using a system like TAI that gives absolute time control over our diurnal cycles and denies our biological reliance on the sun for proper sleep cycles is what would be completely and utterly stupid.

      --
      "We can categorically state we have not released man-eating badgers into the area." - UK military spokesman, July 2007
    2. Re:You people ... by blueg3 · · Score: 1

      TAI will be off by an hour in something like 18,000 years.

    3. Re:You people ... by DrBoumBoum · · Score: 1

      No, there is a good reason to not use TAI. TAI will eventually tell us that 12:00 is at sunset

      When is it going to tell us that exactly? If it's in 10 000 years like previous posts suggest I don't see it a very good reason to bash it. Who cares whether noon shifts by a few seconds in their lifetime?

    4. Re:You people ... by John+Hasler · · Score: 1

      No, there is a good reason to not use TAI. That reason is that humans are not computers and our brains do not tell time like an atomic clock. TAI will eventually tell us that 12:00 is at sunset and that's not something humans will (or should) accept.

      That is not a reason not to use TAI. It's just a reason not to display TAI when a human asks for the time. The machine can keep time in TAI and use a lookup table to convert to UTC for display as is already done to convert UTC to local time for display. It merely requires the addition of a field to the timezone tables and it is what we are proposing here.

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    5. Re:You people ... by SleazyRidr · · Score: 1

      At the rate of 2 leap seconds in a decade, it will be over 100k years before that happens.

  48. That's not a solution by Nicolas+MONNET · · Score: 3, Insightful

    Clocks should strive to give the most accurate measurement, not lie to their users.

    The solution exists, it's TAI. You use TAI internally and convert to UTC (or your TZ) when displaying, similar to unix time.

    1. Re:That's not a solution by petermgreen · · Score: 1

      Clocks should strive to give the most accurate measurement
      The most accurate measurement of what though? elapsed time or time of day?

      The underlying issue is that we use "civil time" for both measuring elapsed time and measuring time of day but when high accuracy is required the two start to become incompatible. Further it's rather difficult to directly and accurately measure time of day.

      UTC therefore represents a comprimise, it's based on "atom time" but adjusted to match earth time. Thw powers that be decided to do this by inserting or removing seconds but I don't see how adjusting the clock rate for a while is any worse a soloution.

      A further problem is that many common time formats can't represent all valid UTC times. There is simply no way to represent a leap second in unix time.

      The solution exists, it's TAI. You use TAI internally and convert to UTC (or your TZ) when displaying, similar to unix time.
      The big problem is that leap seconds aren't predictable so it's not possible to convert accurately between TAI and UTC for a time in the future nor is it possible for a system that isn't receiving updates to the conversion table to covert accurately for past/current time.

      It follows that if a time is repeatedly converted between TAI and UTC by systems in different states of updating (as could easilly happen in a situation where a gradual migration from UTC to TAI is in progress) there could be some rather nasty error buildups. Much the same problem applies with DST but at least most developed countries tend to keep thier DST rules pretty consistent.

      --
      note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register
    2. Re:That's not a solution by Nicolas+MONNET · · Score: 2, Insightful

      The most accurate measurement of what though? elapsed time or time of day?

      It's trivial to derive time of day from an accurate absolute clock. It's about as hard as displaying a calendar, i.e. not that hard.

      On the other hand it's impossible to derive an accurate clock from an inaccurate calendar clock.

      The big problem is that leap seconds aren't predictable so it's not possible to convert accurately between TAI and UTC for a time in the future nor is it possible for a system that isn't receiving updates to the conversion table to covert accurately for past/current time.

      It's about as difficult as fetching a file over the internet, i.e. trivial. And if you can't fetch that damn file, the only thing you risk is at most a couple second offset when /displaying/. Your calculations are going to be fine; and missing one second on an interval is a big deal (esp. if you're measuring intervals on the order of 1s), while having an offset on a /date/ is hardly ever an issue. And anyway, as soon as you get back to civilization, and assuming you stored your dates in TAI, you can see them accurately in UTC retroactively.

      It follows that if a time is repeatedly converted between TAI and UTC by systems in different states of updating (as could easilly happen in a situation where a gradual migration from UTC to TAI is in progress) there could be some rather nasty error buildups. Much the same problem applies with DST but at least most developed countries tend to keep thier DST rules pretty consistent

      That doesn't strike me as a very common situation. Calculating time intervals, on the other hand, is a very common task. See time(1).

    3. Re:That's not a solution by fast+turtle · · Score: 1

      Screw using TIA as it's still not an acceptable solution. What we need to do is use system based on Galactic Dates. This would provide us with a very long stable time line and allow for our expansion into the usniverse and to get everyone using it, all we'd have to do is call it StarDate 00:00:00

      --
      Mod me up/Mod me down: I wont frown as I've no crown
    4. Re:That's not a solution by John+Hasler · · Score: 1

      > What we need to do is use system based on Galactic Dates.

      Barycentric galactic dates, I assume? Don't forget about the black hole...

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    5. Re:That's not a solution by Anonymous Coward · · Score: 0

      How do you represent "midnight on the 1st April 2085" in TAI? Hint: you can't.

      For this reason, TAI cannot be used by many applications. There is no "one size fits all" answer to handling time.

  49. Wouldn't that be nice? by LostMyBeaver · · Score: 1

    Non-idiot programmers have these awesome computing devices with operating systems and tons of ram and hard drive. Sadly, many of us idiot programmers work on devices that have just enough code to run the initial system check and then if you want something you need to compile it and do it yourself.

    Of course, we could use libraries, but the boss doesn't want to buy a library for each thing and the open source library has a GPL license or a "not for use in commercial software" or whatever license. Or there's a "just give me credit in the program somewhere" license... umm there's no UI... where can I do that? Engrave it on the cover?

    Or we could just open source everything we do, then the first company in China that decides it would be easy to build now that the software is done can make it and sell it on dealextreme for 1/20th the price.

    Nope, we write it over and over and over. We like feeding out families.

  50. so no printf in embedded devices??? by Anonymous Coward · · Score: 0

    so no printf in embedded devices??? Do they have to write everything in assembler or just plain C with no libs (even libc)? No. They use libraries. These libraries have functions in them. These functions are often written by someone else.

    They can do the same here.

    1. Re:so no printf in embedded devices??? by LostMyBeaver · · Score: 1

      libc assumes and operating system. An operating system requires system resources, many of the systems at hand actually don't have room for that. For example, the systems you would use in a DVR that run on 100 milliwatts to control the power of the main DVR. These often function as the real time clock for the system as well. I won't suggest you're using a real time clock dependent leap second precision in a DVR environment, however I will say that there is date and time with second level accuracy. These systems are either written in C WITHOUT libc or they're written in assembler.

      I often find myself writing Atmel assembler for tiny little chips that I use for configuring 3rd party ASICs. They're really useful as you can use a 2 wire interface to control a device that typically requires 8-16 wires to configure. Atmel chips that are too small for C cost about 20 cents in bulk or over a dollar for the same functionality but C programmable. Since we at least one of these on each daughter board in our devices, it does add up (there are sometimes 5 boards). And since we're making hundreds of thousands of them, we DO save a ton of money that can't be accounted for as "the development time to code and maintain assembler would make up for the additional chip cost".

      One of those chips... is a real time clock with network clock synchronization and 0.1us precision. Don't assume that just because this is the 21st century that everyone has the tools available that you consider to be "bare minimum requirements". Hell, if resources were readily available, I would port all our code to C# and write a TI DSP optimized tracing JIT back end for the Mono ILM. But frankly, that's just not the way the cookie crumbles.

  51. Because 15 o clock could be midnight by Anonymous Coward · · Score: 0

    Because 15 o clock could be midnight for all you know. Midday is rather important for humans who rely on sight to view the world around them.

    Meeting up on the beach for a party at 10am is fine until you find out that this is three hours before the sun comes up...

    Besides, since we already have GMT, would this not be indicative that we should use the UK Midday as the World Midday? But funnily enough, it's always USians who promote this idea and want it set to US continental midday.

    Though the french too would have conniptions moving to "UK time". It's just they don't promote it as worldwide, just Europe wide (CET).

    1. Re:Because 15 o clock could be midnight by Per+Wigren · · Score: 1

      It will only take you a couple of days maximum to figure out which times are morning, midday and evening in your area and adapt accordingly. It's a non-issue.

      We already have the perfect TAI time zone so there is no need to define or redefine some other time zone. I'm Swedish BTW, so there is no nationalism involved for me.

      --
      My other account has a 3-digit UID.
    2. Re:Because 15 o clock could be midnight by mangu · · Score: 1

      Besides, since we already have GMT, would this not be indicative that we should use the UK Midday as the World Midday?

      By an incredible coincidence, GMT is very near the best choice for a global midday, because it's one of the options that cause less disturbance by the date line.

      Actually the capital with the best longitude would be Copenhagen, but London is pretty close to optimal. There's a small wiggle around meridian 180 in the date line between Alaska and Siberia. If meridian zero went through Copenhagen the date line would be straight.

  52. Re:The real problem is using seconds for everythin by AbbeyRoad · · Score: 1

    This draft standard smooths out Unix Time around the moment of a leap second:

        http://www.cl.cam.ac.uk/~mgk25/time/utc-sls/

    -paul

  53. Hey Larry Ellison! by FudRucker · · Score: 1

    i gotta know what time it is, so fix your crappy software!

    --
    Politics is Treachery, Religion is Brainwashing
  54. Well I'd say by xerent_sweden · · Score: 1

    it's about time!

    1. Re:Well I'd say by JustOK · · Score: 3, Funny

      I'll second that. Make sure the minutes reflect that.

      --
      rewriting history since 2109
    2. Re:Well I'd say by insertwackynamehere · · Score: 1

      I'll second that hour minutes are important nanosecond

    3. Re:Well I'd say by Bemopolis · · Score: 1

      You better. These things to go in one year and out the other.

      --
      "I guess the moral of the story is, don't paint your airship with rocket fuel." -- Addison Bain
    4. Re:Well I'd say by Anonymous Coward · · Score: 0

      Our jokes are pretty bad.

    5. Re:Well I'd say by Anonymous Coward · · Score: 0

      Ugh... That's just weak.

    6. Re:Well I'd say by JustOK · · Score: 1

      but, at least you find them pretty.

      --
      rewriting history since 2109
  55. Poor computer clocks by Viol8 · · Score: 1

    "Computer clocks are so crude anyway "

    I've noticed this. My PC clock can't even keep time as accurately as my cheap digital watch. It can lose
    20 seconds in a week. Why is this? Surely they use the same sort of quartz crystal mechanism?

    1. Re:Poor computer clocks by Antique+Geekmeister · · Score: 3, Interesting

      No, they don't. For many low end computers, the clock chip is quite inexpensive, and they're under pretty harsh thermal conditions (dependent on layout, airflow, and heat from the CPU or other energy devouring components. The quartz crystal on your wrist doesn't experience anything like those thermal variations: this is why most computers are expected to synchronize with a master clock, such as an NTP service.

    2. Re:Poor computer clocks by ChrisMaple · · Score: 1

      The crystals used in watches and computers for timekeeping are "tuning fork" type (last time I looked.) These low-frequency crystals have VERY poor tempco compared to the common AT-cut type used at higher frequencies. Watch temperatures tend to stay between the temp of your skin and the air. Computer time crystals go between room temp and however hot the inside of your computer gets, which is a wider range. Worse yet, your computer crystal is an afterthought, and probably optimized for a temp well below the computer's operating temperature.

      Finally, crystals that are slightly off-frequency can be trimmed in-circuit to be correct. I don't have any idea how many watch manufacturers actually bother to do this, but I have seen the capability built in. I don't think any computer mfg bothers to allow for trimming of the TOD crystal.

      --
      Contribute to civilization: ari.aynrand.org/donate
    3. Re:Poor computer clocks by Anonymous Coward · · Score: 0

      Yep, on x86-based computers since around 1997, the clock chip is integrated into the southbridge.

  56. Re:The real problem is using seconds for everythin by Terje+Mathisen · · Score: 2, Insightful

    This is one of many, many attempts to make the problem seem to go away, unfortunately enough their choice of 1000 seconds for the smoothing period is close to the worst possible: 1 second in 1000 is 1000 parts per million or 1000 ppm.

    NTP has a maximum slewing rate of 500 ppm or half a second every 1000 seconds, so if your NTP upstream server was to start such an adjustment period, every single connected client would drop out of sync and be forced to do several steps each time the offset got above 128 ms. :-(

    To make this work every single computer clock would need to be updated, while all the national radio standards, like the German 77,5 MHz transmitter, would have to disregard the new standard because the radio receivers would be unable to track it when it started the adjustment period.

    Terje

    --
    "almost all programming can be viewed as an exercise in caching"
  57. Quite obvious by kthreadd · · Score: 4, Funny

    Well obviously the Oracle software worked properly and noticed that the customer had not payed their license to include the extra unlicensed second of operation.

    1. Re:Quite obvious by Anonymous Coward · · Score: 0

      That explains everything. I mean, a software crash is understandable but I was confused as to why Oracle police stormed in and shot everyone afterward.

  58. They should use TAI by Nicolas+MONNET · · Score: 1

    Why are they not? Leap seconds should not be part of the time source, they should be in the display, just like when displaying local time from a UTC clock. Trying to smooth out leap seconds is of the utmost braindeadness.

  59. Oracle was just an example. by Anonymous Coward · · Score: 0

    Given your attitude, you've obviously never had to write code to manage dates and times. You'd think it'd be easy, but it's by far one of the most difficult and error-prone software development tasks around.

    You do realize that Oracle was listed just as an example, right? It was probably only selected to get a rise out of people like yourself, who've gone all anti-Oracle after their purchase of Sun.

    If Oracle, who employs many of the best developers who have ever lived, has trouble with this, then you can be sure that many other software developers and software vendors have created products that have similar issues, and then some.

  60. Ah that's a mighty good reason by Nicolas+MONNET · · Score: 1

    not to use binary, because it's very hard for humans to read.

    (I was talking about using TAI in a program, not for human communication)

  61. Mod parent up. by John+Hasler · · Score: 2, Insightful

    The solution, as the parent says, is to continue publishing leap second announcements but to start distributing TAI. Those who feel a need to track UTC can then insert the leap seconds themselves while other can track TAI and provide lookup tables for conversion to UTC or local time for display just as we do now for DST an local time zones.

    And no, this does not mean putting the correction off for some future generation to deal with. It means realizing that there is no need for a correction at all and that Earth rotation based time is merely a local convention to be handled by an appropriate lookup table.

    --
    Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
  62. You're very confused by Nicolas+MONNET · · Score: 1

    Time (and TAI) is independent of time zones. Time zones are a way of displaying time. Just like 10 in base 8 mean 8 in base 10, but represent the same number.

    And TAI does not have to be calculated, except in as much as it's transmitted indirectly in NTP (which transports UTC and the difference with TAI), because that's where all official time references are derived from.

  63. Software Issue by Murdoch5 · · Score: 1

    So because the software isn't being designed to handle the leap second we should get rid of it? Kind of like in Windows how when there's enough bugs we just ignore them an make a service pack to buy us time for the next inrush of bugs.

  64. Never mind leap seconds, end DST by rossdee · · Score: 2, Insightful

    why don't they drop the silly daylight saving time thing.
    Its been proved that nowdays it doesn't save any electricity, and just messes up peoples schedules and biological clocks.
    In the latest issue of SciAm its listed and one of the inventions humanity would be better off without. (along with the space shuttle)

    1. Re:Never mind leap seconds, end DST by geek2k5 · · Score: 1

      I like DST, especially in the summer when dealing with sixteen hours of sunlight. It puts the sunlight at a time of day when I can use it after work. Without DST, the sunlight would be available at four in the morning, which is a bit too early to mow the lawn.

    2. Re:Never mind leap seconds, end DST by izomiac · · Score: 1

      And I find it a little depressing to walk home and eat dinner in the dark during certain times of the year (I live in a Southern US state). Wouldn't it be simpler to adjust business hours according to local conditions rather than change everything nationally? Heck, what about the people that die each year from the increased number of traffic accidents caused by everybody losing an hour of sleep all at once? That's not the kind of thing you want to synchronize...

    3. Re:Never mind leap seconds, end DST by geek2k5 · · Score: 1

      During certain times of the year I go to work in the dark and come home in the dark, which is a disadvantage I deal with. I'm trading off cooler weather for large variations in available light, which is why I like DST in the summer.

      Adjusting business hours might work if businesses were willing to do so. Of course, that would mean that a lot of people would have to get up an hour earlier, which might also generate a lot of accidents because they lost an hour of sleep.

      I do have a question about your about your comment about finding it depressing to walk home and eat dinner in the dark during some times of the year. I'm assuming that it has no relevance to DST, because DST usually tends to make it less likely that you'll have to do that during some times of the year. Is my assumption right? (I can see how the early evenings after the equinox can have an impact, knowing about SAD, or seasonal affective disorder. But that happens without DST.)

    4. Re:Never mind leap seconds, end DST by izomiac · · Score: 1

      The problem with accidents is that everyone loses an hour of sleep on the same night. If businesses changed their own hours they wouldn't get together and decided to all switch on the same day.

      As for it getting dark about 5:00, that happens near the winter solstice, which is during standard time. The reason I blame DST is because it encourages businesses to make their hours set in stone (literally in some cases, carved on the side of the building), rather than adjust according to the season.

    5. Re:Never mind leap seconds, end DST by geek2k5 · · Score: 1

      Perhaps it would be useful to have a campaign that encourages people to go to bed early on both Saturday and Sunday when the spring DST hits. If someone is the type that has that much of a problem with adjusting their sleep cycle, they'll be a hazard no matter how the change is generated. (It appears that people who are already sleep deprived suffer the most from DST.)

      Having business hour changes would probably reduce the accident rate some but not completely. The accidents caused by business hour changes would likely be spread over several days.

      You might even increase the vehicular accident rates in some instances as the result of road rage caused by a business being closed because of variable hours. If someone REALLY needs something, and the business is closed, they may end up speeding off to the next store.

      One of the problems with the statistics I found is the fact that it mentions that the accident rate goes up on the Monday after the spring DST change but it fails to mention the seriousness of the accidents. What percent are major accidents and what are just fender bender equivalents? You would also need to factor in the number of accidents avoided by DST, especially pedestrian or bicycle versus car. It could be that one day of increased accidents is greatly outweighed by several months of reduced accidents.

      DST is an interesting and controversial problem, with lots of good arguments on both sides.

      I do find some of the agricultural arguments a bit weak, especially those that involve changing the milking times of dairy cows. They could always adopt your idea of changing the 'business' hours during a DST shift so that it is the same relative time. Cows aren't usually clock watchers.

  65. Ignorant question by mutube · · Score: 1

    Can someone explain why we don't just wait until it adds up to a whole day before adding the 'leap'? We're set up to deal with leap years as it is, would it not be less hassle to deal with similar adjustments (albeit less frequent or regular) than dropping extra seconds in more often?

    1. Re:Ignorant question by butlerm · · Score: 1

      It is the way it is now for historical reasons. The debate is about how to change it. The drift is relatively slow, and it would be inconvenient to wait until the clock was off by an entire day (noon at "midnight" would be half way through the cycle).

      However, there are serious advocates of the idea that we should drop leap seconds from civil time and then have a "leap hour" to adjust every thousand years or so. Then local noon would only be off at most one hour from what it is already off now.

      It seems to be more likely though that computers will be changed to track TAI, an atomic time standard that doesn't have leap seconds, and then use some sort of leap second table to convert to "wall clock" or civil time, much as UTC is converted to local time with time zone adjustments now.

  66. Re:Ah that's a mighty good reason by Animaether · · Score: 1

    But very often if you -were- using UTC already, then it was for a timekeeping/logging process that at least -may- involve us lowly humans.

    So let's say you switch to TAI for all internal record-keeping. Great. Now a human needs to know what human time was associated with the TAI record. No problem, you say, just unleash the formula and look up tables and pass that to the display routine. The display routine looks at 23:59:60 and goes *BOOM* just the same as it did with the UTC codes.

    I do think the -programs- need to be fixed, rather than the leap seconds dropped (although I don't see any serious problem with that either.. leap second-aware apps would simply see no further leap second insertions, and it wouldn't be an actual issue until many centuries later).. but saying that the programmer should switch to TAI is oversimplifying things.

  67. Re:Ah that's a mighty good reason by Anonymous Coward · · Score: 0

    I do think the -programs- need to be fixed, rather than the leap seconds dropped (although I don't see any serious problem with that either.. leap second-aware apps would simply see no further leap second insertions, and it wouldn't be an actual issue until many centuries later).. but saying that the programmer should switch to TAI is oversimplifying things.

    How would you implement time(1) taking leap seconds into account? Contrast with tai:

    starttime := tai()
    dosomething()
    duration := tai() - starttime

  68. Explanation by smcdow · · Score: 1

    For those of you wondering WTF this is all about, Wikipedia has a good write-up on leap seconds: http://en.wikipedia.org/wiki/Leap_second

    --
    In the course of every project, it will become necessary to shoot the scientists and begin production.
  69. Re: Multiple Time Servers Considered Harmful by tangent · · Score: 1

    No, actually, it won't. Read this: http://queue.acm.org/detail.cfm?id=1773943

  70. We need constant seconds by mangu · · Score: 2, Informative

    With 1/1000s adjustment every 1024 seconds (which is the polling interval for most stable ntp client) the leap seconds adjustment need less than 2 week to complete

    The problem is that it would introduce variable seconds, which would cause much worse problems.

    One example is electric power systems. The frequency in the AC power system is what determines how much power should be generated, if the frequency is above or below 60 Hz (or 50 Hz) then each power station should decrease or increase their generation by some amount proportional to the frequency difference.

    The accumulated difference in total cycles over a period is used to calculate what was the difference between total energy needed and generated on that period. With leap seconds all you need to do is to divide total cycles by total seconds to get average frequency. With slow adjustment this would be much more difficult.

    1. Re:We need constant seconds by toddestan · · Score: 1

      It would really only matter if you needed to know the absolute time very precisely. For your example, I don't see why a power plant would need to know the exact time for timing of the line frequency, all they really would need is a counter that can count off seconds very accurately.

      I kind of suspect that in a lot of cases, the people designing these systems are introducing unnecessary complications by using UTC when all they really need is an accurate timer.

  71. Sosigenes would be ashamed. by alexwcovington · · Score: 1

    It is the duty of those of us who have brains in our skulls to ensure that everyone else has a vernal equinox tropical year calendar that is as accurate as possible.

    This has to be one of the most obscene examples of attempting to alter reality to fit bad programming.

    --
    (It's never too late to join the Renaissance)
  72. Reinventing the wheel by pavon · · Score: 1

    Different applications have different needs as far as time goes, which is why we have so many different time standards (UTC, UT0, UT1, TAI, GPS, etc). Eliminating the leap second from UTC would simply make it redundant with TAI, and would leave us lacking a standard that has the desired properties that UTC was designed with. Furthermore changing UTC at this point wouldn't simplify anything as as programmers would still need to account for leap seconds that have already occurred. If you want a global time base that is simply seconds since an offset, use TAI, since that is what it was designed for and stop fucking with UTC.

    1. Re:Reinventing the wheel by TheLink · · Score: 1

      > If you want a global time base that is simply seconds since an offset, use TAI,
      > since that is what it was designed for and stop fucking with UTC.

      OK
      1) How do I set my Windows, "Linux" or OSX computers to use TAI?
      2) Are there TAI equivalents for the various timezones e.g. PST, PDT, EST etc?

      If there aren't any TAI equivalents for 2) and the various timezones get "leap seconded" as well then we're back to the same problem right? After all there are lots of computer applications where getting the time, date and timezone right is important.

      --
    2. Re:Reinventing the wheel by John+Hasler · · Score: 1

      The idea is to define UTC as TAI plus the appropriate correction from the leap-second table, which would be maintained by the IERS. Thus UTC would go from being a time-keeping standard to a time-displaying standard.

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
  73. Re: Multiple Time Servers Considered Harmful by nabsltd · · Score: 1

    Although there are pages and pages of information there, nothing in the article in any way shows that multiple time sources actually cause real issues with the current NTP implementation.

    The only mention of it is a thought experiment:

    Imagine a server-selection algorithm that is moving around among candidate servers of similar quality. The result is constant jumping—a classic case of asymmetry jitter. Such jitter is not hard to observe in ntpd, where a connection to multiple peers is in fact recommended.

    If "such jitter is not hard to observe in ntpd", where are the observations? They may exist, but if they aren't in this paper or in another paper referenced by it, that's not good science.

  74. Where I live, we don't do DST by Chirs · · Score: 1

    I'm in Saskatchewan, Canada. We don't do DST...clocks stay the same year round. It's great, except that I telework to a place where they do use DST, so I have to adjust all my work calendar appointments twice a year.

  75. Leap seconds by Anonymous Coward · · Score: 0

    count you in Soviet Russia!

  76. Of course this will break some software... by SETIGuy · · Score: 1
    Any change like this will result in someone's software breaking. Hopefully it will not break in a disastrous manner. If leap seconds are dropped
    1. 1. UTC and UT1 (the time according to the orientation of the earth) will drift apart. That might break software that assumes that abs(UTC-UT1) is less than 1 second.
    2. 2. GPS time will be fixed at 15 seconds ahead of UTC.
    3. 3. UTC will, I assume, be fixed at 34 seconds behind TAI.
    4. 4. Loran-C time will be fixed at 24 seconds ahead of UTC.
    5. 5. Sidereal time calculations based on UT1 should not change, but codes to calculate based upon UTC may have approximations that break down if the UT1-UTC value gets large.
    6. 6. Decisions will eventually need to be made about whether Julian dates will follow UTC or UT1.
  77. The great leap frog by Anonymous Coward · · Score: 0

    As if the endless stream of Oracle security vulnerabilities were not bad enough we have "unbreakable" high availability software that crashes when it encounters a leap second.

    I don't know why its soo difficult for people to understand you ALWAYS use time functions to calculate time. After multiple discussions on this topic I still see people internally doing math with seconds and printing the results as if Time + 86400 adds extra day or Time + 3600 an extra hour or Time + 60 an extra minute.

    It makes me sad because I know our lazy QA dept would never catch it until it goes into production and fucks up a customers system.

    Changing leap seconds to appease morons who shouldn't be writing software in the first place seems to me to be a particularly stupid thing to do.

  78. Do it right the first time by TiggertheMad · · Score: 1

    Do we actually care about that level of accuracy?

    So, just because you don't think it is important, it shouldn't be bothered with? There are plenty of apps that are probably sensitive to having proper time keeping. Take GPS systems for example. Losing a few seconds could have a profound effect on all the devices that use data transmitted by the the satellites. Just because some Oracle idiots can't write a system that consumes UTC time correctly is no reason to hobble the rest of the world.

    --

    HA! I just wasted some of your bandwidth with a frivolous sig!
    1. Re:Do it right the first time by madbavarian · · Score: 1

      GPS's don't use UTC for the simple reason that using a discontinuous time system at the low-level is insane. The Russian GLONASS does have leap seconds, and every time a leap second get applied the system has hiccups (as expected). The GPS system simply keeps its own true seconds-since-the-GPS-epoch counter and never steps this for leap seconds. Adding the leap seconds is left for the display routines in the individual end-user GPS devices.

      As I see it, it really doesn't matter what UTC does as long as computers implement the low-level (internal) timekeeping correctly. If un*x/linux were to have a true seconds-since-the-epoch counter in the kernel with no leap seconds then time difference calculations would be trivial. Each program wouldn't have to have special (and probably largely untested) logic to deal with the time discontinuity around leap second time. Leap seconds (just like daylight-savings-time/normal-time) could be added by the display routines that map seconds-since-the-epoch into a human readable time. There is no need to muck up the low-level timekeeping for these oddities. Only programs that print out the time would need to even know that a leap second occurred, and in most cases that would all be done by the library routines.

      Dan Bernstein first tried to get this low-level stuff straightened out, but folks largely didn't care to fix the problem because POSIX essentially mandated one do things in the more complicated fashion. http://cr.yp.to/proto/utctai.html

  79. Proper solution to use seconds only by Anonymous Coward · · Score: 0

    Proper solutions is to count seconds only and deal with "leap seconds" and other horseshit in the translation layer. Then you can have a map of all the corrections that are needed to the second calculation. Simple.

    A second is the only 100% defined interval of time. "day" is not defined in terms of seconds hence it can only be approximated. "day" also changes from one to another thanks to external factors on our planet.

  80. I value my extra 46 nanoseconds every day by peter303 · · Score: 1

    If the day is lengthening on average .0017 seconds every century, that averages out to 46 nanos more every day. That is hidden under larger microsecond fluctuations caused by weather and earthquakes. Five nanos is 50 million more arithmetic operations on the fastest supercomputer - more than I'll do by hand my entire life.

  81. Re:Ah that's a mighty good reason by John+Hasler · · Score: 1

    The display routine looks at 23:59:60 and goes *BOOM* just the same as it did with the UTC codes.

    TAI (number of seconds since the TAI epoch) would be converted to UTC by simply adding the appropriate number of seconds. UTC is a discontinuous scale consisting of segments of atomic time seperated by leap seconds. "23:59:60" is the conventional way of displaying those discontinuities. You can't get away from them as long as you insist on displaying UTC-based local time, but you can at least move them to the display routines that already have to deal with DST and time zones and get them to hell out of the fundamental timekeeping software.

    I do think the -programs- need to be fixed, rather than the leap seconds dropped (although I don't see any serious problem with that either.. leap second-aware apps would simply see no further leap second insertions

    I don't see that applications should ever need to be aware of leap-seconds.

    ...and it wouldn't be an actual issue until many centuries later.

    There is no need for it ever to be an issue.

    ...but saying that the programmer should switch to TAI is oversimplifying things.

    The whole issue should be transparent to the application programmer.

    --
    Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
  82. Doing those tests costs money by sean.peters · · Score: 1

    So the choices are 1) do leap seconds, which cost money to implement, introduce safety problems into various mission critical systems (which cost money to wring out), and have... no benefit whatsoever.

    Or 2) don't bother with leap seconds. Then you won't have to do the work of introducing them, you won't have to code around them, you won't have to check the code you wrote to get around them, etc, etc... and there's no noticeable downside whatsover.

    The choice seems pretty obvious to me.

    1. Re:Doing those tests costs money by jecblackpepper · · Score: 1

      Or you could keep UTC for 'human' based time with its leap seconds to keep it in synchronisation with the rotation of the earth, and use TAI for any systems that require precision with conversion to UTC or local time when required.

  83. Yes, but which is easier? by sean.peters · · Score: 1

    Option A is to introduce a totally unnecessary leap second into our time system, then force everyone to code around that and check all that code. Option B is to just not do it. Doing away with leap seconds saves money and effort, and there's literally no downside.

  84. Why? by sean.peters · · Score: 1

    but the proposed solution (to let UTC drift farther and farther away from reality) sucks even harder.

    The drift rate is so slow that everyone currently living will be long dead by the time this becomes noticeable, and if it's a problem far in the future, they can introduce a leap minute.

  85. Why? Because you say so? by sean.peters · · Score: 1

    The proper solution is to make programmers aware of leap seconds. There are 86400 seconds in a normal day, however there is an additional second added once or twice a year to adjust for solar time.

    and

    We shouldn't remove fixes to the clock just because programmers are undereducated.

    This is, quite frankly, nuts. We're taking a perfectly good, regular time system, deliberately introducing random error into it, and then forcing programmers to be able to realize this, code around it, and test the workarounds. All this costs money.

    Or we could, you know, just stop doing that. UTC and solar time drift apart so slowly (a couple of seconds per decade) that it would be many, many years before the difference was bigger than the margin of error of the average timepiece, and probably hundreds of years before it became noticeable to actual humans. If it becomes a problem then, they can just add a leap minute. But deliberately screwing up your time system, and then forcing system designers to work around that? Dude, that's not a feature.

  86. Letterman joke by mattack2 · · Score: 1

    Getting rid of leap seconds would mean Letterman couldn't repeat this joke (paraphrased since I don't remember the exact wording):

    Scientists have added a leap second to the year, which is just enough time for Stephen King to churn out another book.

    (I repeat that joke as a Stephen King fan, btw. The first time I heard the joke was likely in the late 1980s or early 1990s, when SK was more prolific.)

  87. Right by sean.peters · · Score: 1

    We adjust for solar time because UTC is an astronomical timescale

    And the proposal is that it stop being an astronomical timescale. So?

    The thing is that regardless of what UTC and TAI were MEANT to be for, in practice, people are using UTC as if it were TAI. And it's probably easier to change UTC than revise the entire Internet.

  88. Yes but you have it backwards by sean.peters · · Score: 1

    Isn't this like legislating that PI is 3.14 because some people have problems with the idea of irrational numbers?

    The situation here is that we have a perfectly good time system that slowly gets out of sync with the rotation of the earth, because the rotation of the earth isn't constant. So we've legislated that the time system must be "fixed" because people have problems with the idea of this getting out of sync. That wouldn't be too bad in itself, but it 1) costs money to introduce the leap second (you have to figure out when to do it, make announcements, adjust your time sources, etc), 2) it costs more money to code around the change you introduced for no particular reason, and 3) it costs still more money to test all your changes. And you avoid... an unnoticeable change in your perception of time. It's crazy.

  89. So why not make life easier on the programmers? by sean.peters · · Score: 1

    We're deliberately introducing errors into the time signal to avoid an unnoticeable difference between UTC and solar time, then forcing programmers to spend time and money coding around this. Why not just stop?

  90. Re: A/C is a paedophile by Hognoxious · · Score: 1

    No, but I find your abusive language above sophomoric.

    Life is hard. Go eat dog cunt and set yourself on fire.

    Take the chip off your shoulder.

    Boy, you sure type tough. I bet you have tattoos and smoke and everything.

    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  91. It's definitely no hassle! by Estanislao+Mart�nez · · Score: 2, Informative

    Yes, the question is more if there's more or less hassle to have summer and winter opening hours than to change "time" itself.

    Oh, it's definitely no hassle as long as the correct measures are taken.

    First, you need to make sure that you standardize the summer and winter hours across the whole nation, so that everybody switches over on the same date. It would be very confusing to have to call every business you deal with in order to ask whether they've already switched over to winter time.

    Second, you should probably amend all local laws that specify specific times of the day so that they specify different times for summer and winter. You know, if my neighborhood bar opens at 8pm in summer and 7pm in winter, I would be pissed if a law that forces bars to close at 2am went unamended. I'd get one fewer bar hour in summer, and that's clearly unacceptable.

    Third, in addition to amending all the laws, you have to make sure that you redo all the street signs that mention specific hours, so that that "free parking after 6pm" sign now lists separate summer and winter hours.

    Fourth, whenever you schedule a late or early appointment in your calendar at a significant time ahead, make sure you take care to check whether the day you're scheduling it for is not past the switchover date, and you accidentally schedule the appointment for a non-laborable time for that season. Hey, we should probably redesign paper agendas so that the lines showing the working hours change for the seasons.

    So you see, yes, it's definitely no hassle at all, as long as you take all of these measures, and any other ones that I may have forgotten.

  92. That's been answered a million times. by Estanislao+Mart�nez · · Score: 1

    Getting rid of leap seconds in the representation would be a mistake in the long run. A much superior fix would be to have computers keep track of TAI internally and then convert to UTC with a leap second table, much the same way we convert to local time with a time zone table.

    The problem with this has been pointed out a gazillion times: updating the leap second table requires either connectivity or manual intervention, which are not available in all applications where people want to use UTC.

    1. Re:That's been answered a million times. by butlerm · · Score: 1

      The problem with this has been pointed out a gazillion times: updating the leap second table requires either connectivity or manual intervention, which are not available in all applications where people want to use UTC

      Give me a break. A local UTC clock isn't accurate without connectivity or manual intervention the moment an unrecognized leap second passes either.

      Using a TAI standard for the system clock has no real downside and lots of upsides. If you don't have an up-to-date leap second table, your idea of TAI might be off, but it won't make any difference as long as you use purpose appropriate timestamp storage formats. The "wall clock" conversion will always read what you expect it to be within the limitations of any astronomically derived time system.

      And unlike a typical POSIX time_t implementation, the system will not require all sorts of crazy hacks to allow it to survive (or function correctly during) a leap second while simultaneously pretending it doesn't exist.

  93. Is The Reverse More Of An Issue? by tingentleman · · Score: 1

    I'm in the "let the folks in 2310 add a leap minute if they want to" camp - but scrapping leap seconds now will have the inverse effect of breaking all the GOOD code now. A lesser evil?

  94. Fix the computers, not the software. by anguirus.x · · Score: 1

    They can still implement them as step functions, except implement them as dilations of existing seconds which computers already know how to compute. That is, instead of trying to modify EVERY piece of time-counting software to arbitrarily do something it was originally coded to throw an error on, just modify the primary layer so that the computer counts 2x clock cycles for 23:59:59 to increment to 00:00:00 instead of 1x clock cycles as usual. Every program running on that system would then keep correct time with the leap second added and without having to make a single modification to the software running on the system.