Of course, you cannot be always doing this, but if you are smart about things, then you will do it at times when it is right.

OK, what to do? Be purposefully stupid. Act as if you do not know, that way you cannot keep taking shortcuts. And then? Well, a stupid mistake is caused by doing something stupid. So, ask stupid questions and get to the root.

The software business (and sometimes we, ourselves) very often puts time pressure on us. This causes us to be in a "hard driving" mode. That, in turn, causes us to both make mistakes and use up our time in fixing them. Time pressure goes up further. No time to think? No, we can see through that.

There is always the drive to be better and faster. We take shortcuts in reasoning. Much of the time that works fine (or we would not do it). The problem is that it does not work all the time. Shortcuts are sometimes mistakes. Not until later do we find that out. We end up spending too much time backtracking and debugging.

"But when the vessel is sinking, you come to me and hoist the sails." — Epictetus, The Discourses, III.2

II.