If you simply ask a programmer to implement a feature, but fail to share the
purpose or the justification for said feature, all you get is a code monkey. Code monkeys merely translate requirements into code verbatim. There’s no room to trade concessions with the designers if I don’t know what you’re trying to do.
—http://37signals.com/svn/posts/3392-humans-need-to-know-why