3 ms·
> The only thing really "special" about software, and it applies to all engineering, is you cannot pretend something is working when it isn't. If your airplane
by Archelaos 5y ago
> The only thing really "special" about software, and it applies to all engineering, is you cannot pretend something is working when it isn't. If your airplane design doesn't fly, pretending it did doesn't work.
And yet engineers are doing it all the time. Think of Dieselgate or the Boeing 737 MAX.
One might object that the discovery of Dieselgate or the flaws of the Boeing 737 MAX is prove that the engineers responsible for it were not able to pretend. But then the sentence is analytically true for every other profession too: the discovery of a flaw falsifies claims of flawlessness.
I think that some types of flaws make themselves apparent comparatively easy in (software) engineering. But this might even fire back if it makes an engineer too uncritical so that she put too much trust into the result of her work.
Besides, I do not think that we have good metrics to compare distant professions in terms of their ability to deliver high-quality results. It is perhaps somewhat justified to compare neigboring professions, such as a biologist arguing with a physician or a historian with a political scientist in specific cases. But beyond that, I can really only imagine an exchange of prejudices.
- 908B64B197 5y ago> And yet engineers are doing it all the time. Think of Dieselgate or the Boeing 737 MAX. One might object that the discovery of Dieselgate or the flaws of the Boeing 737 MAX is prove that the engineers responsible for it were not able to pretend These two are closer to fraud than engineering mishaps. The big issue with the 737 MAX wasn't the MCAS, it was that management and marketing hid its existence from buyers and regulators. So when it started misbehaving the pilots were not aware this thing was turned on and was steering the plane. The MCAS did what it was built to do (make the plane behave like a traditional 737). Why did management hide this crucial information to buyers and government regulators? Because had they not, it's unclear regulators would have certified the plane to begin with since nobody could, in good faith, claim it was eligible to the same type certificate as its predecessors.
- WalterBright 5y ago> the pilots were not aware this thing was turned on and was steering the plane. But they were aware of how to deal with runaway stabilizer trim, which is supposed to be a memory item (i.e. don't need to consult the checklist). After the first crash, Boeing sent an Emergency Airworthiness Directive to all MAX pilots with instructions on how to regain control. The EA crew did not follow those directions.
- Archelaos 5y agoIn the case of Dieselgate, the engineers who programmed the emission control system built something that let other engineers believe that the system is working alright when it didn't. Of course, for the engineers who commited the fraud, everything worked as expected by hiding from the other engineers that the system was only in the test setup reaching the emission goals. In the case of the 737 MAX, I doubt that only the manangement is to be blamed. This sounds like the adage that success has many fathers, but failure none. The practicality of certain design for its intented purposes in its actual use cases is at the heart of engineering. I don't think that a top-down view is sufficient where it is "manangement" that is setting specific goals and "engineering" is only obligated to observe these specific goals instead of also considering the broader context. Back to the original debate: Even if "the MACS did what it was built to do (make the plane behave like a traditional 737)" the whole design did not what it was supposed to do. Admittedly it did fly, but not safely. And the whole process of quality control, which should ensure that it was safe, did fail as well. This is why I think a claim like "engineering ... cannot pretend something is working when it isn't" is quite naïve. Why do we need all those complex regulations about quality control, when it is so obvious that something is working or not?