Performance Enhancements Update

In yesterday's news item about Instrumenting the User Experience, I alluded to a pretty big enhancement that is the result of this effort. After we got the statistics working, the time to save many forms jumped out as unusual. We recalled that last summer, around August, our Software Architect Bill Marion had been able to get all of our forms closing in about 2 seconds, whether or not there was updated data to be saved.

Now viewing these statistics, we could readily see that some forms were having save times at or exceeding 10 seconds. In one case, it was consistently about 8 seconds on XP and 17 seconds on Vista. Although Bill was still working on the statistics project, we though "wow, here's a real chance to impact users. Since last summer we had the save times at 2 seconds, and we haven't changed anything, something must have happened with Windows."

So Bill dove into the code and was able to determine what was happening.

In a form like this Employee form, when the user clicks the "Close" button, our .Net code tells Windows to remove each of the 11 tabs you see above.

Score one for the Escape Design Team! This performance enhancement will be in the next release, due out in about a week. Speed is good!

Some change to Windows in the past 8 months or so has occurred, which tremendously slowed down the tab removal. What was happening was that we told Windows to remove each tab. As it began removing the first tab, the second tab tries to get focus and display itself, and at the same time, Windows is now trying to remove it. There was an internal "tug of war" going on you might say. There was about a .75 second battle for each tab, after which the remove code wins, and then the scenario repeats for the next tab. The different behaviors between XP and Vista show that these two operating systems handle these commands differently.

What Bill did was set a property on the tabs, before the removal, to tell them "you will not display yourself under any circumstances." This eliminated the tug of war. Now all our forms, at least on our tests here, are being closed down in approximately 2 seconds or less. XP is faster at this than Vista in nearly all cases. We anticipate that users are going to appreciate having these seconds back.