The care and feeding of software engineers (or, why engineers are grumpy) An Article by Nicholas Zakas humanwhocodes.com We do say “no” very quickly, not just to designs, but to everything. That led me into thinking about the psychology of software engineers and what makes us the way we are. softwaremakingprocess
Deciding what to design We Don’t Really Know the Goal When We Start The most serious model shortcoming is that the designer often has a vague, incompletely specified goal, or primary objective. In such cases, the hardest part of design is deciding what to design. I came to realize that the most useful service I was performing for my client was helping him decide what he really wanted. Today, we recognize that rapid prototyping is an essential tool for formulating precise requirements. Not only is the design process iterative; the design-goal-setting process is itself iterative. Knowing complete product requirements up front is a quite rare exception, not the norm. Therefore, goal iteration must be considered an inherent part of the design process. Frederick P. Brooks, Jr., What's Wrong With This Model? What's wrong with the rational model iteration