Slashdot Mirror


Y2.01K

After our recent discussion of decimal/hexadecimal confusion at the turn of 2010, alphadogg writes in with a Network World survey of wider problems caused by the date change. "A decade after the Y2K crisis, date changes still pose technology problems, making some security software upgrades difficult and locking millions of bank ATM users out of their accounts. Chips used in bank cards to identify account numbers could not read the year 2010 properly, making it impossible for ATMs and point of sale machines in Germany to read debit cards of 30 million people since New Year's Day, according to published reports. The workaround is to reprogram the machines so the chips don't have to deal with the number. In Australia, point-of-sales machines skipped ahead to 2016 rather than 2010 at midnight Dec. 31, rendering them unusable by retailers, some of whom reported thousands of dollars in lost sales. Meanwhile Symantec's network-access control software that is supposed to check whether spam and virus definitions have been updated recently enough fails because of this 2010 problem."

48 of 269 comments (clear)

  1. idiocy? Incompetence? by rueger · · Score: 4, Insightful

    How on earth can things like this happen? After the Y2K debacle how can anyone
    not anticipate and extensively test for future dates?

    Is this sheer utter incompetence, or just a total lack of intelligence?

    Yee Gods!

    1. Re:idiocy? Incompetence? by MichaelSmith · · Score: 2, Insightful

      Because everybody forgot about Y2K on Jan 1 2000. Planes didn't fall from the sky, remember (well not immediately, anyway).

    2. Re:idiocy? Incompetence? by xous · · Score: 2, Insightful

      This is because they let people that shouldn't be anywhere near a production system write software.

      Almost all of these issues can be attributed to developers rolling their own date handling functions or misusing built-in functions.

      I'd blame some of it on retarded user interfaces that accept two digit year values.

      DO NOT REINVENT THE WHEEL!!

    3. Re:idiocy? Incompetence? by the_humeister · · Score: 2, Funny

      Wait until Dec. 31, 9999. Watch as people panic about there being 5 digits in the year and how programs were only written to accommodate 4 digit years for the past 8000 years!

    4. Re:idiocy? Incompetence? by jlarocco · · Score: 4, Insightful

      100% incompetence.

      I would bet all the money I have that 99.99% of these problems are caused by people not taking the time to learn the standard library of whatever programming language they're using. For some reason there's a gut instinct among programmers that they have to write all date processing code themselves. I can think of 4 separate occasions, off the top of my head, where I've replaced dozens of lines of sketchy, hand roled, date formatting code with a single call to strftime.

    5. Re:idiocy? Incompetence? by MichaelSmith · · Score: 5, Funny

      Wait until Dec. 31, 9999. Watch as people panic about there being 5 digits in the year and how programs were only written to accommodate 4 digit years for the past 8000 years!

      They are going to have thaw out a lot of old cobol programmers.

    6. Re:idiocy? Incompetence? by mlts · · Score: 2, Insightful

      Its neither. It's ROI and worrying about this quarter's earnings over anything else, pure and simple. Because there isn't any primary returns from finding date errors in the future, businesses just won't plunk down funds to fix them, and will reactively fix problems when they happen. I see this a lot in businesses, and not just the big boys. Plenty of SMBs also are not interested in hearing about anything they need to spend their money on, but stuff that has a positive return. They would rather forget about time issues. When zero hour happens, most feel that they can hire a ton of consultants to fix any problems that arise, even though it costs way more than if it was fixed before stuff failed.

      Just the same with computer security because to a typical MBA++ PHB, security gives no financial gains. I've heard so many times, "I'm not worried. If I get hacked, I'll just call the Geek Squad guys and they will fix it."

    7. Re:idiocy? Incompetence? by Evil+Shabazz · · Score: 4, Funny

      At the Bank of Germany, we're not happy until you're not happy.

      --
      Down with the career politician! SUPPORT TERM LIMITS
    8. Re:idiocy? Incompetence? by LoRdTAW · · Score: 4, Funny

      Hmmm so the 9/11 hijackers were Y2K bugs then? We better keep an eye out for more aircraft bugs on Sept 11 2011 .... holy shit there is an 11 in 2011 AND 9/11! ZOMG!

    9. Re:idiocy? Incompetence? by kestasjk · · Score: 4, Funny

      Ah nothing like a 9/11 joke to brighten my day

      --
      // MD_Update(&m,buf,j);
    10. Re:idiocy? Incompetence? by darkpixel2k · · Score: 4, Funny

      Because everybody forgot about Y2K on Jan 1 2000. Planes didn't fall from the sky, remember (well not immediately, anyway).

      Yes. I anticipated this. I now store all my dates much like the Unix epoch, except I store it in a 1 gigabit integer field (f*ck 64-bit integers) that counts the number of seconds since midnight January 1st, 50,000,000,000^1024 years ago.

      We should be safe from now until the universe collapses, Jesus comes back, Allah blows us all up, or the Great Green Arkleseizure wipes his nose.

      Oh--and you do have that new holographic storage tech in your laptop, right? You'll need a few exobytes just to store the timestamps on all your files...

      --
      There's no place like ::1 (I've completed my transition to IPv6)
    11. Re:idiocy? Incompetence? by thsths · · Score: 2, Interesting

      > At the Bank of Germany, we're not happy until you're not happy.

      Indeed. They even said if the cache machine in your branch did not work and you had to get money from a competitor, you will not get the fee reimbursed at most banks. So far only one bank has promised to pay them back.

    12. Re:idiocy? Incompetence? by JustinKSU · · Score: 5, Interesting

      A little bit of both!

      We have actually had TWO different Y2K10 problems at our job. One was related to someone setting certain rules to expire in 2010, because, you know, it was so far off in the future they wouldn't be working here anymore.

      The other bug qualifies as complete incompetence on the developer. We contracted another company to write some software to print barcode labels. They encoded pipe delimited values including a date. In order to save digits and thus reduce the size of the barcode they decided to take the year and append the Julian day. For example Jan, 6th of this year would be stored as 2010006. The problem was that they didn't feel that it was necessary to use four digits for the year. Which is understandable, but apparently TWO digits for the year was too much as well. So the end product was a one digit year ex. "0006". The code that reads the label was:
      year = 2000 + barcode.left(1);

      What's really scary, is that this code had to have been written post Y2K.

      The worst part of the whole thing is that we have to go back to the contractor to fix the problem which is going to cost us $$$ beyond the lost revenue of downtime.

      Now both of these problems have nothing to do with 2010 specifically, but it just shows how short sighted developers can be.

    13. Re:idiocy? Incompetence? by ozmanjusri · · Score: 5, Funny
      They are going to have thaw out a lot of old cobol programmers.

      True.

      We should start freezing them now, just to be sure.

      --
      "I've got more toys than Teruhisa Kitahara."
    14. Re:idiocy? Incompetence? by Anonymous Coward · · Score: 4, Insightful

      Since the contractor is going to be paid a second time, I would say it demonstrates their forward planning.

    15. Re:idiocy? Incompetence? by w0mprat · · Score: 2, Funny

      End of the world? I just checked my calendar, and the last day is December 31st. This has me deeply concerned.

      How on earth could this happen? This is shear blistering incompetence that no one thought to include any more days past this point.

      --
      After logging in slashdot still does not take you back to the page you were on. It's been that way for 20 years.
    16. Re:idiocy? Incompetence? by TubeSteak · · Score: 4, Funny

      They are going to have thaw out a lot of old cobol programmers.

      I, for one, welcome the Lords of Cobol.
       
      /All this has happened before, and all of it will happen again.

      --
      [Fuck Beta]
      o0t!
    17. Re:idiocy? Incompetence? by bradley13 · · Score: 3, Informative

      Two reasons

      1. Many programmers are not particularly competent. Add in the untrained people writing scripts, VBA applications, etc, who have no clue about software engineering, testing, etc. No surprise that simple errors crop up.
      2. Dates are really, really horrible. If you have not had the privilege of writing an international application, worrying about different date and time representations, simultaneity across different time-zones (and the date line) - well, it's an adventure, and even careful testing may not catch everything. Gratuitous real-world example: WinXP allows users to set date-separators and the like in a way that makes unambiguous date/time parsing impossible.
      --
      Enjoy life! This is not a dress rehearsal.
    18. Re:idiocy? Incompetence? by ComaVN · · Score: 2, Informative

      It's not the Excel language that breaks stuff as far as I recall, but Windows' regional settings. Set your windows regional settings to France or whatever, and it should work.

      At least, that is the case for csv files in Excel.

      --
      Be wary of any facts that confirm your opinion.
    19. Re:idiocy? Incompetence? by digitig · · Score: 2

      Simple. Y2k is being delivered ten years late. People never learn about late IT deliveries!

      --
      Quidnam Latine loqui modo coepi?
    20. Re:idiocy? Incompetence? by JaredOfEuropa · · Score: 2, Insightful

      Re. point 1: Coding is complex, and newbies turning out poor code doesn't mean they are morons or poorly trained. A lot of the finesse of proper software engineering comes through hard-won experience, and quess what: rarely do we give those newbies a chance to gain that experience.

      What I am talking about is mentoring and code reviews, two things that seem to have gone the way of the dodo. "Catch errors early" has always been a good coder's maxim; but there really is no excuse to have a newbie's code go unscrutinised. Catch their errors early so you can both have a good laugh about it, and he can fix the error at his leisure. If such errors come up during final testing (or worse: after release), you're too late. Instead of a valuable lesson you'll have an expensive embarassment on your hands.

      --
      If construction was anything like programming, an incorrectly fitted lock would bring down the entire building...
    21. Re:idiocy? Incompetence? by ais523 · · Score: 2, Insightful

      Personally, I blame it on bad reverse-engineering. 9 looks the same in binary and binary-coded-decimal (the bit pattern for each is 00001001), but the bit pattern for 10 in binary-coded-decimal (00010000) is the same as the bit pattern for 16 in binary. I imagine what's going on here is people guessing at a protocol and not having enough information to distinguish binary from BCD. (If they do that because the protocol isn't available, it's forgivable; if they do it because they're too lazy to look it up, it's incompetence.)

      --
      (1)DOCOMEFROM!2~.2'~#1WHILE:1<-"'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"
    22. Re:idiocy? Incompetence? by jargon82 · · Score: 3, Funny

      For your second point, does it really matter? Programmers will rarely if ever get dates, no matter how hard they try....

    23. Re:idiocy? Incompetence? by AtomicJake · · Score: 2, Funny

      Indeed. They even said if the cache machine in your branch did not work ...

      Well, this works actually very well. The machine is caching all the money ...

    24. Re:idiocy? Incompetence? by MrKaos · · Score: 2, Insightful

      Because everybody forgot about Y2K on Jan 1 2000. Planes didn't fall from the sky, remember (well not immediately, anyway).

      I've been confronted with the idiot at dinner(s) who says "what about that Y2K bug - what a load of crap that was, nothing happened". I gently remind them that a lot of people worked pretty hard to make sure nothing happened. Maybe this time around there won't be any budget to handle it. Guess we may find out on the 10/10/2010.

      --
      My ism, it's full of beliefs.
    25. Re:idiocy? Incompetence? by Anonymous Coward · · Score: 2, Funny

      There are reasons of business and budget that trump incompetence, but your post reminded me of a story.

      Technical background: I worked in VAX/VMS, where dates were stored as binary but commonly displayed as dd-mmm-yyyy, such as "01-Jan-2000".

      Once upon a time, there was an Oracle DBA, whose primary claim to fame was being female and good looking in a line of work where such attributes were uncommon. She applied for a job in my IT department and we interviewed her. Although we found her visually refreshing, her technical skills were lacking. So I promoted an existing staff member into the DBA position. The candidate we passed on landed at a nearby IT shop. Later on, we had a collaborative project with that other IT group. My DBA (the one I promoted) drops into my office...

      DBA: "You gotta see this! Remember Ms. xxxxxx? You were right. She built a database where all of the date fields are STRINGS!"

      [DBA goes on an on about how wrong that is, but misses the real implications]

      ME: "Do you know what the funny part of this is?"

      DBA: "No."

      ME: "She just made April Fools Day the first day of the year. In fact, years don't matter all that much, since they are relegated to the tail end of the string. Any select statement that sorts by one of those string/date fields is going to give you some fascinating results! As of now, the calendar is April, August, December...."

      [Laughter for the rest of the afternoon]

    26. Re:idiocy? Incompetence? by Teancum · · Score: 4, Informative

      Amen this this sentiment. The effort to make sure that the Y2K bug didn't cause more havoc and mayhem is precisely due to the herculean effort on the part of hundreds of thousands of programmers who worked overtime to see that it didn't happen.

      I had the cell phone for my company to receive the complaints from customers seeking an engineering solution to fixing any potential problems on the night of December 31st, 1999. The company CEO had this number on speed dial for some very high end clients. That I got through the night with some excellent sleep is a testament to the work that did happen was well done.

      It turned out for the company I worked for, there was a Y2K bug that did get missed, but it was relatively minor and only impacted the error logging system. Even funnier was that particular system had only been developed six months earlier, by a programmer who clearly should have known better. The date being logged was recorded as the year "19100" instead of 2000.

      I'm far more worried about the 2038 Unix overflow bug, which is a much harder bug to try and root out of systems. We have 18 years to fix that bug, but I'm mainly worried that legacy applications on archaic computers used in situations that has no budget is where it will be the largest problem. Unix boxes in particular are known as workhorse computers that can be neglected and ignored... unlike a Windows computer that will most certainly be in the recycling bin within 18 years.

      Also, one of the typical "fixes" for the Y2K bug was to set an arbitrary "century window" on the software.... with sometimes random intervals for when this window actually falls. Instead of Y2K biting you all on the same day, it will happen as a class of failures on random dates when some major epoch happens.... such as 2010. So for me, this isn't even news as this is something I'm expecting. 2020 is going to be another year to watch for similar bugs, and 2040 is going to be a particularly ugly year as 1940 was set as a common century epoch point for a great many companies. 1970 was more common, but I hope that the Y2K bug is finally fixed by 2070.

    27. Re:idiocy? Incompetence? by clone53421 · · Score: 2, Informative

      Similarly, a .xls file created with a non-english excel (we often receive such files from clients who use excel in french) uses commas as the float separator and is unreadable in another version of excel.

      That’s not even true. Maybe you meant .csv files.

      I’ve created .xls files on a computer with German regional settings (comma for the decimal point, dot for the thousands separator) and moved it onto a computer with normal US regional settings. It worked perfectly fine.

      It even converted all my formula cells... on the German settings, semicolons are used to delimit function arguments, and commas are used for hard-coded floats. E.g. if with the US settings you’d use
      =IF(A1>0.5, 0.5, A1)
      with the German settings you’d use
      =IF(A1>0,5; 0,5; A1)
      It did all of the conversions automatically.

      In a .csv file of course everything is stored as human-readable ASCII, so you’d have to change your regional settings, open it, and save it as an .xls, which should then be portable (independent of your regional settings).

      --
      Alexander Peter Kristopeit bought his basement from his mommy for one dollar.
    28. Re:idiocy? Incompetence? by Bigjeff5 · · Score: 3, Insightful

      This is precisely why Windows no longer even fits on a DVD disc any more, and they are moving on to Blu-ray discs for distribution.

      Says someone who has no clue what their talking about.

      Windows OS code is not bloated because of inefficient libraries, it is bloated because, with the exception of Vista, MS bends over backwards to include hacks for legacy software. Essentially they make sure people whose code relied on some bug or quirk in a previous version of Windows still works in the next version of windows, even though the bug itself was fixed.

      One example was SimCity 2000 back in the Windows 95 days. Microsoft actually put in a SC2000 specific hack just so that program would work on the next version of Windows, because they had relied on some odd behavior of Windows at the time, and there was no way to update all the copies of SC2000.

      They do that kind of thing for thousands of companies with each new version of Windows, just to maintain compatibility.

      Combine that with all of the new features each new upgrade brings, and you have your size increase right there. And I predict the next one will be even larger, for these very reasons. ;)

      --
      Security is mostly a superstition... Avoiding danger is no safer in the long run than outright exposure. - Helen Keller
    29. Re:idiocy? Incompetence? by GameboyRMH · · Score: 3, Funny

      You're thinking of when it hit 1234567890, on Valentine's Day 2009...as if to mock us...

      --
      "When information is power, privacy is freedom" - Jah-Wren Ryel
    30. Re:idiocy? Incompetence? by Firehed · · Score: 2, Insightful

      Actually, some early problems would have been discovered two years ago (think: 30-year loans). In all likelihood, there are plenty of bugs out there going unnoticed because some database table is silently capping the value at the signed int limit rather than throwing some sort of overflow error. Come 2038, there may be plenty of people who get a bill for an unexpected balloon payment in the tens or hundreds of thousands of dollars. Or on the flip side, bills will stop being sent out and some bank ends up losing a ton of money.

      --
      How are sites slashdotted when nobody reads TFAs?
  2. Windows Mobile by michaelhood · · Score: 4, Funny

    http://news.cnet.com/8301-13860_3-10425455-56.html

    this is affecting me and the other 3 guys on the planet with a Windows Mobile phone, too. :(

    1. Re:Windows Mobile by jargon82 · · Score: 2, Informative

      My WM phone doesn't appear to have an issue. That's all 4 of us!

  3. MMX Technology by hound3000 · · Score: 4, Funny

    Geez! Intel introduced MMX Technology to take care of this problem in 1996! Get with the times!

  4. We got hit by Y2.01k by LiquidHAL · · Score: 3, Funny

    January 1st our 15 year old security badge system started marking all badges as invalid. Couldn't fix it until we rolled back the system date.

  5. the eternal curse of the software developer by Tumbleweed · · Score: 5, Insightful

    Programmer: "I want to take some time to refactor some of the older code."

    MBA: "What's the ROI on that?"

    Programmer: "DIAF."

    1. Re:the eternal curse of the software developer by kestasjk · · Score: 2, Informative

      MBA: "And why do you need to do this refactoring?" Programmer: "I didn't expect my code to be in use (in these ATMs) for more than a few years. Numbers don't come cheap in computers you know"

      --
      // MD_Update(&m,buf,j);
  6. does the wii has a minor 2010 issue? by Anonymous Coward · · Score: 3, Interesting

    Playing wii new years eve. The thing hard crashed exactly as the year changed (it was in the menu not a game). After a reboot it was fine.

    1. Re:does the wii has a minor 2010 issue? by kestasjk · · Score: 5, Funny

      At least the situation is too embarrassing to file a bug report

      --
      // MD_Update(&m,buf,j);
  7. Re:Have I not heard this before? by Arthur+Grumbine · · Score: 2, Funny

    Didn't I hear this before? I remember people talking about scamming banking systems via the confusion caused by 2010.

    Wait a second... isn't that the plot from Superman IV?

    --
    Now that I think about it, I'm pretty sure everything I just said is completely wrong.
  8. Spamassassin by j_sp_r · · Score: 3, Informative

    Spamassassin in Kerio Mailserver has a bug that flags all messages dated 2010 as spam. I think it affects the normal spamassassin as well.

  9. Re:These coders are morons. by Arthur+Grumbine · · Score: 3, Funny

    For instance, I'm doubtful there will be anything in existence in 2 billion years that will be capable of reading your code...

    That's probably what the Ancients thought when they built the Stargates. Never underestimate the need future species may have for a plot generation device.

    --
    Now that I think about it, I'm pretty sure everything I just said is completely wrong.
  10. Re:My ThinkPad had some trouble too. by B2382F29 · · Score: 4, Funny

    [..] I manually the hardware clock [..]

    Did you accidentally the whole clock?

    --
    Move Sig. For great justice.
  11. Good. by AK+Marc · · Score: 4, Insightful

    I did Y2K remediation. I've seen it called a waste of resources and that because nothing happened, nothing would have happened. This is the smallest taste of what would have happened if Y2K weren't addressed. Only we would have had airliners fall from the sky (silly? Military jets had all navigation crash when crossing the date line, and if not for a tanker with them and that communications worked when navigation failed, they would have crashed). But with a lot of hard work, it was a non event.

    Though, if anyone could tell me why my power went out at exactly midnight on that night, I'd love to know. The Preston Hollow neighborhood in Dallas did have a power failure right at midnight. And I never could figure out what happened. But all the equipment I was responsible worked flawlessly.

  12. It's Y2K01 by El_Muerte_TDS · · Score: 2, Interesting

    I think the proper way to denote year 2010 is Y2K01, just like 14K4 was used for 14400.
    Of course writing Y2K01 or Y2.01K is more difficult than Y2010, so why bother using that arcane notation.

    1. Re:It's Y2K01 by omglolbah · · Score: 2, Informative

      In electronics and many engineering situations decimal points are not used. Usually because they can be lost in copying due to small imperfections etc.

      So 1.2kOhm would be written as 1k2 ohm.
      10.2 ohm would be 10r2. You can see this in a lot of older schematics. I think some confuse this standard where you would write 2010 as 2k010, the last zero can of course be dropped.

      Not sure which one I would prefer, just throwing in the information as it seems to be the 'solution' of sorts to the confusion?

  13. I can certainly vouch for this. by gorzek · · Score: 3, Interesting

    I work for a software company that's been in business since 1978. The product I work on is a real-time pharmacy benefit adjudication system, so it has to be up 24/7. They had one guy do Y2K fixes back in '99, and he retired last summer without telling anyone his Y2K "solution" was to just add 100 to any data containing a year. With the way this software works, that was fine--until 2010. Something tells me the timing of his retirement wasn't coincidental! It wasn't hard to fix, but some people took really absurd shortcuts fixing Y2K bugs, when there are plenty of ways to do it that are just as simple and won't break after 10 years.

  14. Got hit by this one myself by Chris+Mattern · · Score: 2, Interesting

    SunPCi cards are essentially x86 PC blades designed to be plugged into a PCI slot on a Sun SPARC machine. I use a SunPCi III in the Sun Blade 1500 (SPARC desktop) I have on my desk to run software I have to run that requires Windows. This Monday, I fired it up and got told by the driver software that my system date was in the future because "I can't believe it's really" 2010 (the exact words of the error message!). Looking at the Sun forum message traffic, apparently *everybody* with a SunPCi III card is getting this. Sun's supposed to be working on a patch now. Right now the only workaround is to set your system clock back to 2009 when you fire up the SunPCi card (you can set it back to correct after it starts).