Better operating systems and languages would be a big help. We need to change this. As Bruce says, it has long been recognized that these flaws are a problem. Bruce didn't mean to do so. You can only lead the horse to water.
More features equals more security holes.
Yes we can make it better. Finally, I want to address the point of software liability. This is somewhat self-serving. I think can survive in that world. Microsoft, in my opinion, does not.