COBOL programming tools from NORCOM

     Products     Prices and Purchasing     Support     News     Partnerships     Home   Contact Us   Downloads



What Caused the Y2K Mess, Anyway?

Well, Junior, it's like this.

Once upon a time...

Before you were even a twinkle in Daddy's eye, the notion of a tape drive or disk drive that stored more than a couple of megabytes was a pretty radical concept.  Back in the Pleistocene when we started programming, a five megabyte drum storage unit (that's another story) was about four cubic desks (so to speak) in size.  Pretty big.  And, exceedingly expensive, too.

We also remember the days (back in nineteen hundred and ought-seventy) when a good-sized mainframe computer occupied a room about half the size of a basketball court and was maxed out at 48K (bytes) of RAM.  It wasn't even as powerful (in some ways) as the original IBM PC, let alone today's handheld computers.  Go ahead and laugh, but it all had to start somewhere...

Storage Was Expensive in the Olden Days

Well, given that storage was so costly, programmers were instructed not to waste any.   A variety of subterfuges were used to minimize the amount of tape and disk space used by applications. 

One of them was omitting the century from dates, which saved a couple of bytes per data record.  If the record was 100 bytes and had one date field, that amounted to two percent savings, which was pretty significant. 

Besides, the turn of the century was 30 years away, we'd probably be retired, and the programs would be rewritten long before then anyway.


Here's a lesson in software longevity...

As it turned out, many of those early programs are still in use.  Talk about a good return on investment!  Anyway, that lack-of-century thingy has now come back to haunt us.  (Or, to provide opportunities; depends on your perspective, doesn't it?)

We weren't dumb back then, we were simply working within the constraints of what we had.  The really unfortunate thing was that the systems weren't corrected along the way as storage became available. 

Blame it on COBOL?  I don't think so!

Youngsters programming in the "C" language smugly blame the Y2K problem on some imaginary limitations of the COBOL language, but the fact is, it was a design limitation (related to hardware capabilities and cost), not a language problem.  If programmers had been using "C" back then, we'd still have a problem, and for the same reasons.

That's the "Year 2000 Problem" in a nutshell.











2000-2016 Norcom, all rights reserved 

Contact Norcom