80/20 rule ⇝

eighty-twenty rule


The program-design version of the law of diminishing returns. The 80/20 rule says that roughly 80% of the problem can be solved with 20% of the effort that it would take to solve the whole problem.

For example, parsing e-mail addresses in "From:" lines in e-mail messages is notoriously difficult if you follow the RFC 2822 specification. However, about 60% of actual "From:" lines are in the format "From: Their Name <user@host>", with a far more constrained idea of what can be in "user" or "host" than in RFC 2822. Another 25% just add double-quotes around "Their Name". Matching just those two patterns would thus cover 85% of "From:" lines, with a tiny portion of the code required to fully implement RFC2822.

(Adding support for "From: user@host" and "From: user@host (Their Name) " brings coverage to almost 100%, leaving only really baroque things that RFC-2822 permits, like "From: Pete(A wonderful \) chap) <pete(his account)@silly.test(his host)" or the like.)

It is an eternal question whether too much attention is paid to the 80/20 rule (leading to systems that are irrevocably broken for "unusual" cases), or too little (leading to systems that sacrifice usability in the typical case, just so that rare cases can work properly).

Compare: KISS Principle

Last updated: 2003-11-17

Nearby terms:

eight queens puzzleeighty-column mindeighty-twenty ruleEIRPEISA

Try this search on Wikipedia, Wiktionary, Google, OneLook.