One thing that might make software fundamentally different from other stuff, is that before being able to make a meaningful contribution a person needs to invest X hours just to understand.
In most other creative fields, this can be hand-waved away. No other engineering field has anywhere near the complexity.
Therefore, all important people on a project are stakeholders of some sort, and anyone else is not able to make real improvements.
The project will move in whatever direction satisfies the incentives of the important stakeholders.