Use case: Alexander Batischev
@liw asked for use-cases, so here goes mine.
I store my backups on a LUKS-encrypted USB-HDD which I keep disconnected most of the time. The backup process is scripted, and that already requires two passwords (
cryptsetup), so I'd prefer Obnam not to ask for anything more. ⅔ of my data are various caches and compilation artifacts which I don't want to back up, so I use CACHEDIR.TAG and exclusion rules to ignore those. I'm fearful of my backup media going bad, and I think deduplication amplifies the consequences of a bad disk sector, so I run whole-repository checks from time to time. This is a lengthy process though, so I often procrastinate. I'd appreciate if Obnam could do incremental checks, maybe even automatically right after the backup (as I usually start the process and walk away for a few minutes, while the backup only takes about a minute). I only had to restore a backup once in my life, with Borg, which has an interface similar to
obnam list/list-files/restore, and I wasn't pleased with how much typing that required. Chances are, I'll have to do a dozen more restores, and I think I'd be happier with Obnam1-style
obnam mount, which is way more intuitive IMHO.
I also have something of a "meta-use-case": I want a backup solution (not just a program!) that I can recommend to people who don't do backups yet. This is a high bar, but I think it's important to have a vision :) This also tips my hand a bit, showing what I'll lean towards in any given discussion.
Thinking back to my experience doing my first backup with Obnam1, accounting for what I learned from migration to Borg, and taking cue from UX on Android, I think the use-case for a backup newbie goes something like the following.
The person never made backups, and has no idea how to do them. They need a document that would engage them and explain just enough to get them started. The setup is as fast and easy as technically possible; no fine-tuning. There is no assumption about what they use for backup media, but there is an expectation that they might upgrade/switch later on. At all turns, everything looks and feels simple; if there are any non-essential commands or options, they are relegated to a reference section of the docs, and hidden from
obnam --help by default.
The interface is so simple that you can enumerate all commands and explain them in a single breath. After the tutorial (which includes setup, initial backup and test restore), the user should feel that they've mastered the program, and there is nothing more for them to learn about it. They should have a clear understanding of their next goal: develop the habit of backing up regularly. There should be hints at what other topics might be worthwhile to explore next (e.g. disaster recovery planning, or the types of media and their usefulness for backups), but there should be no pressure to pursue any of them.