Long post / sorry...
TL: DR : Tesla runs a software rollout type known as AGILE. Most modern software companies do. And a key point of agile software methodology is to move fast and to fix the bugs as you move along. If you aren't ok with the bugs, you can drastically reduce them by disabling the "advanced" software update option.
----------------------------------------------------------------------------
Agile methodology pushes the company to be constantly evolving.
If they followed the old waterfall method, its true, we would have far fewer bugs, but we also would only get updates 2 or 3 times a year (maybe less). One major issue with waterfall is that by the time you get the software out, often, enhancements you spent money / time working on, are no longer relevant / useful.
Again, most software is rolled out this way now, and many, very large / public companies can be used as examples.
- Apple, how many bug fixes for IoS? They have released 3 bug fixes in a week and often have 5 or 6 for each new software package
- Android, 8 updates in 2 months
- Cisco, 8 bug fixes for their "firepower" firewall in 2 months
- Windows, I lost count
- Facebook / Chrome and many other are just as bad, if not worse
Yes, none of those companies build cars, but I would argue, a car is even more complicated. I am genuinely surprised we don't have more bugs than we do.
Also, software updates on devices such as the above are less noticeable as often they can be patched without your knowledge. Especially if some of the code is cloud based where running much of Tesla's code on cloud could be dangerous moving in and out of coverage.
The idea behind the "advanced" and normal software update options in a Tesla car is to help soften the blow / reduce the bugs that come along with Agile software development.
I do think they could wait a bit longer for those on the normal option to kill a few more bugs
but for those that choose "advanced", you are essentially signing up to take the bad, with the good to have the latest greatest features.