I think that the kind of mental state that you put yourself into when programming leads to a de-humanization of the self (and the computer, obviously) which is very problematic for a person who wishes to explore the human condition ("create art").
I think this is at the crux of things.
Engineering is about dealing with machines while art is about dealing with people. As such, the fact that authoring for a computer requires engineering seriously damages the potential artistic impact. One solution is for engineers and artists to work together more closely. And this happens when the engineers create tools that artists can use. This is not easy since engineers and artists speak a different language. I know from experience that engineers don't really understand how artists create.
And since they tend to be very intelligent people, they have a hard time accepting that they do not understand. To the point where they might accuse us about lying about our process and acting needlessly mysteriously. I've had more than one programmer tell me that, with the understanding of programming that speaks from my work, I might as well be coding directly in C++. I know for a fact that this is not true. Even the small distinction between programming graphically in Quest3D and programming through scripting in Unity shows the difference: our Unity projects are very small and modest in comparison.
It's a lot like thinking too much about the game mechanics when designing a game.
Indeed. The main reason why competitive and puzzle games dominate in videogames is probably simply because programmers dominate their development.
This of course makes it even harder to for artists and engineers to come to terms. The artists are basically asking the engineers to step down from their dominant position and give up their role as authors to the artists. In a commercially successful studio this problem is even more difficult. But it's a necessary step to take towards the maturity of any expressive medium.