Programming Insanity  

Posted by RogueDash1 in

There is a popular definition of insanity that states that insanity is doing the same thing over and over again and expecting different results.

As a software engineer and programmer, I find this assertion perplexing. When I am debugging code, I very frequently do the same thing over and over again and get different results. Which pisses me off, since computer systems are supposed to be deterministic systems. I expect to get the same results when I do the same thing. But sometimes I don't.

I know from experience that my software will not always work the same way even when I tell it to do the same thing. So either I am insane for expecting things to not work for no good reason, or my inanimate software is insane.

I offer two examples. The other day I added a few lines of code to our software, in order to add another variable which would be read by another part of the code. It didn't work. After much heads scratching and yelling at the computer, I deleted what I had wrote and retyped it. And it worked. The catch is that there was no difference in the code. I retyped it, character for character, and one worked and one did not.

A couple years ago, I wrote some code that read some data from flash memory. I had gotten some test code working and had ported it to our actual software. Of course it didn't work. I spent two days trying to figure out why. In the end, I put my original try back on. It has worked ever since. I still maintain that the moon was out of phase.

The point being, I not only do the same thing over and over again and expect different results, I often do get different results. I don't think I'm insane. I usually expect the universe to be rational. It's just that sometimes, it isn't. Is it insane to notice that?

This entry was posted on Thursday, February 12, 2009 at Thursday, February 12, 2009 and is filed under . You can follow any responses to this entry through the comments feed .

0 comments

Post a Comment

Add to Technorati Favorites