Look at the evolution of any complicated human-made thing - for example jet engines or even better computer hardware. Managing complexity in physical things is different and harder I think - because you're putting a stake in the ground deeper and earlier, as opposed to a software which, as the phrase goes, is just a collection of bits being fed into a machine.