The problems in my next three books were scattered about with irregular problem numbering systems. The Empirical Rabbit Timer was not up to the job of telling me where to find every sixth problem, so I decided to modify it read free text instructions from a file. The Rabbit Timer could then simply read every sixth line of the file, prompting me on where to find each problem. For my next experiment, I used a simple code for the problem references:
In this example, “H33 2” means Heasman page 33 problem 2, “C39 1” means Coakley page 39 problem 1, and “P22 1” means Pandolfini page 22 problem 1. I also added a percentage progress indicator to the Ready screen. I could now experiment with repeating only those problems at which I did worst. I could do this by pasting the output file from the Timer into a spreadsheet, sorting it, extracting what I wanted, sorting it back into the original order, pasting it into Notepad, and saving it as text file.
I found that the original Rabbit Timer occasionally had a problem with double hits on the Enter key. If I double hit the Enter key when I was on the Start screen, the Timer would jump straight to the Score screen, recording a fraction of a second as my solution time. I could fix this problem by hitting the r (redo) key, but I occasionally failed to spot the double hit immediately, and then I had to guess the solution time. I fixed this problem by modifying the Rabbit Timer so the “.” key has to be hit to progress to the Move screen, and the Enter key has to be hit to proceed to the Score screen. These keys are together on the numeric key pad, which is rather convenient. Pressing any other key results in a beep.
I also modified the Rabbit Timer to update the Move screen every second to show the time that I had spent so far on the current problem, which made the “t” command redundant. [Also see: Empirical Rabbit Timer Source Code.]