The past definitely had bugs, but I don't remember anything as bad as the current state of QA. Mostly I attribute it to the fact that in the past it was much more expensive to roll out fixes, so you'd better be sure you are almost right when you ship. Now it's like "Meh, we can issue a patch next week if there's a bug. SHIP IT." This is actually demonstrable - it's not just "get off my lawn" nonsense.
While that does happen, a bug introduced into an
update is a different matter. Something like malwarebytes get constant updates, because the threat environment is constantly changing and the target hardware / operating systems are constantly changing. But it's also similar to e.g. Dwarf Fortress. if the dev tries and whacks all the bugs before shipping, then a much larger percentage of their time is spent looking for elusive bugs, while if you
ship it, everyone can find and report bugs, meaning the dev's time is much better spent and the overall cost of production drops. The point isn't that they
left bugs in, it's that it's actually more time-consuming to
find the bugs than to fix them. 100 people testing a program for 1 year will encounter the same number of bugs as releasing the program to 10,000 people will in 3.6 days. Anything that gets constant updates is effectively always in the beta-testing phase.
Basically it's a rock and a hard place - do you only ship updates to virus software after testing them on every possible configuration to make sure there aren't minor bugs? No, because people are getting infected with the latest attacks while you're off doing that. You ship it with
critical bugs fixed and up to date threat protection. Any bug that doesn't wreck your system is secondary because anti-malware makers and in an arms-race with malware makers.