From: Michael Shigorin Date: 2011-11-21T18:40:12+09:00 Subject: Re: Principle of Best Principles On Mon, Nov 21, 2011 at 06:19:33PM +0900, Kevin wrote: > On Mon, Nov 21, 2011 at 3:54 AM, Marc Heiler wrote: > > It's more important to get the job done than strive > > for the perfect design. > While ramming it in is an option, I think that it does pay to try and > come up with good designs that will be flexible. I've found that > ramming things in seems to fall apart as soon as my boss decides that > he needs something different or I realize that my initial thoughts on > the problem were wrong. Well, my experience so far is that it's wrong to just rush forward without even trying to design, plan and experiment; but it might be just as wrong to overengineer in terms of the first usable result availability. I've read an interesting thing in Ed Hillary's book on the conquest of Everest: it's often not feasible to understand the path beforehand until you climb high enough to see the cracks and whirls lying forth (and I've walked even if not climbed mountains myself as well to concur). Maybe a good part of the reason behind sane (sic!) application of agile techniques is related to this same phenomena: we're better off exploring and advancing in iterations without relying on our -- or boss' or customer's -- understanding of the problem at hand which might just honestly overlook something important or change over time due to unpredictable circumstances change. So to me you're both right in some sense. Further reading might include "The Rise of 'Worse Is Better'" and subsequent "Worse Is Better Is Worse" for those interested. (diving back to makefiles and shell of a distro build metasystem) -- ---- WBR, Michael Shigorin ------ Linux.Kiev http://www.linux.kiev.ua/