My electric toothbrush and the flashcard (jMemorize, very nice) program I am using to learn Spanish both have timers. The toothbrush has a builtin 2 minute timer with beeps every 30 seconds to switch quadrants. I knew 2 minutes suggestion for effective brushing and thought I was fairly close; turns out not to be the case. jMemorize has a selectable lesson size either by time or by number of cards. Two 17 minute sessions works better for me.
Both have a problem handling interruptions, e.g. the phone rings or my wife asks me a questions. If you are creating a program or device with a timer, have a way to pause it. Only hermits have the luxury or reality of no interruptions, for the rest of us, most things need to be interruptable.