I disagree with the premise that programming is harder than e.g. bridge-building. I’ve not been involved with a bridge-building project, but I’m pretty sure they’re just as filled with crazy people doing stupid things. I’m also pretty sure that when bridge experts look at an average bridge they can tell you exactly why it was poorly made. That doesn’t mean the bridge isn’t suitable for transporting things across it, just that it is merely adequate. Just like most software is merely adequate.