Time for a little bit of a rant. In a recent post , Jeffery Palermo paraphrases an analogy made by David Platt on a recent episode of the .NET Rocks podcast : In software, we can't expect our clients to know what they need. Much like the depth of a patient may be "I need to get rid of this infection"...