Anyone with the authority to make a structural change should be responsible for all the side effects it brings to all the known behavior of the system.
Anyone who creates a new microservice must also add it to the e2e test; the old tests should not be slower than before.
I think one of the big reasons this imbalance is so prevalent in software is that our society as a whole works like this. Governments works like this. Most companies works like this. Most management chains works like this. Even the traditional family works like this. It's really hard to create a little bubble of balance in such a hostile environment. Even harder as we, or at least most of us, have learnt that this is how it should (or even must) be.
That said, I try to understand my own placement and act differently to the norm on a daily basis. Not just in software but everywhere else as well. And I know that I'm not unique in this. Loads of people do. :)
@HFZ
It is not only about power the software also needs to be changeable!
Anyone with the authority to make a structural change should be responsible for all the side effects it brings to all the known behavior of the system.
Anyone who creates a new microservice must also add it to the e2e test; the old tests should not be slower than before.
Yes, and… why does this not happen consistently in practice?
The decision-makers for the organizational structure & process are usually not good enough programmers.
But Kent, you've been working in environments where good programmers get a chance to decide. Does that make any difference?
Or do even "good" programmers believe that you get productivity by pushing down the responsibility?
"People with power grab authority & push responsibility down to those with less power."
In one sentence, why Agile failed.
I hope we can come up with a different, better solution to defend the principles, because they are still good!
I think one of the big reasons this imbalance is so prevalent in software is that our society as a whole works like this. Governments works like this. Most companies works like this. Most management chains works like this. Even the traditional family works like this. It's really hard to create a little bubble of balance in such a hostile environment. Even harder as we, or at least most of us, have learnt that this is how it should (or even must) be.
That said, I try to understand my own placement and act differently to the norm on a daily basis. Not just in software but everywhere else as well. And I know that I'm not unique in this. Loads of people do. :)