If you split a complex systems into a tiny pieces, you imo just shift a locus of problems from individual modules into their more and more complex network of interactions and emergent behaviors.
Hence you keep the number of pieces small to avoid the exponential interactions. You only ever implement what is really needed instead of letting feature creep and excess convenience work their way into your plane. It's not like N times more of that sweet complexity is required to fly a plane today than what was needed in the 80's or 90's.