5 ms·
That's why the thing about "premature optimisation is the root of all evil" is mistaken and wrong in these modern times and yet many people still quote it and t
by andrewstuart 7y ago
That's why the thing about "premature optimisation is the root of all evil" is mistaken and wrong in these modern times and yet many people still quote it and take it to heart and as a result don't prioritise speed when building software.
"premature optimisation is the root of all evil" is a saying that came from 1974 when computers were slower, languages were less effective and development processes immature. Today you should make your software fast.
- codegladiator 7y agoWouldn't modern times make it more relevant ? I would choose "don't worry about speed, make it happen first".
- andrewstuart 7y agoNo I think speed is a primary feature, not a secondary one. As the article says, users relate completely differently to a responsive application.
- codegladiator 7y agoThe point remains that modern hardware is already super fast. Besides, avoiding "premature optimization" is to avoid efforts to speed up parts of your code which were never a bottleneck. No one is arguing for writing slow code.
- Ma8ee 7y agoYou didn’t read the post, did you?
- Nyandalized 7y agoOptimization is an easy trap to step in. You can take it up in other layers aswell, optimizing your choices about the choices to optimize | Ad infinitum. At some undefined point you may realize that you are trying to solve an undecideable problem. You can spend an infinite amount of time, and not get an answer. You cannot build an algorithm to determine the amount of time that an arbitrary problem can be solved in, or if it's solvable in the first place. You must make a choice based on imperfect knowledge.
- beat 7y agoPremature optimization is as much a problem today as it was in 1974. When you build a framework to support a feature you decide to never implement, that's premature optimization. I'm not concerned with optimizing code, generally. I'm concerned with optimizing developers. Don't waste time on unnecessary work.