KDE Plasma embraces this principle with widget deletion, and I believe the KDE UI guidelines pushes this kind of stuff.
I have to say, it's a joy. No additional pointless step / confirmation when I delete stuff and really mean it, which is most of the time, a way back the odd time when I did indeed delete something wrong.
Relatedly, trash bins and file removals without confirmation work very well for the same reason. Let the users empty the trash when they are done, or let a timeout after which deleted item are really deleted from the trash. Less work for everyone, but one more free safety net for the users.
I agree, I have coded undo stacks, it's a bit of a pain (assuming you mean a stack that allows you to undo and redo).
Although strictly speaking, you don't always need one, just a list of stuff the user can restore, in any order. That's because you don't always have dependencies between stuff, and/or you don't always need to be able to redo.
Or even one cell to be able restore the last deletion, that's already a step in the right direction and strictly better than the confirm dialog.
By the way, Plasma might be doing it this way (the list or the cell), you can't arbitrarily undo and redo stuff to my knowledge.
KDE Plasma embraces this principle with widget deletion, and I believe the KDE UI guidelines pushes this kind of stuff.
I have to say, it's a joy. No additional pointless step / confirmation when I delete stuff and really mean it, which is most of the time, a way back the odd time when I did indeed delete something wrong.
Relatedly, trash bins and file removals without confirmation work very well for the same reason. Let the users empty the trash when they are done, or let a timeout after which deleted item are really deleted from the trash. Less work for everyone, but one more free safety net for the users.