Defer for Understanding

By Ivan Gevirtz

created: Tuesday, January 27, 2009
updated: Wednesday, May 20, 2009

 At my last company, I coined and championed a new software development mantra.  The company was a startup, and we were tackling some very complex problems by taking a pragmatic, incremental approach to the solution.  Sure, I had some very clear ideas as to where we were going, and what things would look like once we got there.  But, this was an internet startup, and we had to assemble the airplane in flight.  My approach to the problem led to penning the deceptive, and often misunderstood mantra:

Defer for Understanding

What?  A fast paced internet startup with a mantra embracing procrastination?  Quite the contrary, in fact.  The mantra represented well over a decade of hard-won, real world experience designing and developing cutting edge software technologies in very competitive markets.  The key insight behind the mantra is that hard problems often appear much harder than they are simply because the problems are not well understood.

Chipping away at a hard problem, attacking it from all sides, making progress on the easier or more apparent steps -- these are all valid techniques to help build a comprehensive understanding of the true problem.  A well defined problem becomes much easier to solve than an elusive, confused notion of a need.  "Defer for Understanding" leads to better problem definition, by filling in the known, well understood or most important parts first.