4 ms·
I feel this is an important step in turning software programming into an actual engineering discipline. Engineers that design bridges and buildings are liable
by c-linkage 5y ago
I feel this is an important step in turning software programming into an actual engineering discipline.
Engineers that design bridges and buildings are liable when these structures fail and cause damage or loss of life. Lessons-learned are critical to ensuring corrective actions are taken to ensure similar failures don't happen in the future.
Software development has almost none of that. The lessons of the past are relearned on an apparent two to four year cycle.
- buscoquadnary 5y agoThis is a great lesson on bridge building and software engineering. http://thecodelesscode.com/case/154 http://thecodelesscode.com/case/154
- tjalfi 5y agoJon Bentley's The Back of the Envelope[0] has a much better lesson about bridge building and software design. "Most of you," says Vyssotsky, "probably recall pictures of 'Galloping Gertie,' the Tacoma Narrows bridge which tore itself apart in a windstorm in 1940. Well, suspension bridges had been ripping themselves apart that way for 80 years or so before Galloping Gertie. It's an aerodynamic lift phenomenon, and to do a proper engineering calculation of the forces, which involve drastic nonlinearities, you have to use the mathematics and concepts of Kolmogorov to model the eddy spectrum. Nobody really knew how to do this correctly in detail until the 1950s or thereabouts. So, why hasn't the Brooklyn Bridge torn itself apart, like Galloping Gertie? "It's because John Roebling had sense enough to know what he didn't know. His notes and letters on the design of the Brooklyn Bridge still exist, and they are a fascinating example of a good engineer recognizing the limits of his knowledge. He knew about aerodynamic lift on suspension bridges; he had watched it. And he knew he didn't know enough to model it. So he designed the stiffness of the truss on the Brooklyn Bridge roadway to be six times what a normal calculation based on known static and dynamic loads would have called for. And, he specified a network of diagonal stays running down to the roadway, to stiffen the entire bridge structure. Go look at those sometime; they're almost unique. "When Roebling was asked whether his proposed bridge wouldn't collapse like so many others, he said, 'No, because I designed it six times as strong as it needs to be, to prevent that from happening.' "Roebling was a good engineer, and he built a good bridge, by employing a huge safety factor to compensate for his ignorance. Do we do that? I submit to you that in calculating performance of our real-time software systems we ought to derate them by a factor of two, or four, or six, to compensate for our ignorance. In making reliability/availability commitments, we ought to stay back from the objectives we think we can meet by a factor of ten, to compensate for our ignorance. In estimating size and cost and schedule, we should be conservative by a factor of two or four to compensate for our ignorance. We should design the way John Roebling did, and not the way his contemporaries did-- so far as I know, none of the suspension bridges built by Roebling's contemporaries in the United States still stands, and a quarter of all the bridges of any type built in the U.S. in the 1870s collapsed within ten years of construction. "Are we engineers, like John Roebling? I wonder." [0] https://www.seltzer.com/margo/teaching/CS508.19/background/p180-bentley.pdf https://www.seltzer.com/margo/teaching/CS508.19/background/p...
- Animats 5y agoI feel this is an important step in turning software programming into an actual engineering discipline. Yes. More than that, anything that has a backdoor or a "default password" should be viewed as being at least criminally negligent or outright criminal.
- emteycz 5y agoHaha, the German government is pushing for lawfully required backdoors at the same time.
- vkou 5y agoPhysical locks are routinely sold with "default password" master keys. As far as I'm aware, nobody making or selling them is a criminal. https://en.wikipedia.org/wiki/Luggage_lock#TSA_Accepted https://en.wikipedia.org/wiki/Luggage_lock#TSA_Accepted
- pjmlp 5y agoOn countries where it is a professional title, software engineers that sign off projects are liable.
- kjksf 5y ago> Engineers that design bridges and buildings are liable when these structures fail and cause damage or loss of life. I'm pretty sure that's not true, at least not in practice. Not even once have I read about an engineer being liable for a failed bridge. But I'm open to being educated. Can you point to a single case, in US, of an engineer being liable for a failed bridge? Who found them liable (federal government? state government?) and what happened after they were found liable (a fine? jailtime)?
- radu_floricica 5y agoThe construction/architecture company is liable, and the same will happen with the software regulation. Not saying that it's a good (or bad) idea, only that the comparison is reasonably apt.
- deleted 5y ago[deleted]
- throwawayboise 5y agoI would think that unless criminal negligence can be shown (e.g. an engineer signed off on plans that he knew or should have known were unsafe) then civil liability would maybe apply to the construction contractor (again, depending on why the bridge failed), for which they should be insured.
- sofixa 5y agohttps://en.m.wikipedia.org/wiki/Hyatt_Regency_walkway_collapse https://en.m.wikipedia.org/wiki/Hyatt_Regency_walkway_collap... The architects were acquitted in the end ( who knows why, it was as clear cut as possible), but the company lost its engineering licenses.