Toyota Unintended Acceleration and the Big Bowl of “Spaghetti” Code (2013)
safetyresearch.net
safetyresearch.net
I can understand tweaking it down in the rating algorithm, but if there's enough people that want to chime in that it makes it to the front page even after it's been covered before, removing it entirely seems fairly heavy handed.
The present case is especially clear cut because there were two major recent discussions of the story.
Companies like Toyota generally outsource software development to other companies like Bosch. Bosch employs a bunch of programmers in Bangalore who are just out of college, and pay them peanuts to develop a safety critical system.
* they are part of a big enough team that individual responsibility is removed
* they're not given enough time to produce good quality code
* the design came from someone without sufficient expertise, and the programmers "just built it"
* they did the best given the time they had
* it passed testing
* programmers are generally not empowered to make go/no-go decisions
* even if they did express concern they may not have been listened to
* any internal challenges on ethical grounds were probably kept quiet and worked around
Usually with this kind of incident there are multiple process and quality failures, not just "why did the programmers not do better"Because we know how that always ends, with the person driven out of the company or set up to be fired.
The only way to get big corporations to behave is prison time for executives so they become paranoid about doing things right. Unfortunately in the USA we never ever seem to do that, we just give them a few million dollars in fines instead which they pay with the next month's profits (ala BP).
Many programmers, though, will do whatever they're told, even when they know it's pointless, wasteful, or dangerous. I've read literally hundreds of stories about programmers working on something that was egregiously fucked up. But I've heard damned few stories where programmers refused to do something they thought wrong and either a) got management to back down, or b) got fired for their refusal to do something unethical.
I don't blame individuals for that. We're not trained as professionals, we don't have a professional organization that most of us join, and we therefore don't have a serious professional code of ethics. It's unreasonable to expect most people to make ethical stands alone while creating a code on the fly. But I'd love to see the situation fixed.
I'd more thinking about a professional organization like the AMA, the assorted bar organizations, the society of professional journalists, or the various engineering societies. Basically I want an organization that can set forth reasonable professional ethics, do advocacy and education, and act as our collective voice to back up individual engineers who refuse to do something unethical.
Why the restriction on belts and watches?
This happened to my dad while waiting at for a light at an intersection. Transmission in first, foot down on clutch: suddenly car leaps into intersection. This was long ago on a Volkswagen bus.
The drive by wire which is terrifying is the power steering. Traditionally it's hydraulic, but more cars are using electric. I sure hope that an electrical component failure can not lead to full turning force.
http://www.caranddriver.com/features/electric-vs-hydraulic-s...
Both of these are no fail-safe measures these days, as both ignition and auto transmissions are done entirely in software.
http://www.thedetroitbureau.com/2012/04/unintended-accelerat...