In some ways this is a good question to ask, but much like a statement in legacy code, it's sometimes unclear why a rule exists until after you remove it, and then it's too late.
If only there were unit tests for real-life bureaucracy...
In some ways this is a good question to ask, but much like a statement in legacy code, it's sometimes unclear why a rule exists until after you remove it, and then it's too late.
If only there were unit tests for real-life bureaucracy...
The term for this, in case anyone is curious, is Chesterton's Fence.
> In the matter of reforming things, as distinct from deforming them, there is one plain and simple principle; a principle which will probably be called a paradox. There exists in such a case a certain institution or law; let us say, for the sake of simplicity, a fence or gate erected across a road. The more modern type of reformer goes gaily up to it and says, "I don't see the use of this; let us clear it away." To which the more intelligent type of reformer will do well to answer: "If you don't see the use of it, I certainly won't let you clear it away. Go away and think. Then, when you can come back and tell me that you do see the use of it, I may allow you to destroy it."
- G.K. Chesterton.
Not called unit tests but we have something similar here in Norway:
- 5 or more weeks of mandatory holidays. (both you and your boss get trouble if you don't use it.)
- maternity/paternity leave (more than a year combined IIRC, and while it won't land an individual in hot water legally, -everyone including your boss expects you to take advantage of it. Oh and it might land the company in hot water if they prevent anyone from using it which might explain why even the company often actively encourage it.)
It works mostly the same:
- like unit tests it verifies that the organization works, including edge cases like "what if half the company is away for two weeks at the same time". (The last point is encouraged by design it seems by specifying that at least two of the weeks should be in the summer.)
- like unit tests it might seem like a giant waste but turns out to be useful in the long run.
Impossible. Our handsomest politicians assure us that even 2 weeks vacation is pushing the bounds of outright societal collapse!
"We struggle to deliver the features we promised and you say we should create test code as well?"
The thing is those people who designed the systems designed it to make their jobs relevant in it.
Which is why most companies fail to turn around. You can't use the management to fire the management. They are always going to come up some cause for the problem, which excludes them.
Maybe the communist/socialist bloc would've been more successful if they had retained multiple state-owned corporations in each sector and allowed for competition between them.
Disclaimer: I was born in 1989, so everything I know about communist/socialist economy, I know from books or from talking to my parents.
If you allow multiple corporations but oblige them to follow the same plans, that does nothing to address the problem. If you allow the corporations to compete in a market economy then, well, you have a market economy.
Or for legacy code.