Power users aren't tripped up with an annoying confirmation. Novice users can revert. This seems a much better paradigm.
Are there any cases where this doesn't make for good UX?
Power users aren't tripped up with an annoying confirmation. Novice users can revert. This seems a much better paradigm.
Are there any cases where this doesn't make for good UX?
For example, in the case of deleting information, the easiest way to provide an undo function is to never really delete anything and just flag as deleted (something that doesn't free up storage, and if implemented without the users' knowledge, is abusive in terms of data privacy and ownership).
As for users not expecting the existence of an undo button in a web context, well, Gmail for instance has an "undo" link for lots of actions (archiving, moving to trash, etc.). I'm sure other web services provide similar things too.
I guess if it immediately gets soft deleted and in a maintainance batch gets purged. Until maint runs the undo link could still work (although it would still only display until they left the page).
Power users see it once, understand what'll happen and turn it off, no annoying confirmation after they've identified as a power user.
Novice users would, I think, feel better about a confirmation than an undo - if you need an undo you've made a mistake and that's not a good feeling, if you see a confirmation the service is looking out for you.
All that said, I can certainly see reasons for both - it's probably not really a black and white issue.