I have bewilderingly tried to discern why software development continues to grow more and more complex. It wasn’t always like this. There was a time when we talked about languages and OSes and libraries as if they made a difference on how much you could get done with as little people and cognitive load as possible (the claims were very much overrated, but the point was we acted like it mattered). And then it started…
Any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization's communication structure.[2][3]
— Melvin E. Conway
The problem isn't necessarily software itself, but how we organize people (more than 2 or 3), how we communicate, how we mirror operations, expectations, etc. in software.Scaling sustainable software feels like an "unsolved" Problem, because the society hasn't figured out how to organize better.