In an effort to blog even when I’m in a coding frenzy, I bring you this bit of bragging…
Last month I talked about AQtime, a tool I use to locate performance bottlenecks in my code. One of AQtime’s features that I neglected to mention is its comparison engine, which enables comparing the performance of different versions of the same routine to find out which one is the fastest.
Among the most-frequently called routines in FeedDemon is one which returns the location of a feed in FeedDemon’s internal database. This routine is called every time FeedDemon updates a feed, draws a feed on the screen, shows a feed in a newspaper, etc. (in other words, its performance affects the performance of a lot of other routines). When I first coded this routine, I did it very quickly so I could move on to other stuff, and I planned to come back and tweak its performance later. Of course, that never happened.
So this morning I finally bit the bullet and used AQtime to compare various ways to boost the speed of this routine. Much to my surprise, I soon found one that was over 10 times as fast as the existing code.
The lesson? It’s a mistake to keep putting off the little things you could do to improve your application. I should’ve done this a long time ago, since it makes so many parts of FeedDemon even faster than they already are.