Designing for the degenerate case
In mathematics, a degenerate form is one that cannot be perturbed in some way without being rendered a member of a larger, more complex class. For example, a circle is a degenerate ellipse- change the constant multiplier of one of the terms and you push the form out of the class of circles into the larger class of ellipses. Next time you're solving a problem, ask yourself: am I solving for a degenerate form? And, if the answer is yes, is that important? Let me give an example where the answer to both questions was "yes". I was tasked once with supporting some motion code which was intended to align a circuit board on a conveyor belt under a camera. The code as written worked fine in the lab, but in the field, customers began to complain of erratic and unpredictable behavior- boards which would be incorrectly positioned at the start of inspection, pushed off the end of the conveyor, etc. It turns out that the code had originally been written to the dege...