[HN Gopher] Ask HN: Was the Y2K crisis real?
       ___________________________________________________________________
        
       Ask HN: Was the Y2K crisis real?
        
       There was very little fallout to the Y2K bug, which begs the
       question: was the Y2K crisis real and well handled or not really a
       crisis at all?
        
       Author : kkdaemas
       Score  : 182 points
       Date   : 2020-03-12 12:38 UTC (10 hours ago)
        
       | jkingsbery wrote:
       | It ended up not being a big deal. But, there are still stories in
       | the news about bugs in software that assume years only have 2
       | digits that matter (see e.g., https://www.theguardian.com/uk-
       | news/2020/feb/12/home-office-...).
        
       | british_india wrote:
       | Absolutely it was real! Armies of developers fixed it so well,
       | fools were able to think it wasn't real as a heart attack.
        
       | dwheeler wrote:
       | Yes, the y2k crisis was real, or more accurately, would have been
       | a serious crisis if people had not rushed and spent lots of money
       | to deal with it ahead of time. In many systems it would have been
       | no big deal if unfixed, but there were a huge number of really
       | important systems that would have been a serious problem had they
       | not been fixed. Part of the challenge was that this was an
       | immovable deadline, often if things don't work out you just spend
       | more time and money, but there was no additional time that anyone
       | could give.
       | 
       | The Y2K bug did not become a crisis only because people literally
       | spent tens of billions of dollars in effort to fix it. And in the
       | end, everything kept working, so a lot of people thought it
       | wasn't a crisis at all. Complete nonsense.
       | 
       | Yes, it's true that all software occasionally has bugs. But when
       | all the software fails at the same time, a lot of the backup
       | systems simultaneously fail, and you lose the infrastructure to
       | fix things.
        
         | duxup wrote:
         | Yeah the sheer volume of just bad data entry type situations
         | with messed up dates could have been for some companies
         | absolutely enormous.
         | 
         | Whole businesses would be ground to a halt to stem the mess of
         | bad data and if not prepared they would not have quick fix.
         | 
         | In many cases in the age of apps and web apps we can roll out
         | fixes fairly quickly, but in 2000 that was very much not the
         | case for most situations.
        
         | mhh__ wrote:
         | People I've met definitely think it was an Apollo 13 type
         | emerging problem rather than a largely preempted issue.
        
         | weej wrote:
         | I'm having PTSD just thinking about updates of YY to CCYY in
         | mainframe code. Very real and heavy investment across numerous
         | industries from aviation to financial and more. At a macro
         | level, I remember it being pretty well managed risk and
         | mitigation.
        
       | GnarfGnarf wrote:
       | You're darn tootin' it was real. It was only through the
       | dedicated, focused efforts of thousands of unsung IT heroes that
       | we averted catastrophe.
       | 
       | Just because it didn't happen doesn't mean it couldn't have.
       | 
       | Even in the late 80's I had to argue with some colleagues that we
       | really shouldn't be using two-digit dates anymore.
       | 
       | I worked with 80-column punched cards in the 70's, every column
       | was precious, you had to use two-digit years. When we converted
       | to disc, storage was still small and expensive, and we had to
       | stay with two-digit years.
       | 
       | See: http://www.kyber.ca/rants/year2000.htm
        
       | kevin_thibedeau wrote:
       | Just wait for Y2100. There are still lots of RTCs storing two
       | digit years.
        
       | ninju wrote:
       | Yes..the Y2K was _very_ real and was (moderately) well handled.
       | 
       | The potential for large disruptions in financial, real-time and
       | other systems would have occurred if not for the effort applied.
       | 
       | Unfortunately some problems require a certain level of media-
       | awareness and/or hysteria before we devote the necessary
       | resources to fix the problem __before __it become a crisis
        
       | adrianmsmith wrote:
       | I have always wondered the same thing. I came to the conclusion
       | that it's pretty difficult to determine that.
       | 
       | I lived and worked as a software developer through the Y2K
       | "crisis" (although I wasn't working on solving the crisis
       | myself). Everyone was very worried about it. Nothing really went
       | wrong in the end.
       | 
       | Was that because there was no problem? Or because everyone was
       | worried about it and actually solved the problem? I don't think
       | it's easy to tell the difference really.
        
         | mathw wrote:
         | It's only hard to tell if you don't talk to the developers who
         | were working in the late 90s.
        
           | slantyyz wrote:
           | >> It's only hard to tell if you don't talk to the developers
           | who were working in the late 90s.
           | 
           | I think you mean "working ON it". Talking to developers as a
           | broad group from that time wouldn't necessarily produce any
           | useful information.
           | 
           | The person you replied to was himself a developer working in
           | the late 90s. During the late 90s, I talked to a lot of
           | developers, but only a small percentage of them were on Y2K
           | jobs.
        
             | VLM wrote:
             | We were all on Y2K jobs, in the sense that for the decade
             | of the 90s you'd get looked at very weirdly if you tried to
             | produce code and systems using two digit years.
        
               | slantyyz wrote:
               | I guess I have a different perception. If you were trying
               | to produce code in the 90s using two digit years, the
               | weird looks had less to do with Y2K than "why would you
               | save incomplete data to save a couple of bytes"?
               | 
               | For context, most of the devs I worked with at that time
               | finished their CS degrees within the previous 10 years,
               | and were not legacy systems programmers. Doing 2 digit
               | years was inconceivable to them.
        
             | sourcesmith wrote:
             | There were a lot of Y2K related tasks in the course of many
             | developers generally activity. Where I worked at the time,
             | there were not developers solely dedicated to Y2K work. The
             | Y2K issue pretty much caused an employment boom for
             | software developers though.
        
               | TedDoesntTalk wrote:
               | It especially caused a boom for COBOL programmers, but
               | not so much Java developers.
        
               | dhosek wrote:
               | I was fixing Y2K bugs at a company founded in 1997.
               | Unless you never touched date stuff, I can't imagine
               | being oblivious to Y2K issues working in IT in 1999.
        
               | slantyyz wrote:
               | The startups I worked in around that time - we were using
               | recent hardware with 4 digit years and unconcerned about
               | Y2K issues.
               | 
               | So while we were -aware- of the Y2K issue, it didn't
               | impact any of us in a concrete fashion. We would talk
               | about people we knew on Y2K projects, which were mostly
               | mission critical legacy systems.
               | 
               | So it's not inconceivable for devs in the 90s to have
               | only cursory awareness of the -real- issues that the
               | people who worked on Y2K projects were facing and solved.
        
       | olliej wrote:
       | It was a crisis, but it was actually prepared for and handled,
       | which is why things didn't go wrong.
       | 
       | The trick yo avoiding predictable crises is to actually doing
       | something before it happens in order to avoid it.
        
       | AndrewDucker wrote:
       | Not only was it real, some of the fixes were kludges put in place
       | that would only last for 20 years. But that was fine, because
       | surely we'd have done longer term fixes by then?
       | 
       | Except we didn't:
       | 
       | https://en.wikipedia.org/wiki/Year_2000_problem#On_1_January...
        
         | dhosek wrote:
         | Well when most of the bad Y2K code was written they knew it was
         | bad, they just didn't think civilization would last until the
         | year 2000. It was the Reagan years, after all.
        
       | CiPHPerCoder wrote:
       | The Y2K bug, in the public imagination, was premised on code like
       | this existing somewhere in our computers:                 const
       | DATE_COMPUTERS_DID_NOT_EXIST = /* arbitrary */;              /*
       | snip */              if (Date::now() <
       | DATE_COMPUTERS_DID_NOT_EXIST) {         Computer::selfDestruct();
       | }
       | 
       | (See also: the Simpsons Y2K episode, which I think is a good
       | representation of what many non-tech people believed would
       | happen.)
       | 
       | I think it's a great lesson in the failings of the public
       | imagination and should serve as a warning to _not give into moral
       | panics_.
        
       | [deleted]
        
       | JSeymourATL wrote:
       | Perception is reality, so goes the Old Line.
       | 
       | It's certainly true an absurd amount of resources went into
       | 'fixing' the problem.
       | 
       | Apply to this to any crisis du jour--
       | drugs/terrorism/climate/viruses etc...
       | 
       | Never let a Good Crisis go to waste.
        
       | wjdp wrote:
       | We integrate with a lot of third parties with varying levels of
       | legacy conversion required to do so. At least one still stores
       | years as two digit numbers. This is the payments industry.
        
       | ebrenes wrote:
       | I was not working on fixing Y2K issues, but I did notice the
       | impact it had on systems that hadn't been patched. It's the
       | typical IT conundrum, when you do a good job no one notices and
       | you don't get rewarded for doing a good job; the only recognition
       | comes when things fail.
       | 
       | Some historians seem to think that it was a real crisis in which
       | the US pioneered solutions that were used across the world:
       | https://www.washingtonpost.com/outlook/2019/12/30/lessons-yk...
        
       | mywittyname wrote:
       | We are lucky that the Y2k issue was so understandable by the
       | public. I doubt we will have such luck addressing the Y2038
       | problem.
        
         | computerphage wrote:
         | Fortunately the two events will occur in the order they that
         | they will. Having a reference will help explain the issue.
        
           | ColinWright wrote:
           | Except most muggles I know are saying that Y2K was a complete
           | fraud because nothing went wrong, and it was all a scam.
           | 
           | I'm seriously thinking of hibernating through the 30 days
           | covering Y2038.
        
             | Loughla wrote:
             | Really? Even in flyover country the people I know tend to
             | understand that it was only not an issue because of hard
             | work on the front-end.
        
               | ColinWright wrote:
               | At least one of us is in a bubble. Whenever it comes up
               | in conversation among general groups, at east half the
               | people are adamant it was all a waste of time and money,
               | and driven my frauds trying to make easy money.
               | 
               | Of the remainder, perhaps half don't really have an
               | opinion.
               | 
               | The remaining 25% vaguely accept that it was a real
               | problem, but are not at all aware of the real extent.
               | 
               | Anecdata, to be sure, but you might want to spread your
               | net more widely when asking people what they think.
        
               | Mountain_Skies wrote:
               | There's a certain percentage of the population that just
               | really loves to believe in conspiracy theories.
               | Thankfully most of them have rather weak beliefs in them
               | but the hardcore believers can be frustrating especially
               | when they have something explained to them, they agree
               | it's correct, and then a week later go back to preaching
               | their favorite conspiracy.
        
               | q4814 wrote:
               | "Even in flyover country", ouch, you realize the comments
               | earlier about Walmart's Y2K efforts were all driven out
               | of Arkansas, right?
        
               | Mountain_Skies wrote:
               | Or that the world's busiest airport is in a state thought
               | of as part of flyover country. What's funny is how many
               | use that term but then get offended at jabs about coastal
               | elites.
        
               | Loughla wrote:
               | I'm from flyover country. There are talented people here,
               | and well-educated people here. This is why I live here.
               | It's cheap and the people are nice.
               | 
               | But I would argue that there is also a much higher
               | proportion of individuals who do not understand
               | technology and who are out of the loop on this kind of
               | thing.
        
             | catalogia wrote:
             | I've heard plenty of people say it was a fraud, but I've
             | not met any who believes that strongly. A gentle correction
             | has always resulted in a shrug and _" yeah I guess you're
             | right, that makes sense."_ So while Y2K skepticism is real
             | and widespread, I don't think it's really something to
             | worry about. It doesn't seem to be a matter people are
             | passionately wrong about. It's not like antivaxxers where
             | corrections are met with insults and accusations of
             | conspiracy.
        
         | criley2 wrote:
         | >We are lucky that the Y2k issue was so understandable by the
         | public.
         | 
         | As someone who was forced to spend Y2K in a "prepped" cabin on
         | the side of a mountain with two years of supplies buried
         | underneath, I think you might overestimate the quality of the
         | public's response to Y2K.
         | 
         | The public did not maturely understand that software needed to
         | be updated and everything was OK.
         | 
         | There was some real panic out there. It was arguably the
         | biggest "End Times" event of the modern era, definitely IMO
         | surpassing "2012" and other "apocalypse panics".
         | 
         | The Y2k preppers and panic, I think, was the foundation for the
         | modern prepper movement and the public's desire to flip from
         | conspiracy to conspiracy to predict collapse.
        
           | kragen wrote:
           | I remember someone on Usenet (probably in 1998 or 1999) using
           | the term "programmer denialists" to insult programmers who
           | said the Y2K problem was mostly under control.
        
           | circlefavshape wrote:
           | !!!
           | 
           | I think you might be using an unusual description of "the
           | public"
        
             | michaelmrose wrote:
             | I think you probably misunderstand the actual size of this
             | public. Between 30% and 40% believe that the earth was
             | created as is between 6k and 10k years ago.
             | 
             | https://www.livescience.com/46123-many-americans-
             | creationist...
             | 
             | People who believe that the earth evolved over time due to
             | a completely natural process is mostly gaining ground
             | through losses to "god guided evolution" not young earthers
             | who are going strong.
        
               | s_gourichon wrote:
               | Not quite the same topic, but even popes have been
               | telling that Bible should not be taken literally at least
               | for the past 23 years. https://en.m.wikipedia.org/wiki/Ev
               | olution_and_the_Catholic_C...
        
               | stephenr wrote:
               | 30-40% of Americans maybe.
        
           | salgernon wrote:
           | May I ask why you were "forced" to this? Y2K was the only
           | "apocalypse panic" I can recall in 50 years (not counting the
           | Cold War "The Day After" nuclear Armageddon) and I never knew
           | anyone that considered 2012 to be other than a joke.
        
             | lostcolony wrote:
             | 20 years ago = probably < 18 years old. Whatever OPs
             | parents decided was likely what OP had to do too.
        
         | Dansvidania wrote:
         | Thanks for bringing this up, I had not thought about epoch time
         | overflow
        
       | wglb wrote:
       | Well, there were fallouts, but few disastrous ones.
       | 
       | First, enormous amounts of money was spent on repairs to the
       | extent that they could be done. I know of some 50-year-old
       | processes that didn't have the original source any longer.
       | Significant consultant time was used in what at times resembled
       | archeology.
       | 
       | Second, there was a little downturn in new projects after the
       | turn, as budgets had been totally busted.
       | 
       | There was one consultant who preached doom and gloom about the
       | collapse of civilization when that midnight came. He went so far
       | as to move his family from NYC to New Mexico. He published on his
       | web page all sorts of survivalist techniques and necessities.
       | When the time came, his kids, who apparently didn't share the
       | end-of-the-world view, woke him up and said "Dad!! New Zealand is
       | dark!!!" but of course it wasn't.
       | 
       | The lesson there was that there was a tunnel vision about exactly
       | how automated stuff actually was. While there were enormous
       | systems with mainframes, Sun servers, workstations doing all this
       | work, what the tunnel vision brought was the perception that
       | excluded the regular human interactions with the inputs and
       | outputs and operation of these systems. Not so fully automated
       | after all.
       | 
       | There were a few disasters--I remember one small or medium
       | grocery chain that had POS systems that couldn't handle credit
       | cards with expiration dates beyond 12-31-1999 and would crash the
       | whole outfit. The store was unable to process any transaction
       | then until the whole thing was rebooted. They shortly went out of
       | business.
        
       | dreamcompiler wrote:
       | I worked on US national security Y2K issues for two years prior.
       | Yes, it was real. The fact that so many people now think it was a
       | big nothing means my team did its job.
        
       | [deleted]
        
       | ecpottinger wrote:
       | In 1998 we tested the new computers we sold and many failed or
       | gave odd results when the date was changed to 2000. By mid 1999
       | almost none of the computers had any problems if you advanced the
       | date.
       | 
       | Also one of the major results of the Y2K bug, IT department
       | finally got the budgets to upgrade their hardware. If they had
       | not gotten newer hardware I am sure there would have been more
       | problems.
       | 
       | Finally, in my area the main reason companies failed from IT
       | problems is because of problems with their database, but it turns
       | out their backup are not good or have not been done recently.
       | Many companies tried to be cheap and never updated their backup
       | software, so even if they did backup their data the backup
       | software could really mess things up if it used 2 digit dates to
       | track which files to update.
       | 
       | Things go very bad if you lose Payroll, Accounts Payable or
       | Accounts Receive-able.
        
       | bjourne wrote:
       | What does the science say? I have seen exactly zero studies which
       | claim that the y2k bug would have led to disastrous consequences
       | if action had not been taken.
       | 
       | Compare that to the CFC situation in the 80's. Scientists agree
       | that the mitigating actions we took saved the ozone layer. Or
       | compare it to the current global warming crisis. Scientists tell
       | us that if we do nothing, we will suffer catastrophic climate
       | change.
       | 
       | Media never tells you the truth, but the scientists usually do.
       | So you listen to them.
        
         | fanf2 wrote:
         | Try looking for y2k articles here
         | https://m-cacm.acm.org/magazines/decade/1990
        
       | vlan0 wrote:
       | My prior UPS maintenance guy had some war stories from that time.
       | He said prior to the event, it was the busiest he's ever been. He
       | was either replacing affected hardware or performing software
       | updates to solve the issue on Liebert UPSs.
       | 
       | He spent New Years in a DC of a big financial firm in NYC.
       | Apparently the firm was so worried about a failure they shelled
       | out big bucks to have UPS maintenance staff onsite during the
       | cut-over "just in case".
        
       | [deleted]
        
       | sys_64738 wrote:
       | Yes but the media tries to paint it as an overblown reaction.
       | Thanks to the hard work and long hours of all the IT folks and
       | programmers, it was reduced to no real fire fights.
        
       | Marazan wrote:
       | Yes it was a real crisis. Yes it was well handled.
        
       | csixty4 wrote:
       | Yes and no.
       | 
       | There were a lot of two-digit dates out there which would have
       | led to a lot of bugs. Companies put a lot of effort into
       | addressing them so the worst you heard about was a 101 year old
       | man getting baby formula in the mail.
       | 
       | The media over-hyped it, though. There was a market for books and
       | guest interviews on TV news, and plenty of people were willing to
       | step up and preach doom & gloom for a couple bucks: planes were
       | going to fall out of the sky, ATMs would stop working, all
       | traffic lights were going to fail, that sort of thing. It's like
       | there was a pressure to ratchet things up a notch every day so
       | you looked like you were more aware of the tragic impact of this
       | bug than everyone else.
       | 
       | That's the part of the crisis that wasn't real, and it never was.
        
       | blihp wrote:
       | It wasn't a crisis, but it was a real problem that needed to be,
       | and was, fixed in plenty of time. It didn't surprise anyone in
       | the industry as it was well known throughout the 90's it was
       | coming. The biggest problem was identifying what would break and
       | either fix or replace it. Many companies I dealt with at the time
       | humorously did both: they had big remediation projects and as
       | soon as they finished, decided to dump most of the old stuff for
       | shiny new stuff anyway.
        
       | Japhy_Ryder wrote:
       | Peter Gibbons: Well see, they wrote all this bank software, and,
       | uh, to save space, they used two digits for the date instead of
       | four. So, like, 98 instead of 1998? So, like, 98 instead of 1998?
       | Uh, so I go through these thousands of lines of code and, uh...
       | it doesn't really matter.
        
       | 29athrowaway wrote:
       | Imagine having to pay 100 years in interest or late fees.
        
         | dhosek wrote:
         | I was working on billing systems in 1999. For our company at
         | least, the danger was in autobilling these amounts to a
         | customer's credit card (I actually accidentally put a bug into
         | production that increased rather than decreased the balance due
         | after a payment, causing exponential growth in the amount the
         | customer owed, so I saw what happens in this circumstance). End
         | result, angry customer, reputational loss and likely the loss
         | of a minimum of one billing cycle's revenue (assuming customer
         | didn't cancel outright).
         | 
         | From the customer's perspective, they would lose the use of
         | their billing credit card for typically a day while until the
         | charges were reversed. This was less of an issue in 2000 than
         | today as far fewer regular payments happened via credit card,
         | but would still be a major disruptor.
        
         | mcswell wrote:
         | I'd rather imagine getting 100 years' interest on my savings
         | account. Especially considering what's happening today to my
         | 401(k)...
        
       | IshKebab wrote:
       | Not really. At least not like it was portrayed. The public
       | thought that all computers stored dates like `99` for 1999, so
       | potentially all code that handled dates/times would need to be
       | fixed.
       | 
       | But actually most software uses epoch time or something similar.
       | So the scope of the problem was much smaller than the news
       | implied.
        
       | stretchwithme wrote:
       | An avoidable problem can become real if you don't take the
       | actions required to avoid it.
        
       | Diederich wrote:
       | To add a little nuance:
       | 
       | A global retailer you've definitely heard of that used to own
       | stores in Germany spent a lot of time preparing for Y2K. This was
       | a long and painful process, but it got done in time.
       | 
       | But problems still slipped through. These problems ended up not
       | being that big and visible because a large percentage of the code
       | base had just been recently vetted, and a useful minority of that
       | had been recently updated. Every single piece had clear and
       | current ownership.
       | 
       | Lastly, there was an enormous amount of vigilance on The Big
       | Night. Most of the Information Systems Division was on eight hour
       | shifts, with big overlap between shifts at key hours (midnight in
       | the US), and _everyone else_ was on call.
       | 
       | As midnight rolled through Germany, all of the point of sale
       | systems stopped working.
       | 
       | This was immediately noticed (the stores weren't open, but
       | managers were there, exercising their systems), the responsible
       | team started looking into it within minutes, a fix was
       | identified, implemented and tested within tens of minutes, and
       | rolled out in less than an hour.
       | 
       | Pre-Y2K effort and planning was vital; during-Y2K focus, along
       | with the indirect fruits of the prior work, was also critical.
        
         | rolandog wrote:
         | I love these kinds of war stories of incredibly capable people.
         | That was great planning for the unknowns.
        
           | Diederich wrote:
           | I've worked in silicon valley for the past 11 years, in
           | startups as well as two so-called FAANG companies. There are
           | a lot of brilliant people out here.
           | 
           | So that is well known. What's not well known is this: there
           | are pockets of brilliant people elsewhere, including
           | Bentonville, Arkansas.
           | 
           | Especially in the years running up to 2000, I had the
           | pleasure and honor of working with some of the most talented
           | people in the world, even though we were all looked down on
           | by many people on the coasts.
        
             | cjohnson318 wrote:
             | I knew a guy that worked at Walmart for years, right out of
             | college. He said that the biggest issue he had with
             | onboarding people was impressing upon them the scope of
             | Walmart's enterprise. You don't just "move fast and break
             | stuff". If your clever hack causes an outage in pharmacy,
             | then you're directly affecting millions of people across
             | the country that need medicine.
        
               | Diederich wrote:
               | Yup.
               | 
               | It's funny, because for the first 2/3 of my tenure there,
               | WalMart Information Systems Division did move _extremely_
               | fast....and yet almost _never_ broke anything.
               | 
               | It was an amazing thing to see.
        
             | wglb wrote:
             | While I don't have direct knowledge of Bentonville, the
             | general impression that I have formed is that they are one
             | or two cuts above any other enterprise of their size.
        
               | pjmorris wrote:
               | I once worked with an F500 retailer who had Bentonville
               | 'graduates' among their IT staff. Sharp people among
               | other sharp people. It takes a lot to keep the lights on
               | pretty much everywhere. Walk in to any big box store and
               | look around for how many gadgets and systems there are.
        
               | Diederich wrote:
               | Most everyone would be _amazed_ at much networked
               | equipment is in a WalMart supercenter. By the time I
               | left, there were four routers, four big core switches, a
               | couple dozen  'edge' switches, and scores of access
               | points. And that's just the networking gear. As of 2009,
               | my team's network discovery system had identified tens of
               | millions of separate IP addressable nodes on the global
               | network.
               | 
               | At that scale, everything had to be almost perfectly
               | automated.
               | 
               | And, to be clear, this was not a static, boring network.
               | Stores, home offices, distribution centers, you name it,
               | were being added, moved, expanded, deallocated 24 hours a
               | day, all over the world.
               | 
               | And the device configs were _far_ from cookie cutter. An
               | eye-wateringly complex heuristic was required to
               | dynamically create router, switch and access point config
               | that would allow a given store to function.
               | 
               | And, one quarter in the early 2000s, we (Network
               | Engineering) achieved six sigma (99.9999%) global uptime.
               | 
               | Things did start going downhill around 2004 or so, a few
               | years after Kevin Turner became CIO.
        
               | Diederich wrote:
               | > I once worked with an F500 retailer who had Bentonville
               | 'graduates' among their IT staff.
               | 
               | May I ask which one? Just idle curiosity.
        
             | beat wrote:
             | I was in Minneapolis for Y2K... working release
             | management/build engineering for a commercial ERP vendor,
             | surrounded by Cray veterans (including my direct manager).
             | The brainpower we put to Y2K was huge, but then again, we'd
             | been selling product for a few years at that point as a
             | "solution" to Y2K... just buy a new ERP system, and abandon
             | your old in-house stuff rather than trying to fix it.
             | 
             | What a lot of Silicon Valley people don't get is that there
             | are people just as smart as them everywhere.
        
             | lostcolony wrote:
             | Yeah...previous to moving to the west coast (working not
             | for a FAANG, but a well recognized name that competes for
             | much of the same talent, and offers comparable
             | compensation), I was working in Atlanta.
             | 
             | I would argue the caliber of people I worked with there,
             | from no name universities, or known names, but not
             | equivalent to many people (Georgia Tech vs Berkeley, say),
             | was generally better there. It of course varied person to
             | person, but the teams were generally stronger, senior devs
             | were more senior, juniors tended to be hungrier to learn,
             | etc. Maybe it was just the lack of the FAANGs sucking up
             | the best people.
        
               | Stratoscope wrote:
               | Indeed, there was a comment here a few years ago from
               | someone who was rejected for an interview, the stated
               | reason being "Sorry, we're only accepting candidates from
               | top tier schools. We've never heard of Georgia Tech."
               | 
               | I was like "WTF? They've probably never heard of Waterloo
               | either!"
               | 
               | (For anyone unfamiliar, these may not be household names,
               | but they are definitely top tier CS schools.)
        
           | Marazan wrote:
           | The software maintenance research literature from 1999 to
           | 2002 ish is littered with this kind of stuff as researchers
           | got to embed in teams doing one off massive maintence
           | projects to fix y2k stuff.
        
           | jniedrauer wrote:
           | I generally hate being woken up at night or having to work at
           | night. But there is something electrifying in the atmosphere
           | when you get a bunch of smart people in a room at 2 in the
           | morning to solve a major problem as quickly as possible. Some
           | part of me really enjoys late night war rooms.
        
         | fleetingmoments wrote:
         | Couldn't the rollover be simulated ahead of time by simply
         | setting the date forward? Seems crazy that you had to have
         | people on the ground fixing things as the clock struck 0.
        
           | Diederich wrote:
           | Two decades ago, I was roughly familiar with the details,
           | after the fact, but I can't remember now.
           | 
           | As sibling comments have noted: these systems are an
           | exceedingly complex pile of separate but interdependent
           | pieces.
           | 
           | The rollover from 31-Dec-1999 to 1-Jan-2000 had happened
           | _thousands_ of times before the actual day came. Some piece
           | /assumption/etc had been overlooked.
        
           | davesmylie wrote:
           | Sure. On systems under your control.
           | 
           | It's the network of interacting systems that prevents this
           | from being so simple.
        
           | salgernon wrote:
           | All systems in the gigantic clockwork of interconnected
           | legacy would need to be rolled simultaneously- and it wasn't
           | unreasonable to expect that there are systems in that mix
           | that _nobody knew could be affected_. To this day I read
           | about systems that come up as a surprise when they start to
           | fail and nobody owns them and the persons responsible have
           | long since lived on.
        
         | hyperpape wrote:
         | Why the generic description? Are you unable to say which
         | retailer?
        
           | onychomys wrote:
           | The only global retailer that we've all heard of that owned
           | stores in Germany in 1999 but doesn't now (note the "used to
           | own stores" in the comment) is Walmart: https://www.theguardi
           | an.com/business/2006/jul/28/retail.mone...
        
             | Diederich wrote:
             | That's a bingo. I wasn't particularly trying to obfuscate.
             | 
             | I'm curious how you so quickly figured it out though.
        
           | Diederich wrote:
           | Just being cute. It's WalMart Stores, Inc.
        
             | hyperpape wrote:
             | Thanks, just wanted to nudge you to make the example as
             | complete as possible.
        
         | Roboprog wrote:
         | I remember having to go into work at 4:00 AM to replace the
         | shift that spent the night in the operations support center.
         | 
         | Fortunately, the guys that spent the previous year sweating the
         | details got it right. We had one system that printed year 100
         | in its log which was only used by humans.
         | 
         | Unfortunately, I missed the party and cash the night shift got.
        
           | Diederich wrote:
           | > that printed year 100
           | 
           | Did it print the year "100" or "19100"?
        
             | Scuds wrote:
             | At the Living Computer Museum in Seattle they have an IBM
             | S/360 that prints out we're in year 19120.
        
               | dag11 wrote:
               | Maybe it knows something we don't...
        
             | ComputerGuru wrote:
             | It wouldn't matter because that is a point-of-use detail,
             | eg                   printf("year: %s%d", rand()%2 ? "19" :
             | "'", year);
             | 
             | Where the real problem is the upstream year value.
        
         | deepaksurti wrote:
         | >> This was immediately noticed ..., a fix was ... rolled out
         | in less than an hour.
         | 
         | I guess Agile/Scrum etc wasn't a thing then else the hour would
         | be spent in a stand up!!!
        
           | Psyladine wrote:
           | We'll just send an email out EOB that restates the MVP they
           | signed off on 18 months ago was reached per spec & additional
           | project budgeting would have to go through normal triage
           | management before committal.
        
       | __d wrote:
       | I worked at a regional bank. Like many banks, we offered
       | mortgages, so starting in 1970, the 30 year mortgages had a
       | maturity date in 2000, and our bank had begun the process of
       | adapting its systems from 2-digit to 4-digit dates.
       | 
       | Basically all of our software was written in COBOL, and most
       | COBOL data is processed using what we'd consider today to be
       | string-like formats. And to save space (a valuable commodity when
       | DASD (aka hard drives) cost hundreds of thousands of dollars, and
       | stored a few megabytes of data) two-digit dates were everywhere.
       | 
       | I started in 1991. The analysis had been done years before, and
       | we knew where most of the 2-digit problems were, so it was just a
       | matter of slowly and steadily evolving the system to use 4-digit
       | dates where possible, or to shift the epoch forward where that
       | made sense.
       | 
       | Every few months we'd deploy a new version of some sub-system
       | which had changed, migrate all the data over a weekend, and cross
       | off another box in the huge poster showing all the tasks to be
       | done.
       | 
       | External interfaces were the worst. Interbank transfers, ATM
       | network connections, ATM hardware itself, etc, etc. We mostly
       | tried to switch internal stuff first but leave the APIs as
       | 2-digit until the external party was ready to cut over. Similarly
       | between our internal systems: get both ready internally, migrate
       | all the data, and then finally flick the switch on both systems
       | to switch the interfaces to 4-digit.
       | 
       | Practically, it meant that we our development group (maybe 30
       | people?) was effectively half that size for 5 or 6 years in the
       | early 90's as the other half of the group did nothing but Y2K
       | preparation.
       | 
       | All of these upgrades had to be timed around external partners,
       | quarterly reporting (which took up a whole weekend, and sometimes
       | meant we couldn't open the branches until late on the Monday
       | after end-of-quarter), operating system updates, etc, etc. The
       | operations team had a pretty solid schedule booked out years in
       | advance.
       | 
       | We actually had two mainframes, in two data centers: one IBM 3090
       | and the other the equivalent Armdahl model. We'd use the hot
       | spare on a weekend to test things.
       | 
       | It was a very different world back then: no Internet, for a
       | start. Professional communication was done by magazines and
       | usergroup meetings. Everything moved a lot slower.
       | 
       | I left that job before Y2K but according to the people I knew
       | there, it went pretty well.
        
       | marcus_holmes wrote:
       | I worked for Hyder, the Welsh Water and Gas authority, on their
       | Y2K project, from March 1998 to November 1998.
       | 
       | Their billing and management system was written in COBOL, and
       | contained numerous Y2K bugs. If we did nothing, then the entire
       | billing system would have collapsed. That would mean Welsh people
       | either receiving no bills, or bills for >100 years of gas/water
       | supply, depending on the bug that got triggered. Very quickly
       | (within days) the system would have collapsed, and water/gas
       | would have stopped flowing to Welsh homes.
       | 
       | Each field that had a date in it had to be examined, and every
       | single piece of logic that referenced that field had to be
       | updated to deal with 4 digits instead of 2.
       | 
       | I wasn't dealing with the actual COBOL, I managed an Access-based
       | change management system that catalogued each field and each
       | reference that needed to be changed, and tracked whether it had
       | been changed or not, and whether the change had been tested and
       | deployed. This was vital, and used hourly by the 200+ devs who
       | were actually changing the code.
       | 
       | We finished making all the changes by about December 1998, at
       | which point it was just mopping up and I wasn't needed any more.
       | I bought a house with the money I made from that contract (well,
       | paid the deposit at least).
       | 
       | The cost was staggering. The lowest-paid COBOL devs were on
       | GBP100+ per hour. The highest-paid person I met was on GBP500 per
       | hour, enticed out of retirement. They were paid that much for
       | 6-month contracts, at least. Hyder paid multiple millions of
       | pounds in contract fees to fix Y2K, knowing that the entire
       | business would fail if they didn't.
       | 
       | Still less than the cost to rewrite all that COBOL. The original
       | project was justified by sacking hundreds of accounts clerks,
       | replaced by the COBOL system and hardware. By 1998 the hardware
       | was out of date, and the software was buggy, but the cost-benefit
       | of a rewrite made no sense at all. As far as I'm aware Hyder is
       | still running on that COBOL code.
        
       | generalpass wrote:
       | My recollection is that there could be real problems, but the
       | solutions were already planned and appropriate resources
       | allocated prior to media hype.
       | 
       | I recall being in Seattle on New Years Eve and there were cops
       | everywhere in full battle dress with armored personnel carriers
       | and nobody was out partying like it was 1999, which was a shame
       | because the weather was unusually mild.
        
       | bob33212 wrote:
       | No it was not a crisis. There were plenty of bugs in legacy
       | systems that needed to be fixed, but legacy systems have bugs all
       | the time, for example when the dates for daylight savings time
       | changed. The general public was not well informed and also
       | generally didn't have a software background to understand the
       | problem.
        
       | smoyer wrote:
       | I was involved in several of the efforts at the time including
       | building the communications systems for the "studio NOC" at AT&T
       | in NYC. I started hearing about vulnerable systems about 5 years
       | before 2000 and we were doing serious work on those systems about
       | 2 years before. I predicted (to friends and family who didn't
       | always care to believe me) that it would be a non-event because
       | disruptions would be localized in smaller systems (we were
       | expecting local banks and credit unions). Even I was blown away
       | by how few of those systems had problems. So know when people say
       | Y2K was no big they fail to recognize the work that went into to
       | ensuring it was a non-event.
       | 
       | There's a very current equivalent - if we're good about social
       | distancing, people may talk about COVID-19 the same way.
        
       | GoldenMonkey wrote:
       | No. It was not. I was a software developer in a large US Bank at
       | the time. We had already dealt with it years ago for critical
       | systems. All the banks had.
        
         | jcims wrote:
         | I was as well. Agree that the core systems were fine and
         | extremely thoroughly tested, but all of the supporting
         | applications/infrastructure were questionable. I had quit my
         | job a couple months prior to go into contracting. They were one
         | of my first customers, and the contract was contingent on me
         | remaining on full time until after the new year weekend. Win
         | win.
        
         | Fred27 wrote:
         | I had the same experience working in a large investment bank.
         | There were a lot of very expensive management consultants
         | involved who strung out everything for the sake of their hourly
         | rate. I wasted months proving to their satisfaction that my
         | recently written and robust code was OK.
        
         | flomo wrote:
         | Right, everyone was well aware. But I think there was a bit of
         | "We don't need to worry because we're replacing the mainframe
         | with the new ERP system in 1997", and then whoops the mainframe
         | was still running.
        
         | VLM wrote:
         | It was a VERY widely held belief by the general public that Y2K
         | only applied to real time clocks and wall time.
         | 
         | However arguably most dates in corporate IT work are involved
         | in some level of forecasting and prediction and future
         | planning.
         | 
         | In reality, starting in 1970 anyone writing an amortization
         | table program for a 30 year mortgage had to work around Y2K.
         | Anyone dealing in any way with the expiration date for a twenty
         | year term life insurance policy had to start caring about Y2K
         | in 1980. Even a mere net-30 business to business payment
         | account either broke or not in nov-1999. Even on Dec 31 1999 it
         | was hilariously charming how people all around the world
         | thought all computers were located in THEIR timezone and thus
         | any real time clock type failures would occur at precisely
         | midnight local time where they live as opposed to where the
         | computer is actually located. Due to the miracle of UTC time
         | anything bad would have happened to our stuff early in the day
         | while I was eating a late dinner, not when the operations
         | center overstaffed during local timezone 3rd shift.
         | 
         | I was working at a telco at the time and we were very worried
         | and overstaffed over Y2K, our stuff was fine, but we were
         | pretty worried about rioters and such if anyone ELSE failed,
         | like maybe the power co. Hilariously the power co people were
         | probably overstaffed over Y2K, despite knowing their stuff was
         | fine, they were likely worried about those telco goofballs
         | failing thus losing SCADA links to their substations, LOL.
         | 
         | In the end it seems pretty much nothing failed anywhere, as I
         | recall. Or the failure rate for that day, was no higher than
         | any other average calendar date.
        
         | jbay808 wrote:
         | Doesn't that fall into the "real but well handled" category
         | then?
         | 
         | The OP can only be asking about comparisons to a hypothetical
         | world where nobody dealt with it for critical systems.
        
       | unoti wrote:
       | I worked hard on y2k issues in 1998-1999. It was a real thing for
       | my company at the time. It was a crisis averted. In the 80's and
       | 90's I worked on many systems where the equivalent of "max date"
       | or "end of time" was expressed as 12/31/99. The way that these
       | systems expressed, stored, entered, and validated dates all had
       | to be reworked in a series of major overhauls.
        
       | davismwfl wrote:
       | From someone who went through it and dealt with code, it was a
       | real problem but I also think it was handled poorly publicly. The
       | issues were known for a long time, but the media hyped it into a
       | frenzy because a few higher profile companies and a lot of
       | government systems had not been updated. In fact, there were
       | still a number of government systems that were monkey patched
       | with date workarounds and not properly fixed well into the 2000's
       | (I don't know about now but it wouldn't shock me).
       | 
       | There was a decent influx of older devs using the media hype as a
       | way to get nice consulting dollars, nothing wrong with that, but
       | in the end the problem and associated fix was not really a major
       | technical hurdle, except for a few cases. It is also important to
       | understand a lot of systems were not in a SQL databases at the
       | time, many were in ISAM, Pic, dBase (ouch), dbm's (essentially
       | NoSql before NoSql hype) or custom db formats (like flat files
       | etc) that required entire databases to be rewritten, or migrated
       | to new solutions.
       | 
       | My 2 cents, it was a real situation that if ignored could have
       | been a major economic crisis, most companies were addressing it
       | in various ways in plenty of time but the media latched on to a
       | set of high profile companies/government systems that were
       | untouched and hyped it. If you knew any Cobol or could work a Vax
       | or IBM mainframe you could bank some decent money. I was mainly
       | doing new dev work but I did get involved in fixing a number of
       | older code bases, mainly on systems in non-popular languages or
       | on different hardware/OS because I have a knack for that and had
       | experience on most server/mainframe architectures you could name
       | at that time.
        
         | _red wrote:
         | >dbase
         | 
         | At the time I was managing a dBase / FoxPro medical software
         | package...we were a small staff who had to come up with Y2K
         | mitigation on our own.
         | 
         | Our problem is we only had source code for "our" part of the
         | chain...other data was being fed into the system from external
         | systems where we had no vendor support.
         | 
         | Thus our only conceivable plan was to do the old:
         | If $year<10;          date="20$year"       else
         | date="19$year"
         | 
         | It worked in 99.9% of the cases which was enough for us to limp
         | thru and just fix the bad cases by hand as they happened.
         | Eventually we migrated off the whole stack over the next few
         | years so stopped being a problem. I'm sure many mitigation
         | strategies did the same....
        
           | was8309 wrote:
           | and it was pretty embarrassing when I forgot to update this
           | same thing in 2010
        
             | dejv wrote:
             | Man, I've just remember that I had to fix this kind of bug
             | in 2010 and I am sure I just bumped the number to 20. I
             | guess somebody had to be fixing it lately, I just hope they
             | didn't just replace 2 with 3.
        
           | andyjpb wrote:
           | A much more insidious problem with the Y2K bug was the leap
           | year calculation. As you point out, the 20-digit-year thing
           | was relatively easy to fix.
           | 
           | https://en.wikipedia.org/wiki/Year_2000_problem#Leap_years
        
             | protomyth wrote:
             | I still love the fact that if you only implemented the
             | first rule or had the knowledge to implement all 3 rules,
             | it would totally work, but if you implemented 2 of the 3
             | rules you were wrong.
             | 
             | It taught me a great lesson about results not proving
             | correctness as how you got there could bite you later.
        
           | davismwfl wrote:
           | This is what I remember a lot of too. While they are little
           | hacks which are imperfect, they bought companies enough time
           | to resolve the issue more thoroughly.
        
           | choward wrote:
           | Wouldn't it be this?                   date="200$year"
           | 
           | Our does foxpro somehow know to zero pad a 1 digit number?
        
             | jaywalk wrote:
             | It's been a very long time since I've worked with
             | dBASE/FoxPro, but from what I remember it stores data in a
             | fixed-width format. So for a column to store an integer, it
             | will zero pad the front of it to fit the width of the
             | column.
        
         | dsfdsfsdfasd wrote:
         | I'd argue if it wasn't for the media "doom and gloom" a lot of
         | companies (maybe even the vast majority), would not have had
         | their C level folks divert money towards fixing the issue.
         | 
         | The simple reason is that any one company may have been liable
         | for a very small portion, which if it failed, would not have
         | caused much trouble. But that failure combined with many other
         | failures down the entire chain of connected and unconnected
         | software would have added up to something much greater than the
         | sum of parts.
         | 
         | We saw similar stuff happen with Flash, Silverlight (which
         | wasn't as reported a concern since silverlight usage was so
         | low, but I saw it within my company).
         | 
         | The media pressure was a significant reason why every company
         | needed to have a plan to deal with it.
        
         | wefarrell wrote:
         | It a shame that we as engineers can't just say "this
         | maintenance is required to fix this known issue. It's not a
         | huge deal but will cause trouble if it's not dealt with".
         | Instead we have to be all doom and gloom and tell management
         | that the company/world will end.
        
           | mgkimsal wrote:
           | Colleague was just dealing with a clients of their who was
           | still using TLS1.0. They're running classic ASP on Window
           | Server 2008, and can't (effectively) migrate. Colleague had
           | been raising the alarm for months (since they started on the
           | project) that "this is going to mean all your systems will
           | stop working in early 2020" but no one seemed to care or
           | understand.
           | 
           | They did, last week, put in ... haproxy as an SSL terminator
           | in front of the main server, and will test a switch over this
           | week. This was 8 months of foot-dragging for about 3 hours of
           | setup/config, and a couple more hours of testing. When all
           | your clients are hitting a web server, and their browsers
           | will all stop rejecting your certs, things will get ugly fast
           | - as in "your business will effectively stop functioning". It
           | just sounded like "doom and gloom" but... how do you message
           | this effectively? It requires the receiving parties to
           | actually understand the impact of what you're saying,
           | regardless of terms you use.
        
             | wefarrell wrote:
             | I hope your colleague had a paper trail of the alarms he
             | raised when it came time to point fingers.
             | 
             | For executives with limited IT experience I honestly don't
             | know if there is a good solution, other than having them
             | deal with the disaster and having a clear paper trail that
             | points the finger in their direction. They won't make the
             | same mistake twice.
        
               | mgkimsal wrote:
               | He did/does.
        
             | davengh wrote:
             | We've been forced to deal with the TLS issue by our
             | software product's customers. Some of our technically-
             | minded folks have been raising the issue for a while but
             | new features are sexy and sell, and fixing not-yet-broken
             | code doesn't. Amazing/discouraging that only the threat of
             | immediate loss of six figures of income gets any attention.
        
               | mgkimsal wrote:
               | Yeah... "let's do Fitbit integration!" seems to win out
               | over "let's make sure we can upgrade core systems to make
               | sure they don't break in March".
        
             | dillonmckay wrote:
             | Similar story, had an older version of MySQL on a 2008r2
             | server until a few weeks ago.
             | 
             | Advocating for 2 years to migrate off that box.
        
             | cogman10 wrote:
             | Money, Money is the way you talk that makes business
             | listen.
             | 
             | You say "If we don't solve this by X date, we are looking
             | at losing the ability to take in revenue and possible law
             | suits for failure to perform. It will take Y amount of time
             | to accomplish this"
             | 
             | If you don't couch things in terms of time, money,
             | resources, client impact. They will not care. You can say
             | "Hey, it is super bad that we are running Tomcat 7.0.0
             | there are a lot of security vulnerabilities" and what they
             | will hear is "blah, blah, blah, we can delay this".
        
             | vlan0 wrote:
             | That client wouldn't happen to be a small private college
             | in WNY, would it?
        
               | mgkimsal wrote:
               | No. :)
        
         | unilynx wrote:
         | > I don't know about now but it wouldn't shock me
         | 
         | We'll be up for a few Y2K bugs at the start of every decade
         | because 'year += year < n ? 2000 : 1900' was such an easy
         | workaround, for n=20,30,40,...
         | 
         | https://www.pymnts.com/news/payment-methods/2020/new-years-b...
        
           | LeifCarrotson wrote:
           | There's less cause to use small data sizes for timestamps and
           | date codes now. Storage has grown by orders of magnitude, the
           | idea that a numeric data type would only be large enough to
           | store a 2-digit year or that you would want to save disk
           | space by abbreviating an extra 2 letters is foreign to a lot
           | of new developers. And the 20-year-old systems are slowly
           | dissapearing...
        
             | mytherin wrote:
             | Perhaps you could expand on this as I was not involved in
             | Y2K myself. Storing dates with 2 digit years doesn't seem
             | to make much sense as a storage saving mechanism for me.
             | 
             | If you want to store only the year, why not store the years
             | since 1900? That way in a single byte you can go all the
             | way up until 2155. If you want to store it bit-aligned
             | rather than byte-aligned why limit yourself to 00-99? 7
             | bits can store the year from 1900-2027.
             | 
             | If you want to store day + month + year with a two digit
             | year you have 365.25*100=36525~ options. A two byte value
             | can store up until 65535 options, which can hold all days
             | until 2079.
             | 
             | If you are storing your dates as flat strings (DD-MM-YY or
             | so) then you are already wasting such a large amount of
             | bytes that "storage concerns" seem moot. You are already
             | using 8 bytes to store a date that can be stored in 2
             | bytes, at that point why not use 10 bytes?
             | 
             | String formatting and display seems more obviously affected
             | to me than storage.
        
               | unilynx wrote:
               | A whole byte for a year? What a waste in 1995 when you've
               | got just 640KB for DOS, your code and your data.
               | 
               | I looked up my old code. Shave off a bit of the year and:
               | struct Date {             unsigned day : 5;
               | unsigned month : 4;             unsigned year : 7;
               | };
               | 
               | a full date in 16 bits. (well, in borland C++ 5 at least)
               | 
               | and as it was an accounting application, working with the
               | bitfields was so much nicer than ordinal days you would
               | use nowadays.
               | 
               | month and years was all you really cared about anyway
               | when summarising data. in finance all months have 30 days
               | anyway.
        
               | mschaef wrote:
               | > If you want to store only the year, why not store the
               | years since 1900? That way in a single byte you can go
               | all the way up until 2155.
               | 
               | You're making an assumption in that statement that
               | there's a byte and it's eight bits in length. This was
               | not always true. Punch cards didn't really work that way,
               | and fair number of CPU's didn't either.
               | 
               | Early machines used various decimal systems and 6-bit
               | characters were widespread also. This explains a bit of
               | why the C language and descendants often have native
               | support for Octal literals and Unix permissions are built
               | around three bit groupings.
               | 
               | On a personal note, even in the very early 90's, I also
               | remember using a CDC machine (a descendant of Seymour
               | Cray's 6600) that supported 60-bit words with 6-bit
               | characters. Pressure to move to 64 bit words with 8-bit
               | bytes resulted in dual mode design that could be booted
               | either way.
        
               | mcswell wrote:
               | CDC...if it was like the CDC system I worked on back in
               | the early 80s, the 6-bit chars (64 distinct chars,
               | including control chars) did not include lower case
               | Latin. Our system was munged so that lower case
               | alphabetic chars could be represented by prefixing a
               | backslash. I wrote my dissertation on that system, and
               | fortunately the editor I used displayed a backslashed
               | char as lower case.
        
               | davengh wrote:
               | When 5MB disk storage system is the size of a small car
               | and costs $50k, you fight for bytes. Or if your data is
               | stored on magnetic tapes and reading in a dataset can be
               | costed by the kilobyte, takes minutes per megabyte, and
               | requires a million dollar's worth of equipment and
               | dedicated staff, you fight for every byte.
               | 
               | The phone I carry today is hundreds or thousands of times
               | more powerful than the $5,000,000 mainframe I was working
               | around Y2K and the apps on it - most delivered freely -
               | make it far more capable than the raw processing power
               | difference would indicate.
        
               | mytherin wrote:
               | If you are fighting for bytes then storing dates as "DD-
               | MM-YY" strings is very inefficient, as you are wasting a
               | factor 4X on storage compared to just storing the days
               | since 1900 as a 2-byte integer. I understand that storage
               | used to be expensive, but I don't understand where the
               | two-digit year comes into play as I can't envision an
               | _efficient_ storage mechanism that is limited to exactly
               | the years 1900-1999.
        
               | fhars wrote:
               | If you have eight bit bytes, you would of course store
               | these as three two digit BCD numbers requiring one byte
               | each, and need no conversion logic. (The code for
               | printing BCD numbers is already there, because you need
               | it to print amounts of money anyway).
        
               | ColinWright wrote:
               | You need also to have the code to do the conversion. If
               | you store, in a byte, the years since 1900 (or 1970) then
               | every time you load and/or process a date to be displayed
               | you need to add 1900 (or 1970) and then convert from
               | _int_ to _str_ which takes time (machines were slow) and
               | code.
               | 
               | And the code takes space.
               | 
               | You may think the space is trivial, but I remember
               | working for nearly two weeks on a commercial system to
               | save around 15 bytes on a system, and it was worth it.
               | 
               | Then the culture was embedded ... you worked to save
               | bytes, and didn't do things that would cost more bytes.
               | And the systems worked, and didn't need updated, so they
               | persisted.
        
               | dezgeg wrote:
               | BCD (Binary-coded decimal) comes to mind; which can store
               | values 0-99 in one byte and with native support in older
               | CPUs.
        
               | davengh wrote:
               | One of my tasks for Y2K prep was to modify an in-house-
               | developed record-based "database" to accommodate a the
               | century change. Originally developed in the '60s the year
               | had originally been a single digit because everyone
               | thought commercial DBMS' would be viable in few years so
               | there would be a replacement before the _decade_ rolled
               | over. :-| They 'd grafted decade handling into the thing
               | before I got there so it could survive the '70s because
               | they had a lot of expensive data in various file sets
               | that contained the data. Converting to a commercial
               | database was expensive and represented a huge business
               | risk, so...
        
               | zwp wrote:
               | This is a good question. I found a copy of Fujitsu COBOL
               | 85 manual [1] (the next release was post y2k, in 2002)
               | and was surprised to see that CURRENT-DATE, INTEGER-OF-
               | DATE use 4-digit years.
               | 
               | However some functions from that time (eg ACCEPT, p. 544)
               | do use 2-digit years. I think you have it exactly right,
               | it was about facilitating string formatting/display:
               | ACCEPT took input from the terminal screen. (I think it
               | is, approximately, gets() + strptime(), though I don't
               | see any talk of error handling). Programmers probably
               | just stuffed the result into a record before writing to
               | DASD (disk), optimizing for programmer time and program
               | complexity over storage.
               | 
               | Perhaps 2-digit years for ACCEPT were an optimization for
               | data entry workers?
               | 
               | A modern z/OS COBOL guide [2] has 4-digit years
               | throughout as far as I can see.
               | 
               | Whilst I'm here, I'm also going to say: "VSAM", "PDS",
               | TSO", "LRECL" and "ABEND" (just because I haven't heard
               | those words for a quarter century and now I'm feeling
               | nostalgic).
               | 
               | [1] http://testa.roberta.free.fr/My%20Books/Mainframe/Fuj
               | itsu%20...
               | 
               | [2] https://www.ibm.com/support/knowledgecenter/SS6SG3_4.
               | 2.0/com...
        
               | JackFr wrote:
               | What about "JCL" ? Those ABENDs don't just show up on
               | their own.
        
               | krallja wrote:
               | > why not store the years since 1900
               | 
               | Most input systems were punch cards, which were designed
               | to be fixed-length textual input directly from a user at
               | a card punch machine. Teaching users how to map from
               | "years since 1900" to the correct keys on the card punch
               | is a lot more confusing and error prone than having the
               | computer automatically convert from "71" to 1971.
        
               | mytherin wrote:
               | That makes a lot more sense, but if it is just input then
               | why not do the conversion of the string "71" to the
               | efficient byte representation of 1971 when it is moved
               | into the storage. If the computer can do a mapping of
               | "71" -> 1971 then why can't it also do a mapping of
               | "10-10-71" -> 26214 (days since 1900-01-01).
        
               | krallja wrote:
               | The punched card, for a long time, _was_ the storage.
        
               | fhars wrote:
               | Then you would need another column on the card, and there
               | are even fewer columns on a card than there are bytes in
               | RAM.
        
             | davengh wrote:
             | >> And the 20-year-old systems are slowly dissapearing
             | There's still COBOL code out there running core business
             | systems that's older than I am, and I'm closer to 60 than I
             | am to 50.
        
             | bluGill wrote:
             | More importantly we have figured out algorithms for time
             | that account for timezone, daylight savings time, different
             | calendar systems, and probably something else I'm not aware
             | of. These all work by counting seconds since a fixed date.
             | 
             | Note that the algorithms were known since at least the late
             | 1960s. Storage space even then shouldn't have been enough
             | of a concern. However people still screw it up all the
             | time.
        
               | fanf2 wrote:
               | Seconds since the epoch doesn't work for times in the
               | future. Consider a contract that will terminate at
               | 2025-02-28 12:00 in New York: will that be -05:00 or
               | -04:00? It could change.
        
               | LeifCarrotson wrote:
               | And in that vein, no one (sane) is writing their own date
               | libraries anymore, there's no reason to try to customize
               | that for your application.
        
               | davismwfl wrote:
               | This is the accurate point. We had epoch date tracking
               | since the 1960s or so and the coding of a two digit year
               | was out of laziness and convenience in most cases. And
               | not bashing anyone, but most of the systems I saw using
               | the lazy method were more business systems where there
               | wasn't thoughtful engineering a lot of the time, but more
               | just get it done. Those two don't have to be mutually
               | exclusive IMO, but in the 70s/80's it seems a lot of the
               | time it was, simply because IMO we had predominately
               | really two classes of developers, scientific and business
               | where business devs took less of an engineering mindset
               | and more get it done in a specific timeframe so they
               | "hacked" it out. Plus it was new, so stuff happens.
               | 
               | Sadly this stuff still goes on today, just in slightly
               | different ways. Data type and data structure choices are
               | critical, and it isn't as important to me that someone
               | know how to write an algorithm for a RB-tree (or pick
               | your DS), but it is critical an engineer knows which data
               | structure/type to choose for specific use cases. This is
               | one of my biggest complaints with the way a lot of
               | engineering interviews are structured today, they want
               | you to regurgitate known algorithms which is a waste of
               | time and personal memory, find out if the person knows
               | when they'd use a specific data structure and why the
               | rest is easily researched. I mention this because to me
               | the fundamental flaw of the y2k problem was one of data
               | structure and data type choice.
        
           | sharpy wrote:
           | One system I worked on showed the date as year 3900, because
           | the function for getting current year would return 2 digit
           | for year < 2000, and full 4 digit for >= 2000. So the code
           | did 1900 + GetYear(). Replaced it with just calling
           | GetFullYear() or something like that.
        
           | mark-r wrote:
           | There was a related story here on HN recently. A system was
           | assuming a 101-year-old was actually only 1 year old,
           | presumably because of 2 digit arithmetic.
           | 
           | https://news.ycombinator.com/item?id=22356373
        
             | dehrmann wrote:
             | They were a modulo 100 1-year-old. Modulo 100 ages:
             | feature, not a bug.
        
       | Fnoord wrote:
       | As a home user, I had software on my old computer (80286 XT from
       | end of 80s) which ended up saying we were in the year 00. Don't
       | remember if time/date was otherwise correct.
       | 
       | I do realize it could've been a lot worse if it were not thanks
       | to the many efforts of people in the tech industry.
       | 
       | And in case you wonder: I would bet the same is going to happen
       | with regards to 32-bit and 2038.
        
         | mcswell wrote:
         | Did you go talk to Mary and Joseph and tell them what was going
         | to happen?
        
       | GekkePrutser wrote:
       | It's like the Ozone layer and acid rain.
       | 
       | Climate sceptics often use these as an excuse. "Yes but there was
       | sooo much hubbub about those and it proved to be nothing".
       | 
       | Well, yes it is nothing now because it was decisively and
       | effectively handled. The ozone layer is still recovering but on a
       | steady path there, and acid rain is reduced to the point of not
       | really being an issue anymore (at least in the western world!).
       | 
       | Stuff really would have gone wrong with Y2K. Maybe not armageddon
       | but yes. There was a problem.
        
       | jerf wrote:
       | I've also found myself musing on a similar question, but one
       | where you may have a different temporal perspective at this
       | particular moment: In six months, are we going to collectively
       | believe that the Coronavirus was nothing and we massively
       | overreacted to it? Because if we do react strongly, and it does
       | largely contain the virus, that will also be "proof" (quote-
       | unquote) that it wasn't anything we needed to be so proactive
       | about in the first place.
       | 
       | Unsurprisingly, humans are not good at accounting for black swan
       | events, and even less so for averted ones.
        
         | idlewords wrote:
         | Neither the current pandemic nor Y2K really fit the definition
         | of a black swan event, since they were completely predictable
         | (and predicted).
        
           | jerf wrote:
           | In my opinion (emphasis opinion), "black swan" includes the
           | concept of _timing_... that a pandemic would occur is
           | inevitable, but you have no idea on the timing. Market
           | crashes are inevitable, but you have no idea on the timing.
           | Volcanic eruptions are inevitable, but you have no idea on
           | the timing. etc.
           | 
           | Things that are inevitable only when you encompass time spans
           | longer than a human life (it has been approximately _one and
           | a half_ average human lifespans since the previous pandemic)
           | may be predictable at that large aggregate scale, but on
           | _useful_ scales they are not. Or, to put it another way, if
           | you 've been shorting the market since 1918 for the next
           | pandemic crash, you went bankrupt a long time ago.
           | 
           | Y2K is only a black swan for those not in the industry, since
           | that one is obviously intrinsically timing based. The UNIX
           | timestamp equivalent is also equally predictable to you and
           | I, but to the rest of the world will seem even more arbitrary
           | if it's still a problem by then. (At least Y2K was visibly
           | obviously special on the normal human calendar.) But I
           | wouldn't claim the term for that; call it a bit of sloppiness
           | in my writing.
        
         | Seenso wrote:
         | > Because if we do react strongly, and it does largely contain
         | the virus, that will also be "proof" (quote-unquote) that it
         | wasn't anything we needed to be so proactive about in the first
         | place.
         | 
         | Even if every other country has Y2K levels of success
         | containing the Coronavirus, we can still point skeptics at the
         | example of places like Italy to prove it was a real threat.
        
       | jarkkom wrote:
       | It was very much real, lots of effort was spent to make sure
       | everything worked correctly, especially around older billing
       | systems which used only 2-digit years in fixed width records.
       | 
       | Because of all the preparation and upgrades being done, I think
       | only incident we had when Y2k migration manager sent out "all
       | clear"-email after rollover - Unix mail client he used formatted
       | date on email as "01/01/19100" - though I suspect he knew of the
       | issue and didn't upgrade on purpose just to make a point.
        
         | dhosek wrote:
         | Ah, bad Perl code, outputting a four digit year by doing "19" .
         | $year instead of 1900 + $year. I fixed a lot of those in 1999.
        
       | kitteh wrote:
       | There were parts of our telecom infrastructure that weren't ready
       | but got fixed before y2k. A certain mobile phone switching vendor
       | (think cell towers, etc.) ran tests a year before to see what
       | happened when it rolled over and the whole mobile network shut
       | down (got in a wedged state where calls would fail, no new calls,
       | signalling died). They fixed it and got customers upgraded in
       | time.
        
         | TedDoesntTalk wrote:
         | I dont think I even had a mobile phone in 1999. Probably not a
         | critical system back then.
        
           | fanf2 wrote:
           | There were a lot of 2G pager systems used for emergency
           | alerts
        
       | billpg wrote:
       | Watch it happen...
       | 
       | https://twitter.com/basiccomic/status/1099332074983641094
        
       | cronix wrote:
       | It was real, and we get to deal with it again in 18 years.
       | Without a great deal of thought, I'm wondering why we didn't
       | address both at the same time.
       | 
       | https://en.wikipedia.org/wiki/Year_2038_problem
        
       | ArnoVW wrote:
       | Imagine that 1% of all software had an issue, across all of the
       | economic tissue of the developed world. Now imagine that this
       | software would start failing, all on January 1st 2000, everywhere
       | around the world. Or better still, not failing, just silently
       | corrupting data.
       | 
       | Just like the crisis we are currently facing in our health
       | systems, it seems unlikely that we would have had enough IT
       | resources to deal with the issues in real-time.
       | 
       | This is one of the cases of a "self-denying-prophecy", much like
       | acid rain. There was an issue, we collectively dealt with it
       | (better yet, we actually anticipated!), and now people are saying
       | that in the end there was no issue.
       | 
       | https://www.bbc.com/future/article/20190823-can-lessons-from...
        
       | andrewfromx wrote:
       | And the people that did all the coding? India! Y2K bug put using
       | remote programmers in India on the map as something that works.
       | And Y2K was perfect for this since the logic changes in 1000s of
       | files was all the same. Very easy bug to fix, but just needed
       | humans who can understand code to do it.
        
       | zzo38computer wrote:
       | Many things worked fine despite that (some software/hardware was
       | already Y2K compliant even in the eighties); many people thought
       | many more things would be problems, even stuff that does not deal
       | with the date at all, but of course that doesn't make sense. Some
       | things did cause minor problems, mainly display errors with the
       | date (sometimes causing columns to not line up properly, but
       | sometimes less severe than that). Some things would cause more
       | problems, but perhaps they were already fixed, or fixed soon
       | afterward; I don't know much about it.
        
       | dhosek wrote:
       | I was working at a telecommunications startup in 1999. They were
       | founded in 1997. A big part of what I was doing was fixing Y2K
       | bugs.
       | 
       | That said, none of the bugs would have been critical to the
       | operations of the services. Everything was in the billing systems
       | and I think if unfixed it would have been more of a reputation
       | hit than anything.
       | 
       | Also, "begs the question" doesn't mean what you think it means.
       | https://en.wikipedia.org/wiki/Begging_the_question
        
         | mark-r wrote:
         | I only noticed one manifestation of the Y2K bug myself. I had a
         | credit card receipt that had a date of 1/2/100. Definitely not
         | critical.
        
           | reaperducer wrote:
           | _Definitely not critical._
           | 
           | To you. But to the store that didn't get any money for
           | thousands of sales and potentially went out of business,
           | definitely critical.
        
         | msla wrote:
         | "Begging the question" comes from a centuries-old
         | mistranslation which somehow became a shibboleth. I could
         | probably come up with a dumber way for a phrase to become fixed
         | as "proper usage" but it would take me a while.
        
         | [deleted]
        
         | [deleted]
        
         | rriepe wrote:
         | Personally, I've given up on begging the question. It just
         | means "raises" now. The descriptivists always win in the end.
        
           | chungus_khan wrote:
           | The descriptivists don't even win, they just accept reality.
           | Language is not constructed by individual humans or small
           | groups, but socially over entire societies. Fighting this
           | makes prescriptivists look like grumpy armchair academics and
           | still doesn't stop me from saying "le weekend".
        
           | JdeBP wrote:
           | Look at it another way: a centuries-old mistranslation is
           | finally being fixed. (-:
        
             | nitrogen wrote:
             | Do we have a replacement phrase?
        
               | cygx wrote:
               | Some possibilities: Circular reasoning, assuming the
               | conclusion, petitio principii.
        
         | Wowfunhappy wrote:
         | From the second paragraph of the Wikipedia article you linked:
         | 
         | > In modern vernacular usage, however, begging the question is
         | often used to mean "raising the question" or "suggesting the
         | question".
        
         | TomMckenny wrote:
         | Don't even get me started on "epicenter"
        
           | JdeBP wrote:
           | You should stop reading this discussion here, for your own
           | peace of mind. Because there's someone writing quotation
           | marks and then immediately writing "quote-unquote" only a few
           | bullet points ahead. (-:
        
           | vidanay wrote:
           | That's the word for when a WWE star enters the stadium with
           | loud music and fireworks, right?
        
       | PappaPatat wrote:
       | Very anecdotal, but here is my take:
       | 
       | For the place I worked at (large international company) it was a
       | G*d send opportunity. All the slack that had been build up in the
       | past by "cost reducing" management suddenly had a billable cost
       | position that nobody questioned.
       | 
       | Of course there where some actual Y2K issue solved in code and
       | calculations, but by large the significant part of the budget was
       | spend on new shiny stuff, to get changes approved and compensate
       | workers for bonuses missed in the previous years.
       | 
       | We had a blast doing it, and the biggest let down while following
       | the year roll over from the dateline and seeing nothing like the
       | expected and predicted rolling blackouts.
        
       | jedberg wrote:
       | It was like most other big IT problems that are properly
       | anticipated -- a ton of work went into making sure it wasn't a
       | problem, so everyone assumes there was nothing to worry about and
       | all the IT people were lazy and dramatic.
       | 
       | But that couldn't be more wrong.
        
       | Wiretrip wrote:
       | Yes it was real. My fav phrase to describe the work was 'KY2K
       | Jelly - helps you insert 4 digits where only 2 would go before'
       | :-)
        
       | [deleted]
        
       | pintxo wrote:
       | This might capture how some people envisioned it:
       | https://youtu.be/WhF7dQl4Ico /s
        
       | eb0la wrote:
       | I had some SGI IRIX machines impacted by the Y2K bug: if you ran
       | an unpatched OS, nobody could login after Jan 1, 2000 0:0:0Z.
       | 
       | One of them, was running calculations 24/7 for a research group
       | at the university and _fortunately_ they were able to stop the
       | jobs in time for an OS upgrade.
        
       | strickinato wrote:
       | There's an amazing podcast that does a deep dive here:
       | 
       | https://open.spotify.com/show/1VgCMwF8Pp4WRjchwVwApz
        
       | gentle wrote:
       | Yes, it was a real potential crisis, and it was only ameliorated
       | because lots of companies spent tons of money testing and
       | reviewing their systems, and fixing bugs that they found.
       | 
       | Airplanes were probably never going to fall out of the sky at the
       | stroke of midnight, but I personally fixed tons of bugs that had
       | potential impacts in the dozens of millions of dollars.
        
         | gentle wrote:
         | And, like others have pointed out, teams started working on
         | fixes well in advance of the changeover (~4-5 years with the
         | systems that I was familiar with), but even with the extra
         | money and the extra time, there were systems that were not
         | remediated until shortly before the changeover.
        
       | phonebucket wrote:
       | Computerphile did a video on it which I enjoyed:
       | https://www.youtube.com/watch?v=BGrKKrsIpQw
        
       | rhacker wrote:
       | Even if not - it was a pretty great payout event for older devs
       | that are pretty much in their 70s now.
        
       | franze wrote:
       | In 1999 to 2000 I was working as a freelancer At a state agency.
       | From the change from 99 to 00 I got paid 3 times a few days
       | apart, always the same amount. Later turned out that the
       | indicator that a person was paid was not working thx to y2k. So
       | somebody clicked on payout a few times. They fixed it for the
       | employees before but not for the freelancers. I gave back the
       | money, which was difficult on its own as there was no process for
       | it.
        
       | protomyth wrote:
       | Yes, it was a real crisis. This revisionist history that some are
       | now saying it was no big deal. It was a big deal and many people
       | spent many hours in the 90's assuring that the financial side of
       | every business continued. I am starting to get a bit offended at
       | the discounting of the effort put in by developers around the
       | world. Just because the news didn't understand the actual nature
       | of the crisis (Y2K = primarily financial problems) is no excuse
       | to crap on the hard work of others. It is sad that people that
       | got the job done by working years on it get no credit because
       | they actually got the job done.
       | 
       | I see this as a big problem because Y2038 is on the horizon and
       | this "not a big deal" attitude is going to bite us hard. Y2K was
       | pretty much a financial server issue[1], but Y2038 is in your
       | walls. Its control systems for machinery that are going to be the
       | pain point and that is going to be much, much worse. The analysis
       | is going to be a painful and require digging through
       | documentation that might not be familiar (building plans).
       | 
       | 1) yes there were other important things, but the majority of
       | work was because of financials.
        
         | plughs wrote:
         | Y2038 will be interesting because one wonders how many
         | engineers will be around with the skills to address it. Even
         | now it might be hard to scrape together a team.
        
           | protomyth wrote:
           | I wonder how many systems still being sold today have 32-bit
           | time stamps? I get the feeling you are dead on right about
           | the skill problems, but I do wonder how many folks are only
           | consumers and not originating any of the programming?
        
         | theremightbe wrote:
         | It was also a big problem for Medical records as well right? I
         | recall hearing that there was a lot of work around making sure
         | that immunization records and things like that were accurately
         | converted.
        
           | protomyth wrote:
           | Yeah. I seem to remember some MUMPS people talking about
           | stuff they were having to do. I programmed Perl at the time,
           | and MUMPS made no sense to me (it looked like line noise),
           | but they loved it.
        
         | joshstrange wrote:
         | This is always such an annoying problem:
         | 
         | 1. Shine light on problem and make sure people hear about it
         | 
         | 2. People respond and fix it
         | 
         | 3. Outcome not as bad as you said it could be /because it was
         | fixed/
         | 
         | 4. Some time later "That wasn't a big deal"
         | 
         | No, it wasn't that big of a deal because we worked hard to fix
         | it!
        
           | umanwizard wrote:
           | Mark my words, if the containment measures work and Covid-19
           | goes away, this is exactly what people will be saying. Drives
           | me crazy.
        
             | joshstrange wrote:
             | To be honest I'd choose that timeline in a heartbeat over
             | what I think we are barrelling to... But yes, it will drive
             | me crazy if that happens.
        
           | mcswell wrote:
           | I have a vivid recollection of reading a Scientific American
           | article in late '98 or early '99 that claimed that no matter
           | how much time and $ was put into fixing Y2K before 1 Jan
           | 2000, there was going to be a disaster; it was just a
           | question of having a bigger or smaller disaster, but even
           | with best effort months. I have recently looked for that
           | article, without success. Does anyone recall it/ have a PDF
           | (image) of it?
        
             | protomyth wrote:
             | Might be the October 1998 article "Y2K: The End of the
             | World as We Know It", but its behind a paywall and I don't
             | subscribe.
        
         | StaticRedux wrote:
         | This is more prolific in software than just Y2K. At a company I
         | work with, if everything is going smoothly and things are
         | working, devs get a ton of crap for not getting more done, no
         | matter the pace and productivity. Of course they get crap when
         | things aren't working also.
         | 
         | When people don't understand something, they can't tell the
         | difference between a lot of effort to make something work
         | smoothly and "it's clearly not that big of a deal"
        
       | saberworks wrote:
       | I was enlisted in the USAF and was assigned as part of a two-
       | person group to deal with Y2K issue for all unclassified systems
       | on the base. We were outside the normal AF procedures because the
       | base didn't have wartime mission. The two people assigned to the
       | group were myself (E-3 or E-4 at the time) and a very junior (but
       | smart) lieutenant.
       | 
       | We basically inventoried every unclassified computer system on
       | the base. If it was commercial, off-the-shelf software that could
       | be replaced we recommended they replace it. If it could not be
       | replaced with newer version (because it ran software that could
       | not or would not be replaced) we replicated and tested it by
       | changing the computer hw clock. In all cases we recommended
       | shutting down the computer so it wasn't on during the changeover.
       | 
       | Most home-grown systems were replaced with commercial software.
       | 
       | One interesting case was a really old system, I think it had
       | something to do with air traffic control. It was written by a guy
       | who was still employed there and he was still working on it. I
       | got to interview him a bunch of times and found the whole
       | situation fascinating and a little depressing. Yes, he was
       | storing a 2-digit year. He didn't know what would happen when it
       | flipped. He didn't feel like there was a way to run it somewhere
       | else and see what would happen (it's very difficult to remember
       | but I think it was running on a mainframe in the comm squadron
       | building).
       | 
       | The people in charge decided to replace it with commercial
       | software. Maybe the guy was forced to retire?
       | 
       | Overall the base didn't have any issues but only because they
       | formed the "y2k program management group" far enough ahead of
       | time that we were able to inventory and replace most everything
       | before anything could happen.
        
       | JJMcJ wrote:
       | I know of at least one company that had to replace some computers
       | with out-of-support OS that was not Y2K compliant.
       | 
       | Big companies (banks, insurance, health care) had elaborate
       | contingency plans.
       | 
       | There were some failures, but nothing to disrupt life for 99.9%
       | of the population, unless you call a website that says it's
       | January 5, 19100
       | 
       | a failure.
       | 
       | There have been other problems. Day 10,000, but VAX and Unix
       | systems, some programs had problems, once again mostly cause they
       | didn't allow for the longer strings.
        
       | 0xff00ffee wrote:
       | I know this is redundant, but I have to add to the signal:
       | 
       | YES. It was real.
       | 
       | I was finishing an engineering degree (CSE) in 1992 and several
       | of my peers took consulting jobs to work on Y2K issues. For
       | nearly a decade a huge amount of work was done to review and
       | repair code.
       | 
       | Y2K is the butt of many jokes, but the truth is: it didn't happen
       | because the work was done to fix it. Sort of ironic.
        
       | Sparkware wrote:
       | I worked for Columbia/HCA, now HealthCare of America, at the time
       | and we started gearing up for Y2K in January, 1997.
       | 
       | Every system, every piece of hardware - both in the data centers
       | and in the hospitals - had to be certified Y2K compliant in
       | enough time to correct the issue. As I recall, we were trying to
       | target being Y2K ready on January 1, 1999 but that date slipped.
       | 
       | A "Mission Control" was created at the Data Center and it was
       | going to be activated on December 15, 1999, running 24 hours a
       | day until all issues were resolved. Every IT staff member was
       | going to rotate through Mission Control and every staffer was
       | going to have to serve some third shifts too.
       | 
       | I left Columbia/HCA in June, 1999 after they wanted to move me
       | into COBOL. I had no desire to do so and I took a programming
       | position with the Tennessee Department of Transportation.
       | 
       | I remember my first day on the job when I asked my boss what our
       | Y2K policy was. He shrugged and said "If it breaks, we'll fix it
       | when we get back from New Year's".
       | 
       | What a difference!!!
        
         | aaron_m04 wrote:
         | > I remember my first day on the job when I asked my boss what
         | our Y2K policy was. He shrugged and said "If it breaks, we'll
         | fix it when we get back from New Year's".
         | 
         | I'm a little surprised. TDT is in a critical business too
         | (transportation).
        
       | y-c-o-m-b wrote:
       | Like others have said, it was real and handled well. They knew
       | about it for years before so there was time to fix the issue.
       | 
       | The panic was also very real despite not being proportional to
       | the actual problem, but just like any other media-induced
       | widespread panic, it served as a means to make lots of profit for
       | those in a position to do so. Media companies squeezed every last
       | drop of that panic for ratings... well into the year 2000 when
       | they started spreading the story that Y2K was the tip of the
       | iceberg, and the "real" Y2K won't actually start until January 1,
       | 2001.
       | 
       | As an immigrant to the US, I got to see the weird side of
       | American culture in how people tend to romanticize (for lack of a
       | better word) post-apocalyptic America. Kind of like the doomsday
       | hoarders of today are doing. It's like they think a starring role
       | on the Walking Dead is waiting for them, except in real life.
        
       | nsxwolf wrote:
       | Just imagine if no one had ever lifted a finger to fix any of the
       | bugs. We only talk about it being a scam because everyone
       | collectively did such a great job mitigating it in time.
        
         | kangnkodos wrote:
         | Yes. It's like if you're on a ship and you see an iceberg in
         | the distance. If you shout iceberg, and change the direction
         | just a little, no crisis. Without that small change, big
         | problem.
         | 
         | People were talking about Y2K years ahead of time. Lots of
         | changes to code were made. A few little bugs slipped through,
         | but not many, and everyone knew how to fix them. No crisis.
         | Without the many code changes, big problem.
        
         | simias wrote:
         | This is a tricky situation indeed, and I suspect that many
         | governments face the same conundrum right now with the
         | pandemic. If you take the right measures early on and
         | everything goes well many people in the opposition will say
         | that you just did it for the media circus in order to get
         | attention, wasting people's time and tax money. If you don't
         | take action and things get out of hand then you're blamed for
         | not taking action earlier. Damned if you do, damned if you
         | don't.
         | 
         | In the end you end up in this perverse situation where you have
         | to wait long enough for the public to understand what's at
         | stake but not long enough that you won't be able to keep things
         | under control. Quite the tightrope trick.
        
         | arethuza wrote:
         | There is a certain class of work in the IT/software world that
         | is utterly thankless - nothing goes wrong and people wonder
         | what they pay you for, something goes wrong and the very same
         | questions get asked.
        
           | protomyth wrote:
           | All of your successes will occur in the dark of night and all
           | of your failures will occur in the bright light of day.
           | 
           | Welcome to most enterprise IT shops.
        
           | Psyladine wrote:
           | It's not IT/software, it's in every field, it's called
           | shitwork, that you don't get credit for, but catch hell if it
           | isn't.
           | 
           | e.g. "what do we pay all these janitors for when this place
           | looks spotless?"
        
             | StaticRedux wrote:
             | I don't think that's true. I've never heard that about any
             | other industry. Certainly not about janitorial work.
             | Doctors curing a patient, lawyers winning a big case,
             | secretaries keeping the schedule up to date, teachers with
             | kids who pass their tests, truck drivers who deliver on
             | time. all of that is plainly visible. IT is a field in
             | which few people see the results or understand the effort
             | required.
        
       | codezero wrote:
       | I worked New Years 1999 when I was at Red Hat.
       | 
       | Leading up to the change over there was a lot of work to make
       | sure all the systems would be OK, and that underlying software
       | would also be OK, but keep in mind, auto-update on the Internet
       | wasn't super common.
       | 
       | I ended up getting one call from a customer that night where they
       | had a valid Y2K bug in their software, and since it wasn't in Red
       | Hat's system, they moved along to their next support person to
       | call :)
       | 
       | It was a thing, but much less of a thing because of the work put
       | into getting ahead of it.
        
       | hprotagonist wrote:
       | Perhaps the definition of a successfully managed crisis is that
       | exactly this question is asked after it was managed.
        
       | acdha wrote:
       | Yes. I worked for a COBOL vendor at the time and we had customers
       | and colleagues tell us how many things would not have functioned
       | without the time spent remediating it -- not planes falling from
       | the sky but, for example, someone at a household-name credit card
       | company saying they wouldn't have been able to process
       | transactions.
       | 
       | This was victim of its own success: since the work was largely
       | completed in time nobody had the huge counter-example of a
       | disaster to justify the cost. I'm reminded of the ozone hole /
       | CFC scare in the 1980s where a problem was identified, large-
       | scale action happened, and there's been a persistent contingent
       | of grumblers saying it wasn't necessary ever since because the
       | problem didn't get worse.
        
       | tachoknight wrote:
       | I worked at a bank at the time and can say that we started
       | working on it back in 1996, and all the systems were in place and
       | tested by early 1999 so we had no issues. It was _absolutely_ a
       | crisis; back in 1995 one of the mainframe programmers did an
       | analysis on her own and determined that, not only was it a
       | problem, but that the system would be hopelessly corrupted if it
       | wasn 't fixed. They spent, if not seven figures, at least high-
       | six figures to get everything ready. One thing that was drilled
       | in from management was that no one was to talk about it because
       | it might be perceived that "real" work wasn't getting done. :\
        
       | senthil_rajasek wrote:
       | Yes it was. I worked on fixing y2k bugs in telecom systems.
       | 
       | (Shameless plug, here is my humorous take on it)
       | 
       | https://youtu.be/tbUg8-RdwXE
        
       | nerfhammer wrote:
       | there were some public digital clocks in my university that
       | displayed "1900" afterward and so they turned them off and never
       | fixed them or turned them again. that was the only effect of Y2K
       | that I ever saw.
       | 
       | I could see why people would be worried that banking software
       | written in COBOL in 1983 would break and had to spend significant
       | sums of money making sure it didn't. Since it was an extremely
       | predictable problem with a specific, known, non-negotiable
       | deadline everyone who had money to lose if there were a problem
       | had plenty of time and incentive to prevent it.
        
       | msla wrote:
       | If you're driving down the road, see an overturned cart in your
       | path, and safely avoid it, was the cart a danger to you? Nothing
       | bad happened, so was the cart a hoax? The Y2K problem was, for a
       | number of organizations, precisely such a cart, and it was
       | successfully avoided to the extent nothing seriously bad happened
       | as a result of the bug (really, an engineering trade-off which
       | lived too long in the wild) so we can either count it as a
       | victory of foresight and disaster aversion, or we can say it was
       | all a hoax and there was never anything to it. Guess which
       | conclusion will best let us avoid the next potential disaster.
        
       | rossdavidh wrote:
       | 1) certainly, there were real Y2K issues that had to get fixed 2)
       | however, what IT workers in general don't realize, is how many of
       | their systems are broken all the time, in ways that people just
       | learn to live with or work around; this is not all of them, but
       | it does include more than IT folks realize 3) I worked as an
       | engineer in the semiconductor industry at the time, and "it's not
       | Y2K compliant, and cannot be upgraded" was a way to get obsolete
       | equipment replaced, in a way that bypassed normal budget
       | controls. Engineers, salesmen, and managers all engaged in a sort
       | of unspoken conspiracy to get the new equipment purchased.
       | However, this doesn't mean it wasn't a good thing that it
       | happened. Which makes one wonder whether a certain amount of
       | brokenness in accounting and software controls is not necessary
       | for the economy to function 4) countries like Japan, Russia, etc.
       | spent a tiny fraction of the effort in Y2K preparation, and they
       | sailed through. This was in part because of U.S. overhyping it,
       | but also because we were using interconnected computer systems
       | more than other countries were at that time.
       | 
       | So, it's a mix. It was real, it was well-handled, but there was
       | also some hype, and even some hype that served a real (covert)
       | good purpose.
        
       | thaumaturgy wrote:
       | I was a programmer for a large school district in the bay area
       | from 1996 to 1999. What a great way to cut my teeth
       | professionally!
       | 
       | Yeah, it was a big deal. Pretty much all dev work was done by me
       | and one other guy. How much dev work could a school district have
       | back then? Oh, lots. Every school, and in some cases individual
       | educators, would send in requests for various reports, and each
       | one required configuring a mainframe job, running it, and doing
       | some kind of thing with the output (conversion to a "modern"
       | format on a 3.5" disk or printing it or something). Every payroll
       | cycle required a lot of manual labor, every report card cycle,
       | there were daily student attendance jobs, and this particular
       | district had a rather advanced, for the time, centrally-managed
       | network across the entire district with Solaris DNS.
       | 
       | So on top of all this regular workload, we had to go over pretty
       | much every single line of COBOL in that mainframe, visually, and
       | search for Y2K-related bugs. There were many. The Solaris box
       | needed to be patched too, and the first patches that came out
       | weren't great and I didn't know what I was doing yet either.
       | 
       | So we started on this in earnest in Summer of 1997, while
       | everyone was out of school. We ran a lot of test jobs, which
       | involved halting all regular work, monkeying around with the
       | mainframe's date, and then running a payroll job to see what blew
       | up. By late 1999, my mentor there was pulling multiple all-
       | nighters. He had a family of his own too and it really impacted
       | his health.
       | 
       | There were mountains of greenbar printouts in our little office,
       | all code, with bright red pen marks. Such was life when working
       | on a mainframe at the time. The school district also brought out
       | of retirement the guy who had written much of the key operating
       | system components for our mainframe. I believe he came on as a
       | consultant at rates that would be pretty nice even by today's
       | standards.
       | 
       | In the end, school restarted after winter vacation and most
       | things ran okay. A few jobs blew up where we had missed something
       | here or there, but everyone by then had got sort of accustomed to
       | the chaos and it just needed a phone call to say, "it broke,
       | we're working on it, call you tomorrow".
       | 
       | Rough estimate, there was probably over a thousand hours' worth
       | of labor to fix it all. Had that not been done, virtually nothing
       | in that school district would have worked correctly by the
       | beginning of 2000. (Some things started failing a month or two in
       | advance, depending on the date arithmetic they needed to do.)
       | 
       | And these weren't just "year 100" printer errors; a lot of things
       | simply barfed in some fancy way or another, or produced nonsense
       | output, or -- in the most fun cases -- produced a lot of really
       | incorrect data that was then handed off to other jobs, which then
       | produced a lot of even more incorrect data, and then saved it all
       | to the database.
        
       ___________________________________________________________________
       (page generated 2020-03-12 23:00 UTC)