Reflections on Software Performance An Article by Nelson Elhage blog.nelhage.com Performance is a feature Performance changes how users use software Performance needs effort throughout a project’s lifecycle Architecture strongly impacts performance Performance isn’t just about hot spots Performant foundations simplify architecture …we underrate performance when designing and building software. We have become accustomed to casually giving up factors of two or ten or more with our choices of tools and libraries, without asking if the benefits are worth it. performancesoftware
Useless work on useful things Anyone can verify by simple observation two important facts. The first is, that whenever humans design and make a useful thing they invariably expend a good deal of unnecessary and easily avoidable work on it which contributes nothing to its usefulness. The second fact is that all useful devices have got to do useless things which no one wants them to do. Who wants car to get hot? Or to wear out its tires? Or to make a noise and a smell? David Pye, The Nature and Aesthetics of Design The works of GodIf you have to do tedious workWe might as well make them beautifulAgainst form follows functionCombinations and arrangements function