Systems should always be maximally forgiving and reversible.

No good systems should require Measure twice, cut once

iOS is a good example of this. I recall from a reading of the iOS Human Interface Guidelines a few years ago that users should always be given the opportunity to undo an action taken by pressing a button.

This had a big impact on me in thinking about good Interface design

This probably had something to do with how new touch interfaces were and New interfaces need to be forgiving