Bill Roper (billroper) wrote,
Bill Roper

Fun and Games With Dates

There are dates that are fun. Then there are dates that aren't.

In this case, these aren't dates you go out on, nor are they dates that you eat. They're dates that exist on a calendar.

Right now, the date when I need to finish my current project at work is approaching like an onrushing train and I discover that one of my major problems is figuring out how to convert between dates that exist on a calendar and dates that only a financial guy could love. You see, I need to figure out when events are going to occur, based on contracts that specify real dates that exist on a calendar. Most of the models in our product are based in calendar time, so there's no problem at all finding the real calendar date that matches. (Well, a few small problems, but they're easily solved.)

But there are three kinds of year that we support that don't match up with a real calendar:

12-month years with 360 days
12-month years with 364 days and months containing 4 or 5 weeks
13-month years with 364 days and months that all contain 4 weeks

I know what the easy solution is -- other than not supporting them, which is right out. I'm just trying to convince myself that our users will be ok with the easy solution. (Which is dumping the extra days in the last month of the fiscal year and letting God sort them out. This would be easier if I weren't God in this case.)
Tags: musings, work

  • Fzzzt!

    On Saturday, Julie called me to come to the basement, because there was a horrible high-pitched noise that had gone away by the time I got there. I…

  • Here Comes the Rain Again

    The thunderstorms have arrived. Boy, have they arrived! Happily, I got the electrostatic air filters back off the patio where I had taken them out…

  • Back to the Weekend

    Ok, work week's over. Now, let's see if I can catch up on things at home this weekend.

  • Post a new comment


    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded