nearlogic.com

a programmer’s blog

Underuse of the Hourglass

I have a new rule. I must insert mouse cursor changing code at the beginning and end of any block of non-threaded code that takes control away from the user - no matter how short the code is.

I started thinking about this after a program I wrote at work was found to be too slow in testing. Watching how a user interacts with the app made me think “I need more hourglasses”. I then added the couple lines of code to provide that user feedback, in all of the button presses, and menu commands, and sent it back to the user. The reaction: “program is now much faster”. I didn’t improve the speed of the code at all, but that was the perception.

I think this is a common problem in many apps. Users only need a simple indication to tell that the program is working, otherwise the program seems slow or unresponsive. Apps accessing components that have an unknown response time are the worst offenders. The biggest being Internet and hard drive interaction. There is no way to tell access times on either of those, and a programmer can easily fall victim to a solid Internet connection, or a hard drive that isn’t being defragged while running your program.

So my new rule is to overuse the hourglass (AKA the ‘busy circle’ in Vista)

No comments yet. Be the first.

Leave a reply

Banner