I think one of the takeaways from the article is that fixing bugs is an iterative process. I don't write software, but I can relate because I write words. My first drafts usually suck; there are loads of "bugs." So I do an edit, and quash most of the serious ones, like typos, bad flow, etc. Then I do another edit to clean up phrasing, and try to find statements that can be interpreted in more than one way. Then it gets down to a comma here, a semicolon there. Eventually, I find no more issues to correct, and then submit the article for publication.
However...if I re-read it a year later, I see things that could have been said better, and I think I should have done another edit.
The problem is that software is written by humans. As long as there is human error, there will be software bugs, car accidents, missed appointments, football fumbles, plane crashes, automobile recalls, unanticipated side effects from drugs, botched appliance installations, etc.
Come to think of it,
software doesn't have bugs...
humans have bugs that get transferred to the software