Author Topic: Unintended timeouts  (Read 185 times)

duncan

  • Newbie
  • *
  • Posts: 1
    • View Profile
Unintended timeouts
« on: January 09, 2010, 12:10:26 pm »
Consider the following scenario: You're coding on your computer, with Time Tracker running and the "Stop Running If Idle" feature enabled. You lift your hands off the keyboard to look up an algorithm in Knuth Volume 4 Fascicle 1. The explanation is a bit complicated, so you have to spend some time puzzling it out. Finally after 25 minutes you look up, and the Time Tracker window has popped up, which means the 25 minutes of hard work have been ignored, and you have to manually add a work record.

Feature idea: Instead of defaulting to ignore, give the user a choice of whether to ignore the idle time or add it to the current task. If they stepped away to go to lunch, then they can select Ignore. If they were working on something relevant to the current task but not involving the keyboard or mouse, they can select Add.

Yes, there is already a Do Not Timeout button for this scenario, but who remembers to click it when you're working away and Time Tracker is running in the taskbar. Better to have the program ask you when you get back to the computer whether you were doing something productive. Of course, make the current behavior the default, but allow people to turn on this option.

- Duncan

NLIdeas

  • Administrator
  • Newbie
  • *****
  • Posts: 4
  • Software Is Easy - People Are Hard
    • View Profile
    • Email
Re: Unintended timeouts
« Reply #1 on: January 11, 2010, 06:01:53 am »
Duncan,
   Clearly, you're a better man than I am; I could never get through any Knuth section in 25 minutes.

    Let's talk about how this might work.  Knowing that it has "potentially timed out", TT would have to cache the time at which it thought it timed and instead continue to accumulate time.  It would also have to display a dialog to let the user know they have a choice.  Upon making the choice either the record is left alone and running (not accepting the timeout) or the record is sliced off by the difference between the record time and the cached time.  If the dialog is being displayed, the user can't alter the start time, so there shouldn't be any weirdness with altering the time to before the start of the timeout.  Most of the machinery for this is already in place (timeout mechanism, adjusting record end times at stop, etc.).

   A persistent setting will have to be added to the configuration (takes about 15 minutes from GUI to persistence including the version check for backwards compatibility).  The biggest part will probably be the testing.

    I'll add it to the mod list for the next release.  It may not make the cut, but it looks like something that would probably get into the application.

Thanks,
james

P.S.  I didn't realize anybody was actually using the "Idle Timeout" feature.  I guess we may have to revisit the decision to cull it from the Time Tracker Multi-User version.

james