I apologize for including this little true(ish) horror story that seems to refer
to a time so long ago, though it may loom large in the nightmares or bank accounts of many a
computer person. It's still quite a fun read, I hope...|
Hilario Bolloc's Cautionary Tales present...
System X, that Ignored Year 2000 and came to grief in 1999
Years that end in loads of noughts
Can fill some minds with awful thoughts.
While cynics sneer at superstition
And take a "rational" position,
Folks possessed of little sense
Fear fire and flood and pestilence.
But, since computers came along,
Their cries of doom may not be wrong:
We've sown the seeds of man's destruction
In each ill-coded date instruction
And now must work all hours we're sent,
This bitter harvest to prevent.
(We who engendered this position
Cry with guilt and deep contrition:
They slander us, who dare to say
We're pleased by all that extra pay!)
Though foolish virgins don't seem scared
To face the dark date unprepared,
Wise companies, unlike the rest,
Have buckled down and done their best
To make their systems watertight
And ready for that fateful night.
But let me tell you, one and all,
That smugness comes before a fall
And let this tale a warning be
To guard against complacency.
Yes, friends: with all that progress made,
To System X no heed they paid
("There's nothing that we need to do:
That system dies by Quarter Two")
But even where jobs "ought to work"
We must beware of things that lurk
Deep in the swamps of Dead Old Code
As this, our tale, so starkly showed
(In this case paying rather dearly
For deals that take their interest yearly)
One of their better "legacies",
It ran through nightly like a breeze:
Never falling, hardly drooping —
On New Year's Eve it started looping;
Round and round it kept on chugging,
Defying efforts at debugging.
The folks on call tried everything
Including giving Dai a ring
(Of course he found it really grand
To get called up in Switzerland)
But, with his knowledge of the jobs,
He guessed the cause of all their probs
And rang them back with a suggestion
As to the answer to their question
They patched it up; it seemed all right —
It crashed again on Monday night.
They dropped the input for the day:
That got it through but, strange to say,
The users seemed quite discontented
To lose all of the stuff they'd entered.
With Mister Lowe back on the case
They wouldn't let him leave the place
He sat and worked the whole night long
Until he found out what was wrong:—
In working out "Next Interest Date"
It got itself in quite a state:
To ninety nine it added one:
Indeed, that's what it should have done:
But with (you guessed!) two digits stored
The "hundred" part just got ignored
And next the clever coding stated
"I'd better check it's not back-dated.
Oh, but it is. I'll add a year —
And that's still not enough, I fear."
And so it went on incrementing
Never stopping nor relenting
Until it reached the present time —
Then added one to ninety nine.
It's working now, doom's been prevented
With just some reputation dented.
Of course it could have been far worse,
This instance of the "zero curse",
But, from these fingers slightly burnt,
We all have lessons to be learnt;
Assuming anything, you see,
Makes ASSes out of U and ME.
And so, all you "compliant" teams,
Let me disturb your happy dreams.
I wish you luck, I hope you're right
But beg you now with all my might,
Please don't allow your guard to fall;
Don't smugly say, "We've done it all"
But ask youselves, "What are the odds
"We'll fall foul of that law called Sod's?"
Think on – before it gets too late —
There isn't just one risky date.
And systems due for early death
Might choke you yet with their last breath.
On crucial dates it might be fun
To try the odd pre-emptive run:
Harness the gift of paranoia
To spot those flaws that might destroy ya.
Don't let your key staff go away
To new jobs or on holiday
(Blackmail them; hold their kids to ransom
Or pay those rates that seem too handsome).
But learn from this the best of morals :–
Don't rest upon your well-earned laurels
But, well prepared for what's to come,
Enjoy the new millennium.