Microsoft has a bug?
I'm shocked.
As for leap years, I wouldn't be surprised if Microsoft buys off the Pope to change it back the way it used to be. Then call it a "feature".
It's official: Microsoft is exactly four hundred and twenty-five years behind the times. It's not just Excel and Exchange that ignore the Gregorian calendar. The Reg has also confirmed that SQL Server 2008, Windows Small Business Server, and Windows Mobile are ignorant as well. In the wake of our story about Exchange 2007 …
And then tell us if we buy Microsoft, they will give us more time, by literally giving us more time.
Interesting, don't you think, that no one in your accounts department has noticed the extra day's work you'll be doing for the exact same money this year.
Tell me again why a little thing like snow in August would be a deterrent to suddenly finding out our calendar needs 50 or 60 leap days added to it..
that Microsoft got wrong, but the Julian calendar. Leap years were in fact introduced
by Julius Cesar following the suggestion of a Greek astronomer to fix the drift between the original Roman calendar and the seasons.
See: http://scienceworld.wolfram.com/astronomy/JulianCalendar.html
The gregorian calendar omits the leap years when the year is divisible by 100
but not 400. So 1900 was not a leap year, but 2000 was.
See: http://scienceworld.wolfram.com/astronomy/GregorianCalendar.html
Maybe someone at Microsoft hates so much Julius Cesar for destroying the liberty of the Roman people that he decided to preserve the traditional republican calendar.
I personally wasted 18 months fixing lots of Y2K bugs, and did several thousand of us. We prevented the Y2K bug. Fortunately lots of systems, Unix derivatives and OS/2 come to mind, never had the problem to begin with.
When you figure out how to program something, say your VCR, then you can talk.
That this bug even exists says volumes about Microsoft's internal disorganization, but regrettably those volumes are akin to the Sibylline Books and impossible to interpret with any certainty.
How'd it slip past? Perhaps because at Microsoft NO ONE IS IN CHARGE. Everybody's charging around doing their own thing. Cute in a way, all that wonderful empowerment, but not when it results in extraordinary snafus like this one. Maybe the manager that should have caught it was away that day on a course "First Principles of Throwing Chairs"?
Or maybe the DLL's for handling dates system-wide got rewritten recently and since, as everyone knows the new is always better than the old, no one bothered to verify their function.
This bug *is* extraordinary. Staggering. Amazing. And inexcusable.
PS: Lotus 1-2-3 R5 from 1994 doesn't have this bug.
Paris because she probably doesn't have problems with *her* dates.
"""
"And yet there was ultra hype about the non existent Y2K bugs infestation everywhere in another century where terrorism was yet to rear it's ugly head..."
I wasn't aware that terrorism was such a recent innovation ;-P
"""
Neither was I, what with living near Belfast for most of my life, and all that...
Mine's the black one with matching balaclava mask and gloves, cheers mate.
SQL 2008 CTP is a beta. It's supposed to have bugs. That's because it's being made available before they're done with it.
I can certainly see the viewpoint that they should have fixed all the bugs they reasonably could have, especially the _super-important ones_ that prevent you from starting the service on February 29th (unless you twiddle your computer's calendar by a day, start the service, then twiddle the calendar back), before they let anyone have a look at how the software is shaping up.
But then it wouldn't be a "Community Technology Preview", would it? And everyone would be complaining that if Microsoft (sorry - Micro$oft) had only let the community preview the new technology, the community could have offered all sorts of helpful criticism about things they do and don't like, before there wasn't any time left to tweak the bells and whistles.
I s'pose since I've taken the unpopular standpoint of defending a software company that happens to be Microsoft, I better go with the billg halo.
I reckon its much bigger than mentioned. I doubt very much the programmers on any of those apps have done any date programming or testing. Like everyone else they are using a library for their dates. They'll test basic interaction with the library, good data, bad data, but not all possible dates. The library 'should'(tm) have been had been tested and quality assured.
So what library of date functions can't handle leap years and what other software by M$ or anyone else uses that library. What's the odds its underlies .NET?
It's M$-Micro$haft-whateva *beta* version of something. Translated in real computing words, it should thus be considered as pre-alpha release. Don't pretend you're surprised then. At least this time it prevents people from installing it BEFORE bolluxing (thanks El Reg's dic) the system.
And anyway, as |urban legend| it was in every version of Lotus Notes |/urban legend|, it will be included in the upcoming, 972 pages long new ISO standard for a super-duper-luser-friendly calendar. Coming soon. You can start holding your breath.
The warm, penguin shaped one please (still snowing here).
STOMP STOMP STOMP out
Microsoft dominates the world, the world stops every 29th Feb. Mass upgrade would be too expensive so calender is changed to suit M$.
The calendar is, of course, created by M$, and by this time patented with every IP organisation in the world. M$ owns time. Though of course they will licence it to countries, individuals and organisations for a very reasonable rate.
Microphones will be installed in every streetlamp (paid for by the pavement owners) to ensure that the time will only be passed on to other holders of an M$Time Recurring EULA Licence.
What will happen at the first M$Time BSD!? Will there still be a Royal Navy PFY around to "just switch it off and on again..."?
Where is The Doctor when you need him? Hell, The Master would do . . .
A converstation must have gone something like:
'Our competitors have a bug in their spreadshit date handling.'
'Cool! We can beat them on quality!'
'Er no. It has been decreed that, because of compatibility, we must copy the bug and enshrine it in ALL our products for ever and ever.'
'Um, what is compatibility, anyway?'
that Microsoft finally came up against an international specification that they couldn't embrace, extend, and exterminate :-)
They've been trying for how many years now??? And just now they finally concede that the Earth is not going to change it's rotation around the Sun just to conform with their concept of what it should be.
Idiots. Or possibly really they believe that God uses MS products and maybe (just maybe) He would find it more convenient to just tweak the system a little...
The diverse y2k bugs kept me busy for most of a year, patching every single Windows box in a large, mission critical network. You see, if a production database gets the release dates wrong, you're in serious trouble...
Interestingly, some boxes had to be patched again because the patches issued by MS introduced other bugs.
Some software packages for Linux kernel 2.2 were also affected.
Apple announced "We don't have a y2k bug, we have a y32k bug. We're working on that one, though."
The people at Sun sat back and laughed their heads off.
"I personally wasted 18 months fixing lots of Y2K bugs, and did several thousand of us. We prevented the Y2K bug. Fortunately lots of systems, Unix derivatives and OS/2 come to mind, never had the problem to begin with."
Well, make up your mind. If the bug wasn't there, you didn't prevent it. If you prevented it, you didn't waste your time.
Clearly MS is full of people who are pumping out date bugs faster than you or your colleagues can fix them, so presumably the truth is that most mission critical systems were not written by MS (at least in 1999) and had been properly programmed in the first place.
As someone says above, the Julian calendar (adopted 45 BC) does have leap years.
So MS are in fact 2053 years out of date.
OOXML does use the Julian calendar though. It treats 1900 as a leap year, and permits the (non-existent) 29 February 2008.
But El Reg is wrong to say that use of the Julian calendar is 425 years out of date. Here in Blighty it is only 255 years out of date:
$ /usr/bin/cal 9 1752
What do you think we are? European, or something?
Ken,
You are right, it wasn't a waste of time, everything that needed fixing got fixed.
I was always astounded by the hysteria in normally rational people. I remember the Y2K coordinator at the insurance company I was at at the time briefing us to have blankets in the car, food and water, not to use the coffee machine in case the water supply had been contaminated! It was really quite amazing. I earn't a fortune that weekend being in the office on stand by in case it all went wrong. How did I spend my time, playing Half Life on my laptop....
Ken, read what's there, not what you think is there.
Lots of systems != All systems
If he meant "all UNIX derivatives", well, the OS WAS clean because POSIX tells you what to do. *applications* didn't miss out because they didn't obey posix rules.
'course UNIX has it's epochal failure in 2038.
Now I wonder if MS will have to update MSOOXML to reflect this bug (which it is) so that they can maintaing their bug compatibility that they tried so hard to include in their spec.
I too wasted a lot of time fixing Y2K bugs.
I believe it was a waste of time because although this did in fact prevent any date-induced nastiness the authors of the software should never have caused the problem in the first place - especially as mortgage companies have known about this since 1975.
Look at it this way:
Your 4 year old toddler / pet dog / significant other / roommate etc. knocks a tin of paint all over your carpet. You spend 5 hours cleaning it up, which you do exceptionally so that no-one would ever have known there had been paint there. Did you waste those 5 hours or not?
If not then I have shed loads of productive odd-jobs you can come round and do for me. For free of course.
Aha! This would explain why my Thameslink ticket purchased on Feb 29th would not let me out at St Pancras less than an hour after I bought it. Fortunately there was a kind man waving everyone through the glass gate instead. Lots of people around were muttering "only had 4 years to fix it from last time!".
"Stop" cos that's what the barriers did at the top of the escalator.
Feb 29 GMT?
GMT is a mistake; it should read UTC. If the OS date-time was Feb 29 in UTC, then Exchange and SQL wouldn't start; if it was Feb 29 local, but Feb 28 or March 1 (depending on timezone) UTC, then it would start. If it was Feb 28/March 1 local but Feb 29 UTC, then it wouldn't.
If it was already running, then it stayed running.
Who bothers about that anyway? It's not like y'all were BORN on leap day, is it? Now I wonder why sensible IT workers would complain about an extra day off every 4 years. I actually wonder why I didn't read a BOFH story about that already. "Emergency? What emergency? The fancy new teamworking suite (from MS, as it happens) told me that I hadn't anything to do yesterday, so I stayed home. And the fancy new paging system (incidentally running MS crap) that you forced upon me stayed quiet as a dead boss. You might have dreamed all that" or something along the line. With boss firings (figuratively... and physically also maybe), job outsourcings (to a reputable company, started the day before by the PFY for example) and all the usual. Add a bit of Simon's magic, and tadaaa!(tm).
Now (unless these recurring bugs got fixed before -giggle-) you have 4 more years to figure out the end!
And we DO need a BOFH icon. This one will do the trick in the meantime.