# Q: Reason for such varied software bugs



## Nom (Oct 30, 2018)

I’m really curious about why, from software update to software update, some group of owners experience weird bug X, another group experiences bug Y, others no bugs.

My simple way of thinking says the software should work consistently from car to car. A bug should show up broadly. 

What is the non-simple reason for the behavior we are seeing?


----------



## JasonF (Oct 26, 2018)

Nom said:


> I'm really curious about why, from software update to software update, some group of owners experience weird bug X, another group experiences bug Y, others no bugs.
> 
> My simple way of thinking says the software should work consistently from car to car. A bug should show up broadly.
> 
> What is the non-simple reason for the behavior we are seeing?


A lot of software issues depend on owner configuration and previous state. Previous state would be what combination of software updates occurred before the current one, and what it left behind.

For instance if your autopilot breaks in (example only) 32.1, and you skip 32.2 and upgrade directly to 32.3, you'll have a different set of issues than the people whose autopilot broke in 32.1 and upgraded to 32.2. Or maybe your autopilot will break in 32.3 because you missed 32.1, and the chain of events is different from those who started with 32.1. Then you have a few people with 32.3 complaining that Tesla never fixed the autopilot breaking issue because it's still there, where they actually fixed the 32.1 autopilot breaking issue, and the 32.3 breaking is because those people didn't get the 32.1 fix that broke the first groups' autopilot.

So basically, working on software can really suck sometimes.


----------



## Ed Woodrick (May 26, 2018)

Cars are different, people drive cars different, people use features differently, people live in different areas.

Microsoft and Apple have millions of testers for their products.


----------



## DocScott (Mar 6, 2019)

Nom said:


> I'm really curious about why, from software update to software update, some group of owners experience weird bug X, another group experiences bug Y, others no bugs.
> 
> My simple way of thinking says the software should work consistently from car to car. A bug should show up broadly.
> 
> What is the non-simple reason for the behavior we are seeing?


There's quite a bit of circumstantial evidence that some of it has to do with the install process not going right. Maybe some registers don't get set the way they should, or something like that.

There's an interaction with the firmware itself; depending on the firmware version, it might be vulnerable to certain errors in the installation process causing certain specific "bugs."


----------



## slacker775 (May 30, 2018)

There is also always the factor of different perceptions from different users. Sometimes - not always - something isn’t a bug so much as it is a users interpretation of how something should function vs how it is actually designed to function - rightly or wrongly. There definitely can be funky behaviors between different configurations as well. Fortunately, Tesla doesn’t provide micro-granular configuration options, and yet there are still a very large number of combinations that may or may not get fully tested between various releases.

Dealing in software dev myself, I find you tend to get the best results if you stay fairly close to ‘default’ settings as that is what always gets tested. If you really have to turn every knob just so, you may find you get unexpected results in the end. Shouldn’t be that way, but it’s just a fact of life.


----------



## garsh (Apr 4, 2016)

Nom said:


> I'm really curious about why, from software update to software update, some group of owners experience weird bug X, another group experiences bug Y, others no bugs.
> 
> My simple way of thinking says the software should work consistently from car to car. A bug should show up broadly.
> 
> What is the non-simple reason for the behavior we are seeing?


Welcome to the world of software development! 

This is completely normal. The testing that Tesla does before releasing software is very good, and tends to catch almost all of the "easy" bugs - the ones that would "show up broadly".

What remains are the "corner cases". Situations unique to a small subset of users.


----------



## Tesla Newbie (Aug 2, 2017)

This thread reads like a group therapy session for software developers. I’m in that group as well. We can all tell war stories of the bugs we release that are missed by testers and experienced by a small subset of users because the cause is some weird combination of seemingly unrelated factors. The challenge is explaining this to clients because their reaction always implies we did it intentionally. “Why would you apply the payment differently if the user has blue eyes and was born on a Sunday and the second digit of today’s two character year is not more than the second digit of today’s two character day?” I remember the occasions where I’d be screaming “Because it’s a bug, which, by definition, doesn’t make any sense!” silently while calmly explaining that the behavior wasn’t intentional and we would have it fixed by morning.


----------



## PTE (Jun 14, 2019)

I wish I could offer a simple answer. To a Complex on going software Issue. Many people think it is just a simple over write and a mouse click . But generally it isn't . Once the customer can find the hows & what to produce the problem , They tend to dwell on it and to the point where it gets pretty bothersome . The developer indicates , we didn't test or think the consumer would ever drive like that. At That point , the developers are in disbelief their baby may needs some outside help. That the time to hand it off to a outside group. That helps company's engineers get over the HUMP. They are well known and very secretive to their clients . AVL in Graus , AUS . Cheers PTE


----------



## GeoJohn23 (Oct 16, 2018)

The other thing that can, and probably does, impact things that I have not seen mentioned on this thread yet is the variation in hardware. Just like some iPhone software might say its to fix a bug in say an iPhone 7 that only affects iPhone 7s because of the unique hardware in that phone, there will be certain bugs in Tesla’s that might only affect those with some particular hardware revision... and unlike an iPhone that has maybe 10 hardware versions, with something as complicated as a whole car, particularly with Tesla’s known continuous improvements, it could easily be hundreds of individual hardware variations any one of which might not work exactly like the others, although they are supposed to be near-identical or only slightly different... All the previous comments about software-only variations (for example based on user perception, or user options selected) while valid are further amplified when said software is controlling a whole family of “similar” hardware....


----------

