> I've also noticed that, up to a certain point, the smarter a person is, the more it has to be apparent in their work. Every algorithm needs to be perfect, every function needs to be side-effects free, every data structure needs to be the fastest, and every best practice needs to be followed.<p>Many engineers are somewhere on the Asperger's spectrum, as Temple Grandin tells her Googler audience in [1]. Overthinking is a prime symptom of it. I'm disappointed to see that not even mentioned in this article.<p>There are some engineering practices that, unfortunately, amplify this rather than tamping it down. Code reviews, in particular, can do that; a reviewer gets points by nitpicking ("you could have done that in one line instead of two!").<p>[1] <a href="https://www.youtube.com/watch?v=IA4tE3_2qmI" rel="nofollow">https://www.youtube.com/watch?v=IA4tE3_2qmI</a>