[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Program bugs and Game bugs
In article <34F2C0E5.FAD56C7D@swbell.net>,
Rubywand <rubywand@swbell.net> wrote:
>DEVEN ATKINSON writes ...
>>
>> I encountered this same senerio at work. I explained it to the customer
>> this way: If your car hits a pot hole and bottoms out, is it the fault
>> of the car? Should you run out and put stiffer shocks? Or should you get
>> the pot hole fixed?
>
> This is a very good analogy! Now, consider this: Suppose the pot
>hole is marked with a flashing barrier sign reading "Pot Hole".
>
> Who is responsible when you swerve around the sign, THUNK! into the
>pot hole, loose steering control, and end up crashing into a mailbox?
>
> There is nothing wrong with your car-- i.e. the Syntax and Logic
>aspects of your program code-- the car goes where you tell it to go.
>
> The street-- i.e the Operating System-- is drivable. Every day,
>thousands of commuters in their cars-- programs executing under the OS--
>traverse the street with no problem.
>
> The pothole-- i.e. the OS bug-- is avoidable.
>
> You are the one in control-- i.e. the Decision Making aspect of the
>program.
>
To fit your addition to my original analogy.. The OS has the flashing
sign but it puts it away from the pothole thus not protecting it. You
do'nt have to swerve to hit the pot hole, just follow the sign. Patching
the OS will make sure the sign is always in the right spot. If we move
the sign ourselves we will most likely expose hazzards far greater than
a pothole. Other bugs are likely to surface.
I have spent my entire careere coding medical environment software. It
is standard practice to fix the problem at its source. Kludges and
other workarounds cause more problems than they are worth. It is not
wrong to 'decide' that hte OS is needs fixed. It is a valid soulution
to the problem. To quote H.L. Mencken- "There is always one solution
that is simple, quick, and wrong." It looks like Sheppy should be able
to choose his own fix and make sure it is the correct one, without the
hassle.
Programmers who follow documented program calls expect them to function
correctly. It was not as if someone chose to swerve towards a pothole.
The flashing sign led them to the pothole instead of away.
--
Regards,
Deven D. Atkinson
deven@mcs.net <*>