Friday, February 15, 2008

On automatic backup vs. annoyances

In MacJournal 5.0.2, I turned on automatic daily backups by default. New in version 5 is the ability to cull the automatic backups older than a certain date so it wouldn't consume unlimited disk space, so I felt it was useful at that point to make it the default. While I don't think anyone would argue that backups are generally good things, the way MacJournal currently handles it could be improved. If you have auto-saving turned on, this will trip the backup mechanism if you haven't saved yet that day, which could force you to pause mid-sentence for a minute while it backs up. That's annoying. Also, if you have MacJournal in the background and it decides to back up then, it will bounce in the dock and jump onscreen to show the sheet. That's annoying. The second item is the default behavior for showing a sheet on a non-visible window, but I'm working to get around that for 5.0.3. I'm also thinking about ways to tackle the first point.

Waiting until quit to do the backup is out because some people (such as myself) never quit MacJournal, instead just closing the window and leaving it open in the background. Disabling the automatic backup and having a "Backup" option in the UI somewhere is also not favorable because remembering to back up is not always successful. This could still be added, but it is outside of the automatic backup issue.

Viable option #1 for me is to wait until the system is sufficiently idle to start the backup. Perhaps after 5 minutes of no activity in the application, it would do the backup. The same mechanism is already used to determine when to lock journals automatically after an idle period. Option #2 is to wait until you switch entries before starting the backup since that could represent a mental break anyway. I'm currently wrestling between these two options for 5.0.3. The hybrid option #3 is to just do both option #1 and option #2 and do the backup for whichever event comes first.

Leave a comment if you have any strong feelings one way or the other. It should also be noted that this progress sheet only comes up when the backup takes more than a trivial amount of time, so some users won't see it at all.