“Programmers waste enormous amounts of time thinking about, or worrying about, the speed of noncritical parts of their programs, and these attempts at efficiency actually have a strong negative impact when debugging and maintenance are considered. We should forget about small efficiencies, say about 97% of the time; premature optimization is the root of all evil.”
I never thought of this quote outside the context of programming before reading it here, but it does seem pretty generally applicable. The force behind premature optimization is the force that causes me to spend so much time comparison shopping that the time lost eventually outvalues the price difference; or to fail to give money to charity at all because there may be a better charity to give it to. (I’ve recently started donating the dollar to Vague Good Cause at stores and restaurants when asked, because it’s all well and good to say “SIAI is better,” but that defense only works if I then actually give the dollar to SIAI.)
--Donald Knuth (see also Amdahl’s law)
A premature really powerful Optimization Process is the root of all future evil.
“The first rule of code optimization: Don’t.”
I never thought of this quote outside the context of programming before reading it here, but it does seem pretty generally applicable. The force behind premature optimization is the force that causes me to spend so much time comparison shopping that the time lost eventually outvalues the price difference; or to fail to give money to charity at all because there may be a better charity to give it to. (I’ve recently started donating the dollar to Vague Good Cause at stores and restaurants when asked, because it’s all well and good to say “SIAI is better,” but that defense only works if I then actually give the dollar to SIAI.)