Welcome, Guest. Please login or register.

Author Topic: Facepalm moments  (Read 3514 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline LoadWB

  • Hero Member
  • *****
  • Join Date: Jul 2006
  • Posts: 2901
  • Country: 00
    • Show all replies
Re: Facepalm moments
« on: October 18, 2010, 05:34:25 PM »
I was writing a screen blanker for the Commodore 64.  It was meant to work like the simple one on the TI-99/4A: countdown timer (I actually used a CIA TOD alarm) then set a bit to blank the screen, then reset that bit once a key is pressed.  Simple!

Except it would not work.  I removed the TOD alarm and implemented a countdown using an unused zero-page word.  I rewrote the TOD alarm handler.  I checked and checked.  Hours staring at this simple code, not understanding why it would not work.  I even duplicated functionality in BASIC (with an ML helper for the TOD alarm) to verify that I was POKEing the right places.

The next day it hit me.  Square in the gonads.  I had a BNE when I should have used a BEQ.  STUPID STUPID STUPID!  I was using the WarpEngine's ML monitor to write my code, and I probably could have found it if I had stepped through the code line-by-line (which, now I think of it, I believe the WarpEngine can do.)

Ah, well.  Lesson learned.

Another really good one would be when I was attempting a hardware upgrade for a client running an Exchange 2003 server.  I had diligently moved the Exchange database files to the D: partition so I could nuke the Windows installation in case the hardware move did not go so well.  Everything worked perfectly except that I had missed moving the log files, and they got nuked.  It took this poor machine 30 hours to do an eseutil repair on 42GB of email for a multi-million dollar company, and made me sweat every minute of it.  That has been the only major failure this server has suffered in the past eight years -- by my own hand!
 

Offline LoadWB

  • Hero Member
  • *****
  • Join Date: Jul 2006
  • Posts: 2901
  • Country: 00
    • Show all replies
Re: Facepalm moments
« Reply #1 on: October 18, 2010, 06:55:06 PM »
Quote from: JJ;585493
Do it loads of times in work.  Reading through code to see why it doesn't work only to realsie you have used a ( instead of a { or vice versa.  Really easy to miss in amongst loads of code.


I remember reading somewhere that this error is what actually caused the AT&T outage in 1990.

http://www.phworld.org/history/attcrash.htm

(This just talks about the technicals, not the actual cause of the error other than a coding error.)
 

Offline LoadWB

  • Hero Member
  • *****
  • Join Date: Jul 2006
  • Posts: 2901
  • Country: 00
    • Show all replies
Re: Facepalm moments
« Reply #2 on: October 19, 2010, 01:08:33 AM »
Quote from: Marcb;585608
  • Putting together a proposal & quick demo program as a 22yo to show Management at my work how we could get clients to dial in and place their orders and manage their accounts only to be told noone would bother to buy a modem

hehehehe I know the feeling.  Back in 1996-ish (22-ish as well) when I worked for a shoe store I started to develop an interactive kiosk system on my 1000 to show off shoes, features, kids sizing information, etc.  Right before I completed it and was getting ready to demo, I was told corporate was not interested because they felt it would take away from the one-on-one customer experience.

These days when you walk into the local store you are lucky if you can get a "hello" from the manager sitting on the floor behind the counter sending text messages.

*sigh*
« Last Edit: October 19, 2010, 01:11:55 AM by LoadWB »