This lines up with a principle from the Toyota Production System (TPS) in manufacturing--reduce complexity.
In TPS, they found that a focus on reducing complexity leads to improvements in the metrics you'd want to measure: better quality, reduced costs, and customer satisfaction.
Complex, no. But many other things than complexity add to the cost of making something and a lot of those do not scale to higher volumes in any way like complexity does. Indeed cost-saving innovations often increase complexity in order to reduce those other components of cost (the hoops engineers wind up jumping through to save fractions of a penny in high-volume products is crazy. For a mild example, having a full network inside a car increases the complexity drastically, but decreases the cost of making up the wiring in the car a little)
OTOH, reducing complexity is one of the most important things in working on an engineering team. Having “one” way to do things rather than the nnn*n helps anyone new to be able to focus more on the system itself rather than picking up a new tool for every task. There’s 1000 ways to build something and the lack of structure makes people feel overwhelmed easily when trying to learn.
I don't think complexity explains it. There are plenty of industries that handle equal or greater complexity with greater reliability. I think the issue is that the industry is extremely cost-sensitive, and anything that lowers the cost of production is valued above quality. Not just by the industry, but by the industry's customers.
You see the same thing in a lot of places. When people talk about shopping at Amazon, Wal-Mart, etc., they don't talk nearly as much about quality as about getting the lowest price. Well, the lowest price means cheap junk.
Reducing either form of complexity certainly costs resources, but I think the point is that they are not necessarily antagonistic goals- they might even come as a package deal, to some degree.
I agree complexity is worth considering, though part of me wonders how important that is in this case. The reason for this intuition is that this is one of core parts of what they’re selling.
If you’re going to invest your complexity budget somewhere, it seems like this is a good place for companies dealing with these structures.
“Complexity can be tamed, but it requires considerable effort to do it well. Decreasing the number of buttons and displays is not the solution. The solution is to understand the total system, to design it in a way that allows all the pieces fit nicely together, so that initial learning as well as usage are both optimal. Years ago, Larry Tesler, then a vice president of Apple, argued that the total complexity of a system is a constant: as you make the person's interaction simpler, the hidden complexity behind the scenes increases. Make one part of the system simpler, said Tesler, and the rest of the system gets more complex. This principle is known today as "Tesler's law of the conservation of complexity." Tesler described it as a tradeoff: making things easier for the user means making it more difficult for the designer or engineer.”
? Donald A. Norman, Living with Complexity
There is a good book about this. It changed my thinking about complexity. The key insight is that if you don't manage complexity you will drown in it. Complexity is OK as long as it really earns its keep. And a lot of complexity is not worth it. (I speak as a person who just spent 20 hours - less than the IRS's estimated 30 hours - filling in form W-8IMY for the IRS, a form which started as a bright idea by someone in congress).
"Conquering Complexity in Your Business: How Wal-Mart, Toyota, and Other Top Companies Are Breaking Through the Ceiling on Profits and Growth Paperback"
by Michael L. George and Stephen A. Wilson
Complexity is anything that makes it hard to understand and modify a system.
I disagree with this. It's overwhelmingly more difficult to design something simple, or modify it so that it stays simple.
Coming up with complex solutions is easy, the cost is the time and resources it takes to deal with that monster. Somebody has to read all that, walk through all that, and machine all that, and assemble all that.
Much of progress comes from figuring out simple solutions to problems, which frees up time and resources for other things. It must, in the end take less effort to make and operate the machine than doing it by hand, no matter how much it may seem to the contrary, because otherwise it wouldn't be worth it.
Complexity is just another part of natural systems. It's not something to be avoided for it's own sake, in as much as we should avoid having eyeballs, because they are crazily complex. Yet we tend to like ours and find them worth whatever cost they incur.
The emergent behavior of containerization has had an overall positive effect, even if it has annoying costs.
In TPS, they found that a focus on reducing complexity leads to improvements in the metrics you'd want to measure: better quality, reduced costs, and customer satisfaction.
reply