February 7th, 2014

Cat - Felix Pace

Being Smart

My job is part fancy technical writer, part creative tester of software. I was looking over a book I found on testing and debugging and it has the following joke:

A Mathematician, a Physicist and an Engineer are all told "all odd numbers are prime". 

Mathematician: This is silly. 9 is a non-prime odd number.
Physicist: 3 is prime, 5 is prime, 7 is prime, 9 is experimental error, 11 is prime, 13 is prime, 15 is experimental error, 17 is prime, 19 is prime. The empirical evidence is overwhelming.
Engineer: 3 is prime, 5 is prime, 7 is prime, 9 is a good approximation, 11 is prime...

The conclusion of the text? 

Avoid the physicist's error: not trying the right value
Avoid the engineer's error: trying the right value, but not noticing the contradiction
Be smart like the mathematician: finding the right counter example, with minimum wasted efforts, that contradicts the statement

 That's my job apparently... being smart like the mathematician.

More "9 is a prime" responses are here.

As an aside, the REAL response of the mathematician was: 3 is prime, 5 is prime, and 7 is prime. By induction, all the odd integers are prime.  

ATHF - Supreme

Debugging Life

The following material, resorts for debugging life, is adopted from J.M. Gould’s article “Some psychological evidence on how people debug computer programs”.

I find these to be so very true.   My older age has confirmed that the experimentation should only be a list resort… but such wisdoms comes with time and excessive past experimentation.

Resorts for Debugging Life:
#1  First resort: Think
#2  Impasse?  Sleep on it!
#3 Impasse?  Describe the problem to somebody
#4 Debugging tools (tools that help identify a problem) as a second resort  
#5 Avoid experimentation – use only as a last resort

Fun fact: debug 1945, of machine systems, from de- + bug "glitch, defect in a machine." Meaning "to remove a concealed microphone" is from 1964.