Time Flys Like An Arrow; Fruit Flies Like A Banana

We recently released my video on the new Animation Transition Control and in looking it over I noticed that I promised to follow up on the definition of a Date/Time “Tick”

Gregorian

A quick look at Wikipedia reveals any number of problems with attempting to count the number of nanoseconds from the date 1/1/01. Without diving too deep into this bit of trivia, I will note that the Gregorian calendar used in civil affairs (in which today is May 8, 2009 AD or CE) attempted to fix errors in the Julian calendar but missed the mark, and created problems of its own.  These were “corrected” a number of times, introducing new problems making it nearly impossible to historically find your way backwards with any exactitude through the middle ages (10 days were dropped from the calendar all in one go in some countries by Papal Bull, but not in other countries, and some parts of Europe did not adopt some aspects of the Gregorian calendar for another two hundred years, with the Swedish introducing February 30 (30!) in 1712). Greece didn’t make the switch until 1918, fully three centuries after Pope Gregory’s proclamation.

Complicating things further is the introduction of leap seconds for the past 40 years, to account for the accumulation of irregularities in the Earth’s rotation.

Rata Die

A little further research, however, puts this all to rest, as it turns out that the Rata Die (RD) system assigns numbers to calendar days independent of calendars, and is almost certainly what Microsoft uses for Ticks as RD counts forward from 1 at midnight on January 1, year 1  in the Proleptic Gregorain calendar (that is, the Gregorian calendar you produce by starting today and carrying the Gregorian calendar backwards in time past the years of its introduction). 

Wasn’t that fun?

Share

About Jesse Liberty

Jesse Liberty is an independent consultant and programmer with three decades of experience writing and delivering software projects. He is the author of 2 dozen books and multiple Pluralsight courses, and has been a Senior Technical Evangelist for Microsoft, a Distinguished Software Engineer for AT&T, a VP for Information Services for Citibank and a Software Architect for PBS. He is a Xamarin Certified Mobile Developer and a Xamarin MVP, Microsoft MVP and Telerik MVP.
This entry was posted in z Silverlight Archives. Bookmark the permalink.

Leave a Reply

Your email address will not be published.