There is a quote from Louis Nizer that applies here:<p><i>&quot;He who works with his hands is a laborer. He who works with his hands and his head is a craftsman. He who works with his hands and his head and his heart is an artist.&quot;</i><p>Its that last part that is hard to bridge for a lot of engineers. The thing that did it for me was sitting through a LOT of formal usability studies. Seeing folks actually use an application you made, where they make mistakes, get stuck, will change your relationship with your code. Even if you work purely on the back end building APIs, you have customers (other developers in this case).<p>Focus on the what the code does, and why someone would use it, care about your customer... the how only matters to your fellow engineer, and if it is that bad they are going to give you grief for it and you can fix it.