[Haskell-cafe] the problem of design by negation

Thomas ten Cate ttencate at gmail.com
Thu May 21 04:56:51 EDT 2009


On Thu, May 21, 2009 at 00:54, Michael Mossey <mpm at alumni.caltech.edu> wrote:
> I call it "design by negation." When asked to justify his design, the lead
> software architect explains everything that *wouldn't* work. "We couldn't
> have a unique key for every entry because blah blah blah. We couldn't use a
> garbage collector because blah blah. We couldn't write a sugar layer because
> then you have to document it separately blah blah." So the chosen design
> seems to be the only thing left after eliminating everything you can't do.
>
> I want to aspire to "positive design." I want to list the goals, and think
> of design as making clever choices that meet all the goals.

I think there is often a good "default" solution which is so obvious
that experienced software architects won't even bother to mention.
This is the case for both examples that you mention (unique keys in a
database, garbage collection). They then go on to give reasons why the
"default" solution would not work in their case.

Thomas


More information about the Haskell-Cafe mailing list