Saturday, July 23, 2011

Pairing for the Imperfect

Consider System. Faults. Expected Behavior. 
Reconsider. How to go from Here to There?
How to make it work. 
Maximize coherence, minimize arbitrary decision points.  
Now, go. 
Have "pair" step in after work is halfway there. 
Explain. Rationale rebuffed.
"Need to make it go," is the reason, "need to rethink" is the justification. 
Toss out the changes. Then watch as he goes about.
Considering System. Ignore faults as unimportant. Dismiss Expected Behavior.
Substitute bald assertion for consideration. Just enough to get by for now. 
Ignore coherence, let number of arbitrary decision points float freely. 
Spend more time fixing faults instead of providing functionality.
I've seen that process play out over and over now. Enough to realize that it is a well-defined strategy for playing out a work slowdown while simultaneously playing up to the customer's desire for immediate satisfaction.  
Often, after repeating the latter loop two or three times, it dawns that the first path was the right way to go.  Except that in a dishonest environment the original authorship will be discarded, the ideas having been surreptitiously adopted by those who were initially dismissive.  This is an antipattern that pervades the tech industry.

No comments: