[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Information about the Y2K bug.



For those of you who will read this before tomorrow midnight... here's
something you might be interested in...

Y2K...

I have been a professional computer programmer for almost 20 years. And I
just wanted to make sure everyone knew about the bug and what exactly could
happen.

History

When programmers of old didn't have much disk space or memory to work with,
they had to conserve memory and disk space any way they could, every byte
they could save made a big difference. So, when programmers wrote business
programs that stored customer records that contained DATES in them, they
stored the date as 12 31 99 for December 31st, 1999. Storing the year as
only two digits saved them a LOT of disk space, think about it. If each
customer record saved two bytes of space, and each customer had maybe 100
records per year, and there are 10,000 customers... figure it out... that's
2 million bytes of disk space saved. That was a lot of space years ago!

The Bug

So, they stored the dates with only two digits instead of 4. Now let's
assume I work for a bank. I wrote a computer program to calculate the
interest for a loan you got years ago. I want to calculate the interest of
the loan from the inception date. Let's say you took out a loan from me
back in 1998. The computer would store the date as 12/31/98. The computer
would then take the current date 12/31/99 and subtract the years to get the
difference...

current year - inception year = years passed.

Then I would calculate the interest on the years passed... let's make it
simple...

years passed * ( loan amount * 10% ) = interest to be paid.

Now, if we plug in values in our formula...

99 (current year) - 98 (inception year) = 1 (years passed)

1 * (5,000 * 10%) = $500

Seems simple enough right? Now lets assume it's January 1, 2000 and plug in
those numbers again...

00 (current year as two digits) - 98 (inception year) = -98
-98 * (5,000 * 10%) = $-49,000

See the problem? Since the current year (2000) is stored as two digits
(00), we get what programmers call a logic bug. We could either get an
interest credit of $49,000, an interest charge of $49,000, (or assuming they
use integer type variables) we could get a credit or debit of $16,232 (the
rollover amount from an integer data type)

Effects

This was a simple test. It would cause no problems except for a bad
calculation. But the problem is, since we're getting faulty results, it's
almost impossible to tell what would happen. If the program were set to
divide on it, we could concievably get a DIVIDE BY ZERO error and the entire
program would crash.

I won't lie. Almost everything you've heard is a possibility. It is
possible that power could go out, your TV's could stop working... etc but
that's EXTREMELY unlikely. Anything that uses a computer and dates could be
effected. Chances are, we will see a few small bugs here and there but not
much else.

A lot of you have probably tried to make your computers Y2K compatible.
That is pretty much a complete waste of time. It's not the computer that
needs to be Y2K compliant... it's the SOFTWARE. The software needs to be
compliant since it's the software that actually controls everything. If
your computer is Y2K compliant but your spreadsheet program isn't... you
will still get bugs. If you haven't done anything yet about it... It's too
late now. But don't worry. If you are worried, just turn your computers off
during the crossover.

But take it from a professional computer programmer with almost 20 years
experience.

Don't worry.

The world isn't going to end.

My computer will be up and running during the crossover.

My money will still be in the bank.

And if I were travelling, I wouldn't mind taking an airplane.

I will be in my car.

My TV will be on.

My VCR's will be recording...etc

I know the bug, I know what it can do. And If I'm not worried, why should
you be?

==================================
Gary Thompson
"The Psycho"
http://psycho.simplenet.com
==================================






This is an archive of the eGroups/YahooGroups group "BuffyLovesWillow".
"Buffy the Vampire Slayer" and "Angel" are trademarks and (c) 20th Century Fox Television and its related entities. This website, its operators and any content on this site relating to "Buffy the Vampire Slayer" and "Angel" are not authorized by Fox.
No money is being made with this website.