"I may be wrong. I am often wrong." I say this out loud all the time, any time my knowledge/expertise is involved, and I'm trying to be better about saying it in writing as well. It works like an affirmation, only to encourage recognizing my own fallibility, rather than boosting my confidence. Closely related... recognizing that everyone , including me, is just a thin coat of reason smeared on a dumb animal brain. Ev…
My reasoning is often conjured ex post facto as well, with my brain tricking me into thinking I had good reasons to do something before I actually thought of the reasons. Our brains use reason to justify what we already did more than it uses it to choose what we will do.
Often when we see code, we have a feeling of ‘dirty’ or ‘clean’. An internal reaction that pushes us in some direction. It’s worth questioning why we think that about some things, but I think we eventually develop a sense of what is a good pattern and what isn’t and we actually use the emotional reasoning of our brain to guide us effectively in writing code. Perhaps we wouldn’t even be effective programmers if we had to actually think through full reason each time.
Less applicable when reviewing code, of course.