Factoring in performance

I just finished reading an excellent piece by Paul Vick relating to the performance of code. I think that this is especially relevant now that I'm starting to write components and working on larger applications.

The Ten Rules of Performance

My favourite quote: The price of speed is eternal vigilance.

A couple of rules that were mentioned that I'd like to add some thoughts to are:

Rule #4: Assume things will always get worse

When developing applications it's very easy to get into an "eyes-down" state; that is, you become that focussed in on coding up an idea that you've had that bugs and other logic errors can easily creep in. For this reason I think that it's important to have an "eyes-up" after each little coding milestone and take a look at the state of the application and evaluate what's going on. In short, ensure that you pad each coding milestone with a planning stage and an evaluation stage. Don't worry, you still get to write the "elite" code in the middle phase ;-) you just don't get to revisit it as often in the future :-)

Another couple of pertinent points:

Rule #10: Don't do anything unless you absolutely have to
Rule #8: You’re either part of the solution or part of the problem

Problems which seem abstract or hard to solve are often left atop a TODO list; it's amazing how often delving into these kinds of things can reveal so much about the true nature of computer programs and the ways that pieces of code interact with one another.

No Comments