[tz] Epic fail for DST fallback in hospital health records

Paul Eggert eggert at cs.ucla.edu
Mon Nov 5 04:53:25 UTC 2018


Guy Harris wrote:
> Back in 1979, UNIX wasn't as big a platform that sort of application as it is now; if they started on VMS (I don't know whether it had a "get the time in UTC" API back then) or on MVS (I'm not sure what it offers)

As I understand it, Epic's core suite was written in MUMPS (also known as M), 
which stores each timestamp as an integer count of days since 1840-12-31, paired 
with an integer count of seconds since local midnight. Although there are 
facilities to get UTC and timezone-adjusted timestamps, my guess is that they 
were added later and that most code assumes local time, which could help to 
explain the DST problems with that Epic and other EHR companies have (and why 
they can't or won't fix the problems).

The MUMPS zero point 1840-12-31 was chosen to be the end of a leap year for 
convenience in calculations. The leap year 1840 was chosen so that it could 
safely represent the birthday of the oldest person conceivably needing 
healthcare in the US when the timestamp format was effectively standardized for 
MUMPS in 1969. This is according to a letter from James M. Poitras published in 
the "Just Ask!" column of the September 1993 issue of "M Computing"; see:

http://www.faqs.org/faqs/m-technology-faq/part1/



More information about the tz mailing list