The Year 2038 Problem

  • Thread starter Generic Usenet Account
  • Start date
Q

q

Not only must the year be divisible by 4, if it is a century
year it must be divisible by 400.
 
B

Bob Day

Gerry Quinn said:
In countries where little or no effort was put into preventing it, no
significant problems occurred either.

"Only the vigilance of our firefighters has prevented this 2000-year old
forest from burning to the ground dozens of times over the last decade!"

- Gerry Quinn

Pull your head out of the sand for a moment, and take
a look at: http://www.grantjeffrey.com/article/y2kretro.htm

-- Bob Day
 
D

Dan Pop

In said:
My personal preference would be for a 256-bit number of picoseconds since
the creation of the universe. It gives better precision than 1 second.
It won't run out during the life of this universe. The only trouble is,
we don't know accurately when that was.

Does it matter?

Dan
 
L

Leor Zolman

The only reason it didn't happen was because we fixed it.

I suppose the world would have appreciated it more if we'd let
everything go to hell and then became heroes by fixing it afterward.

I suspect just the opposite. In the ensuing uproar over renegade,
unprincipled, greedy software developers, government would just enact the
Federal Software Quality Commission to oversee and regulate the software
industry into submission.
-leor
 
S

Stephen Sprunk

Villy Kruse said:
I'm sure these stories didn't come from the professionals who knew
what they were talking about. Besides, the problem is just a small
subset of a bigger issue, namely the maximum number that can be stored
in a given variable. ... Or accounting programs which gets into trouble
when turnover reaches one million, or 10 million.

The first company I worked at was acquired for cash, and they paid out our
stock options as a cash bonus through payroll. Our CEO's share was $250M,
which unfortunately crashed the payroll system every time they tried
printing the checks. We ended up having to get a custom patch from the
software vendor, and this delayed the payout (and acquisition) over a
month...

Certainly a much more interesting anecdote than anything I heard about Y2k
:)

S
 
S

Stephen Sprunk

Corey Murtagh said:
15 years after the oil runs out and we're all paying US$20/gallon for
vehicle grade alcohol :>

I assume that $20 is after inflation, which means it'll be on par (in
constant dollars) with what we pay for petrol or ethanol today. Hardly a
problem, though I'd expect us all to be running on hydrogen by then; ethanol
is a transition fuel.

S
 
D

Dan Pop

In said:
In countries where little or no effort was put into preventing it, no
significant problems occurred either.

A country generating no significant software products has nothing to fix.
It's as simple as that.

Dan
 
L

Leor Zolman

My personal preference would be for a 256-bit number of picoseconds since
the creation of the universe. It gives better precision than 1 second.
It won't run out during the life of this universe. The only trouble is,
we don't know accurately when that was.

That's ok, we probably know it to at least the same relative accuracy as
January 1, 1970 "accurately" mirrors the beginning of the Unix era.
-leor
 
X

xarax

Villy Kruse said:
I'm sure these stories didn't come from the professionals who knew
what they were talking about. Besides, the problem is just a small
subset of a bigger issue, namely the maximum number that can be stored
in a given variable. It could for exmple be an old cash register which
didn't allow prices above 10 dollars for example. Or fuel pumps which
got into trouble when the fuel price went above 1.00. Or accounting
programs which gets into trouble when turnover reaches one million,
or 10 million. Or the position argument you give to the fseek()
function, now when files greater than 2Gig is a real posibility.

Back around 1983 at Southern California Edison, there was
a panic in their mainframe data center. SCE printed their
paychecks, as well as managing all of their accounting on
their own IBM mainframe system (using COBOL). The paychecks
were printed monthly. The panic happened when some executives
were seeing asterisks appearing in their paychecks. It turns
out that the COBOL programmers never imagined the possibility
of someone getting a monthly paycheck for more than $9,999.99
and when that finally happened, the dollar amount appeared
as **,****.** and invalidated the paychecks.

In another typical COBOL moment of ineptitude, the programmers
were discussing/debating the merits of a possible stock split
(they were participating in the SCE employee stock purchase
plan). The crux of the problem was that the COBOL programmers
were afraid to vote for the stock split, because they had
HARD-CODED the number of outstanding stock shares in about a
zillion COBOL programs and they didn't want to give themselves
more work to go back and change all of that source code by
splitting the stock.

Another COBOL moment at SCE: They used variable-length records
to indicate the record variant data type. For example, if the
record was 60 bytes long, it was type "A". If it was 70
bytes long, it was type "B", and so on. Then a situation
arose where they needed to define a new record type, but
it was the same length as an existing record type. They
had already hard-coded the record lengths in zillions of
COBOL modules. The solution? Insert padding fields to make
the new record an arbitarily longer length than the existing
record types. Then go into every module that had the hard-coded
record lengths and add the new record length/type.

Ah, the good ol' days...
 
G

Gerry Quinn

Pull your head out of the sand for a moment, and take
a look at: http://www.grantjeffrey.com/article/y2kretro.htm

LOL! That article was written a mere ten days into the year 2000 by tha
author of "The Millenial Meltdown", and already he was running for
cover. He should have waited a few days, some of his his followers
might not have been down from the hills in time to read it.

He had no significant examples of serious failures to report, so he
started pushing that good old line "If it wasn't serious why did we
spend so much?". Nearly all the article is just "Everybody else said it
was serious too".

He asks:
"Those who naively suggest that Y2K was all hype should ask themselves
why banks (who are not generally known to throw their money away) would
spend literally hundreds of millions of dollars and hundreds of
thousands of man hours to fix the problem..."

You know, banks *aren't* known for throwing their money away - they've
got plenty of yours and mine for that! Barings, for example, or AIB.

There was a Feb 29 bug in 2000 that wasn't hyped at all, and little
enough went wrong that day either.

Truth is the Millenium Bug Disaster was a '60s science fiction scenario,
based on the assumption that all the operations that keep the industrial
world turning are done by technicians blindly obeying the orders on
punched cards that some big old computer spits out. The real world is
considerably more fault tolerant.

- Gerry Quinn
 
C

CBFalconer

Stephen said:
.... snip ...

I assume that $20 is after inflation, which means it'll be on par
(in constant dollars) with what we pay for petrol or ethanol
today. Hardly a problem, though I'd expect us all to be running
on hydrogen by then; ethanol is a transition fuel.

And where does the power to extract that hydrogen come from? In
case you hadn't noticed it does not tend to occur in free form in
nature. However, it can serve as an intermediary between real
renewable sources and portable machinery.
 
M

Mike Wahler

Villy Kruse said:
I'm sure these stories didn't come from the professionals who knew
what they were talking about. Besides, the problem is just a small
subset of a bigger issue, namely the maximum number that can be stored
in a given variable. It could for exmple be an old cash register which
didn't allow prices above 10 dollars for example. Or fuel pumps which
got into trouble when the fuel price went above 1.00.

Anecdote:

Funny you should mention this. All of us U.S. folks are aware
of the current escalation in gasoline prices (I'm supposing a
similar thing is happening elsewhere.). But now, in the 21st
century, I was shocked to learn the other day that a local
gasoline retailer was losing money because his pumps didn't
have a '2' in the high order position. He said in a news
interview, that he was being 'forced' to sell at a loss, for
$1.99/gallon, although the average price was around $2.35.
He said he has to 'eat' the loss until his new pumps arrive
in a few days.

I told my wife I should go down there and sell him a few
pieces of cardboard, a crayon, and a handheld calculator,
perhaps for about $300. He'd get that back in recouped
losses in less than a day, and my wife and I could have
a very nice night out on the town.

:)

-Mike
 
R

Richard Tobin

Oh yeah? How about all those stories about everything from your coffee
maker to your car engine's sparkplugs stopping working on the exact
second the year 1999 changes into the year 2000?
[/QUOTE]
The only reason it didn't happen was because we fixed it.

Really? People upgraded their coffee makers and spark plugs?

-- Richard
 
C

CBFalconer

Mike said:
.... snip ...

Anecdote:

Funny you should mention this. All of us U.S. folks are aware
of the current escalation in gasoline prices (I'm supposing a
similar thing is happening elsewhere.). But now, in the 21st
century, I was shocked to learn the other day that a local
gasoline retailer was losing money because his pumps didn't
have a '2' in the high order position. He said in a news
interview, that he was being 'forced' to sell at a loss, for
$1.99/gallon, although the average price was around $2.35.
He said he has to 'eat' the loss until his new pumps arrive
in a few days.

I told my wife I should go down there and sell him a few
pieces of cardboard, a crayon, and a handheld calculator,
perhaps for about $300. He'd get that back in recouped
losses in less than a day, and my wife and I could have
a very nice night out on the town.

You (and he) are too young. Back in gas shortage times, when
prices worked their way above 50 cents a gallon, most pumps
couldn't handle that wildly excessive level. The operators set
them to charge half-price, and created a sign stating as much.

This solution may not be complete in these days of 'charge at the
pump'.
 
A

Alan Balmer

Probably you did, but surely you didn't believe all of them.

Of course there were scare stories, and lots of ridiculous rhetoric,
but that's true of any issue the media decides to hype. Much of it
wasn't true, and sensible people knew better.

On the other hand, once it was past, those same news media were so
disappointed that the world didn't come to an end that they started
accusing everyone of making the whole thing up. Sensible people don't
believe that either.

The truth is that there were real problems and most of them were
fixed. During 1999, I did perhaps 30 compliance surveys among my small
business clients. Some updates were needed in nearly all cases, though
only a few would have had serious consequences (mostly in scrambled
book-keeping.) In some cases the action required was no more than
making sure systems were shut down on Dec 31 and rebooted after the
new year. One large client had issues which would have cost them
rather a lot of money if ignored.

When the new year finally arrived, I had closed up shop and moved
across the country. I had a Y2K trouble call from one former client,
which was resolved over the phone with all data recovered.
 
A

Alan Balmer

No, the reason _those_ did not happen is because coffee makers and spark
plugs don't stop working on 1-1-1900.

As I mentioned in another reply, I was ignoring that bit of rhetoric.
Should have said so at the time.
 
M

Mike Wahler

CBFalconer said:
You (and he) are too young.

Actually, I'm not.
Back in gas shortage times, when
prices worked their way above 50 cents a gallon, most pumps
couldn't handle that wildly excessive level. The operators set
them to charge half-price, and created a sign stating as much.

Yes, I remember that.
This solution may not be complete in these days of 'charge at the
pump'.

Right. I also remember complaining "why can't I just
slide my credit card through a reader at the pump,"
long before that method was available. (Of course,
being a 'geek', I understood that it was easily doable,
although the typical 'layperson' did not.).



-Mike
 
O

Otto Wyss

Stephen Sprunk said:
If someone copies a time_t into a variable of any other type, they may be
invoking undefined behavior, which means it's not the Standard's problem,
it's the coder's.

time_t exists for a reason, just like size_t. Use them.
I don't hope time_t isn't as often converted to int as size_t is. Well I
guess it won't be that big problem, I just wanted to point out that you
never should assume what other coders think.

O. Wyss
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,769
Messages
2,569,581
Members
45,056
Latest member
GlycogenSupporthealth

Latest Threads

Top