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
What's wrong with the rational model We Don’t Really Know the Goal When We Start We Usually Don’t Know the Decision Tree – We Discover It as We Go The Nodes Are Really Not Design Decisions, but Tentative Complete Designs The Goodness Function Cannot be Evaluated Incrementally The Desiderata and Their Weightings Keep Changing The Constraints Keep Changing Frederick P. Brooks, Jr., What's Wrong With This Model? Changing constraintsDeciding what to designThe situation talks back