Lamentations of a Pooped Programmer

By: Angela Gillaspie © January 2001

Programmers used to lead a simple life.

We wrote code while we sympathetically listened to users (salesmen, accountants, etc.) complain about how their programs and reports were misbehaving or didn't have enough information. We classified these requests into three general types of problems: bugs, enhancements, and viruses.

Bugs were programs (usually written back when Noah built the ark) that blew up, spewed erroneous data, or had sundry insufficient information. When a bug was reported, we smiled and nodded, while we made notes, and calmly told the user that he probably made a mistake running the program. 90% of the bugs are due to user errors, by the way. Our mantra is "garbage in - garbage out" and when a user put garbage into our sacred code, well, they got what they deserved.

In the small probability that it was really a bug, then we would use our psychic abilities to figure out what the programmer was thinking back in 1974 when he originally wrote the program so that we could modify it accordingly.

Enhancements were of the "wouldn't-it-be-great-if-I-had-an-analysis-of-the-entire-company's-purchases-made-in-July-broken-down-by-product-code-sales-order-number-invoice-amount-and-size-of-underwear?" variety. Most of the time we like enhancements because we can write "fresh" code. Unfortunately, lots of times the user wants the mountain and we have to give him or her just a handful of dirt because that's all we have available. We're programmers - not divine prophets.

Viruses are the bane of networks. Impotent losers with way too much time on their hands create viruses. In their wake are crashed servers, inoperable mail programs, missing data, and programmers misspelling more words than usual in their written correspondence. These viruses prey on the lonely and bored with subjects of "I love you" and "Funny Joke." Fortunately, all we have to do is patiently wait on our AntiVirus provider to upload a patch to their web page so that we can download it and squash the virus.

Bug, enhancement, or love bug virus, we could handle the workload just dandy. We wrote code, rolled our eyes at users, and misspelled words. Then we were faced with a challenge and a deadline: have the Y2K bug dead before December 31, 1999. We frantically wrote code to add the century to all those century-less dates. We tested, modified, re-tested, refined, and then tested again.

We debated among ourselves how power grids and water pumps would stop when the year rolled over. It's not like there was code in the microchips that said, "IF YEAR = 00, THEN STOP FUNCTIONING."

When the year rolled over, there were no actual major problems! The minor bugs were reports and programs that displayed the year 1900 instead of 2000. Another nuisance encountered was zero dates that ended up as 20000000 thus causing all accountants to have minor heart attacks thinking that costs, revenue, and net value had skyrocketed.

The perceived Y2K problems were far from over for the technical-minded. Users including cost accountants, salesmen, plant accountants, financial accountants, sales accountants, purchasing accountants, inventory accountants, managerial accountants, general accountants, and oh-look-the-sky-is-falling accountants all called us and reported tragic stories of Y2K bug sightings. The weeping, wailing, gnashing of teeth, tearing of clothing, wearing of sackcloth, and whining were about to do us in.

Every single anomaly from being four cents off on labor costs to smelly bathrooms was attributed to being a Y2K bug.

"Hey look, this report stops at January 15th, I found another Y2K bug!" They'd holler. Of course, this was due to a user error. We programmers would chuckle and treat the Y2K bug reports as if they were UFO sightings - rare and entertaining little events. During trips to the printer, we'd share anecdotes about the different Y2K "errors" that we had "fixed" lately.

Now with the year being 2001, the majority of the problems we've encountered was due to the Y2K code that we put in last year. Code is funny that way - you just can't test a program 100%.

When the year reaches 2002, it will be safe to say that the Y2K bug is really dead, and then we can get back to our normal lives of writing code, downloading patches for the latest virus, making fun of users, and talking accountants down from their ledgers.

Click here to tell someone about this site!

Copyright © 2000, Angela Gillaspie
Revised - 01/06/01