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 ", 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. 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

Free Online Dictionary of Computing