Flutterby™! : Meuon's Theorem

Next unread comment / Catchup all unread comments User Account Info | Logout | XML/Pilot/etc versions | Long version (with comments) | Weblog archives | Site Map | | Browse Topics

Meuon's Theorem

2009-10-19 13:21:11.086978+00 by meuon 8 comments

"For any problem in a system, in which the programmer brings up as "might happen" and requires some serious effort to code against/around, and the system designers (customer) declares in writing that it will never happen in the real world on a production system and don't spend time/money worrying about it, creates a natural condition in the universe in which the first real world use of the system will cause that "impossible" condition to naturally occur."

It's just a tighter defined verbose version of: "What can go wrong, will" But I feel as code-monkeys this version is a good reminder.

[ related topics: Software Engineering Theater & Plays Writing Work, productivity and environment Currency ]

comments in ascending chronological order (reverse):

#Comment Re: made: 2009-10-19 15:20:03.382247+00 by: petronius

Maybe the CERN Effect is in play here as well. PS. Why do the auto tags show Plays and Theater for this entry? Is it the word Production?

#Comment Re: made: 2009-10-19 15:33:23.359564+00 by: JT

My usual testing with production code ends with a programmer asking "Why the hell would you even do that?" Some people just have a talent for breaking software.

#Comment Re: made: 2009-10-19 15:51:11.92802+00 by: meuon

JT: You have that under-appreciated talent and are good at that. The issue that triggered this theorem far exceeded even that level.

I think Dan's tagging engine is magical and has deep karmic observation powers beyond mere code, but yeah, that one is kind odd.

Theatre is possibly appropriate. While normally pretty low drama, I can apply intelligence, money and a high pain threshold to creating it, sometimes just for fun. I don't burn bridges, the bomb crater eradicates evidence that there ever was a bridge. In this case, the drama just leveraged the customer into a written apology and a few more hours of billable time, including the time for these posts :)

#Comment Re: made: 2009-10-19 17:00:40.871274+00 by: mvandewettering [edit history]

It must be said that code-monkeys aren't immune to this effect: a great number (most?) of the bugs in any system are bugs that the programmers themselves think will never occur (in fact, cannot occur) in execution.

#Comment Re: made: 2009-10-19 17:10:10.886149+00 by: Dan Lyke [edit history]

I just found and fixed some code where a programmer made such an assumption; provided the handles in one place in the code, assumed they'd be the default in some save and restore code, and then a year or so later used the handles...

Oh, on the tagging engine: It's actually fairly simple keywording, but sometimes it seems deeply prescient. I have thought about using Bogofilter or one of these other learning spam systems to see if they can suss out some better categorization.

#Comment Re: made: 2009-10-19 17:16:44.090305+00 by: m

At specification interview time: never = no more than 3 to five times per week.

#Comment Re: made: 2009-10-19 17:52:05.658347+00 by: meuon [edit history]

mvandewettering: I kick myself for one of those a week. Last week's personal rant at myself was because in a specific instance, I assumed the unique key provided would be, at least in this limited context, unique. Of course, to the semi-technical-literate user, using a cell phone number as a unique key was a good idea, on 6 records. Took me 10 minutes to fix the chaos, 30 minutes to fix the code.. 3 days to get over the dark funk caused by my own stupidity of the assumption.

#Comment Re: made: 2009-10-19 18:41:04.528901+00 by: m

meuon, the problem is that you have to believe the client at least some of the time, otherwise nothing would ever be written.