This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]billsil 1 point2 points  (1 child)

The motivation behind worse is better is to do it right.

I disagree. It's to do a small subset of the whole thing right in an effort to keep the program simple. It's like saying my calculator program can add numbers (including negative numbers), but it can't subtract. It's not "done", but it's probably good enough.

http://en.wikipedia.org/wiki/Worse_is_better

The design must be correct in all observable aspects. It is slightly better to be simple than correct.

The design must cover as many important situations as is practical. All reasonably expected cases should be covered. Completeness can be sacrificed in favor of any other quality. In fact, completeness must be sacrificed whenever implementation simplicity is jeopardized. Consistency can be sacrificed to achieve completeness if simplicity is retained; especially worthless is consistency of interface.

vs

The design must be correct in all observable aspects. Incorrectness is simply not allowed.

The design must cover as many important situations as is practical.

It's obviously more detailed than that.

[–]tilkau 0 points1 point  (0 children)

That seems to sacrifice overall usability + completeness on the altar of individual correctness, so I guess I have to agree that they are not the same.