Hmm... I've worked in software development a long time and take issue with a few of the assumptions you're making. I obviously do not work for Tesla nor do I have any insight into their operations, but I do know industry best practices and I've seen my fair share of software approaches.
Yes. I think we should. The random movement of UI objects shows a lack of control over the software features. The changing of how mute works ( or not) on every release shows that nobody is in control of the UI changes. They happen willy nilly as some software guy/gal thinks their role in the universe is to make the mute work how they like. Then next month, another software guy/gal comes along with their preference.
Yeah that's really not how software design works... at least anywhere that makes decent software. There's massive amounts of continuity even if you have developers rolling in & out. It comes through requirements, business analysts & stakeholders that follow the SDLC of a project, not the individual humans. Although yes, people do inflict their own judgment on implementation, it's not like a single software engineer just makes a decision to change a UI without telling anyone. There are multiple teams and processes in place to prevent that type of thing from happening.
The change to mute was a bug. If I had to guess at root cause, I'd guess some team was given a requirement that said something like "Disable the left scroll wheel depression functionality when parking sensors are active to prevent users from switching away from parking sensor view." For safety reason, they don't want you accidentally changing to tire pressure graphics when critical information regarding your parking sensors are up on the view, then having you smash into something. Now whoever created this requirement of disabling of the left scroll wheel depression functionality probably did not intend to disable mute, just the "hold down to switch view" functionality. This was likely an unforeseen impact that the team working on the issue missed.
That's an assumption on my part... but that stuff happens
all the time with requirements and coding.
It's really easy to design & read specs that tell you what something will do. It's not so easy to try to analyze what
else it will do that you didn't intend.
That, in my experience at least, is where most bugs are born. Not from sloppy code, but from unanticipated conflict.
While I hope the AP and UI teams are different, I worry about a corporate culture. Even on the software that drives the car, how come the regen strength changes on nearly every release? It's because one guy says "too much", and the software guy/gal changes it, and the next time, some other guy says "not enough", and the same or other software guy/gal changes it again. What the hell? That's not now to run a large, complex piece of software that literally holds people's lives in its control.
This is a lot of speculation and I would have to imagine... is incorrect. Individual engineers program to spec, not to preference. Specs are reviewed by engineers, architects, business analysts, software testers, hardware testers, etc. etc. A system as complex as a car, even the "lightweight" entertainment systems, would require stringent controls to ensure safety. Not just people making whatever changes they feel like.
The other challenge Tesla has (which is also a good thing) is that there is a very strong, hands on CEO at the top. While this is awesome, and Tesla would be nowhere without Musk, it also has challenges when the head guy demands schedules that likely can't be met, and at the same time is constantly dropping in on the software team with his own thoughts and wishes that likely change from day to day. Working for that sort of person can be a damn challenge, and the end product often shows the 'hands on' attention. For better or worse. Clearly Musk has never used the nav system and had it tell him to return to a supercharger he just left to charge for zero minutes. If so, he'd have fired the responsible party. Perhaps he has which is why it was only fixed (I hear. I haven't been to an SC since) in 7.1.
From what I can judge of Elon, I bet he does meddle and poke in with the engineers. He seems like the kind of person to do that thing and yeah, when execs do that it can wreak havoc. I've had multiple instances already this month of execs over-inputting, signing us up for unrealistic timelines or making decisions that should be left to engineers.
A coordinated organization should have controls around stuff like that... a CR/CRB process that is designed to protect the organization against an individual influence like that. Remember that some of these systems, particular the drive/safety systems, are not to be treated lightly and any change would require massive amounts of vetting & testing.
To assume Elon hasn't used any features or is unaware of their flaws seems a bit naive to me. You probably engage Nav even when you don't really need it. I do sometimes. Why wouldn't he?
This isn't all Tesla's fault. All large software projects turn to crap as they get large and the key software folks move onto other, more exciting projects leaving the 'average' software folks to maintain the thing. The tech industry in the USA is nearly always full of exciting opportunities for smart software people; at some point, working on a large, bloated piece of software for 3-4 years is no longer fun, and the key guys/gals move on. It's inevitable.
Large software projects that cut corners in their SDLC and processes turn to crap. A well maintained machine doesn't. And while many people will go off chasing the next shiny thing... like I said previously systems should be in place through proper project management to mitigate that. And honestly, what could be more shiny than working on Teslas?
We should be concerned. Not necessarily because it's Tesla, but because it happens to all large software projects. It's inevitable. There's no excuse for the number of times I've had to reboot my center display with the two scroll wheels to restore some functionality (nav system updates, the screen was all black one morning last week when I got in, the 3G connectivity sometimes gets lost until I reboot, the blind spot warning horn sounded one time (legitimately), but stayed on until I rebooted, etc, etc. Basing the software in both the instrument cluster and the center console on Linux means both are no more stable than the underlying OS. Yep, like every complex OS, Linux does strange things from time to time. Add complex UI and GUI on top of that, and it only gets more unstable. It's the way consumer grade computers and software works.
Software is a tricky beast no doubt. You say you had to reboot your display multiple times. I think I've done it three times in 13 months... twice to show people how it could be done, once to fix a wonky issue.
So after all that... where'd the button go? Who knows. Was it some rogue agent, some engineer with a vendetta against that button and thought it should die?
Probably not.
It could've been intentionally removed based on some instructions or design that we don't have insight into. Probably, it was just a bug, an accident that would have any root cause. Software is written by humans (for now) and tested by humans (for now) and until the glorious machine revolution (and, according to the Matrix, even afterwards too) it'll have bugs despite the best practices or efforts.
Maybe some developer working on changes for a media redesign in version 7.x checked his code into the wrong branch and it got picked up in the build for 7.1. Happens all the time. And the testing team, not expecting any changes to the media center did a lighter than average regression in that area and missed that change. Now hopefully they'd be doing some level of S/W CM auditing that should pick up a code change in an unanticipated area but even that is not a guarantee that a single stressed or distracted human might have missed it in an audit.
Anyway now I'm making pretty broad assumptions about how Tesla runs their shop.
If a rogue engineer, whether working on UI design or drive systems like regen, has the ability to make changes willy-nilly on personal preferences then the wheels would be falling off these cars. Not that they're perfect (I just started a thread complaining about a bluetooth issue)... but I've seen (and worked on) worse software