Project MAC, where we met S at MIT A the Software Arts building where we worked together T and the attic N where VisiCalc was written
Other writings on our personal sites:

RSS Feeds:



Comments from Frankston, Reed, and Friends

Tuesday, August 02, 2005

BobF at 9:18 PM [url]:

A Tiny Bit more on Leap Seconds

Maybe we will finally get rid of the stupid leap second. Following up my initial comments posted on Dave Farber's IP list I added some additional point in response to others' comments and questions. The basic point is that the leap second shows a lack of understanding of basic computer science concepts, especially the concept of representation being separate from the “thing” itself.

  • The leap second is very different from the leap year – it's like the difference between leaping over a tall building and leaping over a puddle. There is a real difference between time spans and absolute (to be precise, relative to a reference year) dates. We don't use years or months as time spans when we need precision. We do use days and fractions as span measures because they seem to be well-defined.
  • After nearly 2000 years (I know, the current calendar is more recent though the use of lunar and solar years is older) it seems unfair to suddenly change the rules and say units of a minute or larger are no longer usable as measures of intervals. Someone changed the rules without taking the consequences into account. It's bad enough that we used to change phone numbers by splitting areas but it was worse when the post office changed my zip code because most people don't expect such changes.
  • As a representation issue we could just add a “leap second” field to the date representation for those applications that need it. It is better than redefining an existing representation without regard to the consequences. JavaScript and other languages define time in terms of milliseconds from a given date – you can't do this with leap seconds!
  • The fact that the leap second isn't known in advance only reinforces point that this is a representation issue. You need to make sure all devices are not just data aware but also able to get the latest leap second information. You can't build a clock with just gears—you need it to have a radio receiver.
  • Leap seconds are nanosecond level corrections. But this is puzzling since the astronomers dealing with time at such a scale should be aware that time is not a simple linear concept. Relativistic effects mean that such corrections are at a level below relativistic effects so only solve a specific problem and don't really address larger challenges of dealing with time.
  • Linguistics and philosophy. Time is a complex concept. Why do we need to try to force incompatible purposes into a single mechanism?
  • Some say it's too small to matter. It's not just that I'm anal—there are real consequences such as experiments going awry. The irony here is that we have been able to tolerate the leap second because we rarely use time to the precision that it matters. This is what makes it so absurd that we infest our infrastructure with this concept when the precision isn't important but do it at the cost of assuring that we can no longer measure time interfaces above a second without having context. Why do we work so hard to avoid race conditions in computer programs when simply running a program across the wrong boundary will cause failure?

While I disagree with many attempts to keep science from annoying us, this is a case where scientists themselves have foisted their narrowness on the rest of us.

PS: In proofreading this I noticed I had typed “leap year” instead of “leap second” in some key sentences. The attempt to complete “leap” with “year” is very strong but the parallel can lead us to accept leap seconds as if it were the same thing – it is hard to escape such tendency so we can question the wisdom of the “time experts”.

For more, see the Archive.

© Copyright 2002-2008 by Daniel Bricklin, Bob Frankston, and David P. Reed
All Rights Reserved.

Comments to: webmaster at satn.org, danb at satn.org, bobf at satn.org, or dpreed at satn.org.

The weblog part of this web site is authored with Blogger.