Live data from Hacker News

Is Software the UFOlogy of Engineering Disciplines?

codemanship.wordpress.com

151–160 of 186 posts

Re: Is Software the UFOlogy of Engineering Disciplines?

#151
post #16

This is closely related to why Sussman and Abelson stopped teaching SICP: it is not possible to engineer software any more because systems are too complicated to completely understand and abstractions hide too many behaviors. So now we do "programming by poking" to understand what the system does instead of making it correct by construction. http://lambda-the-ultimate.org/node/5335 We just tinker. That's all we can d…

If that is the case any biological engineering is also impossible since no one understands the full system.

Re: Is Software the UFOlogy of Engineering Disciplines?

#152

Earlier quoted context omitted.

> In the case where the software is life and death it's generally developed in ways similar to 'real' engineering I think even that is highly romanticised by people. Take Boeing's two big blunders in recent years. The Max and Starliner both had terrible terrible software practices that were "by the book". The problem is "the book" really changed a lot, and the behemoths haven't kept up. It used to be that "the NASA w…

I think, rather, you're romanticizing what "real" engineering looks like. Real engineering doesn't mean that mistakes are never made or that there are never bugs. Rather, it is that systems are tested thoroughly enough, and designed with enough failsafes and redundancy, that safety concerns are mitigated. The problem in the Boeing case was not that the software had bugs. Lots of aviation software has bugs, it's actua…

> Rather, it is that systems are tested thoroughly enough, and designed with enough failsafes and redundancy

Yeah... That's one of the main reasons why engineers from most other disciplines have a lot of difficulty creating large reliable software.

Testing systems and adding failsafes are not nearly enough for system reliability, and not the best way to add it to software. It's almost enough for mechanical engineering... Almost, because it's not enough to make human interactions safe.

Re: Is Software the UFOlogy of Engineering Disciplines?

#153
post #143

Earlier quoted context omitted.

Software "engineering" doesn't kill people instantly in a flashy way, sure, but it has become more like leaded gasoline, a widespread low-level harm whose effects are increasingly evident in hindsight. You pretty much can't go more than a couple of days without hearing about another massive consumer data compromise by hackers, CVE, major services outage, etc. At some point, there is going to be a software related inc…

Boeing, insulin pumps I could think of, missiles exploding on the pylon, lot of ways software can (almost) kill instantly, like that rocket that started flying sideways due to I think switching measurement units

The Azure and AWS outages affected hospitals.

You know there had to have been increased literal pain and suffering from patients while hospitals scrambled to fall back on old methods of coordination and communication.

This shit is serious and I'm tired of people arguing that our craft should not be taken seriously.

A lot of us work on infrastructure just as vital as bridges and tunnels, and with real world consequences when these things fail.

Take some responsibility.

Re: Is Software the UFOlogy of Engineering Disciplines?

#154
post #12

This again? In general, Software Engineering is not engineering. It's not a technical issue, it's a 'software doesn't really kill people so government doesn't intervene in it'. In the case where the software is life and death it's generally developed in ways similar to 'real' engineering Fundamentally folks built building/structures without engineering, just so consistently caused death and destruction that govt step…

I always liked the RMS take that programming is a craft.

Re: Is Software the UFOlogy of Engineering Disciplines?

#155
post #12

This again? In general, Software Engineering is not engineering. It's not a technical issue, it's a 'software doesn't really kill people so government doesn't intervene in it'. In the case where the software is life and death it's generally developed in ways similar to 'real' engineering Fundamentally folks built building/structures without engineering, just so consistently caused death and destruction that govt step…

When a software error can simultaneously shut down hospitals, air transport, ground transport, emergency services, and telecommunications, I don't see how the design of that software system should be held to a different legal standard than the design of, say, a steam turbine at a power plant, or the electrical grid itself.

https://en.wikipedia.org/wiki/2024_CrowdStrike-related_IT_ou...

> "The outage disrupted daily life, businesses, and governments around the world. Many industries were affected—airlines, airports, banks, hotels, hospitals, manufacturing, stock markets, broadcasting, gas stations, retail stores, and governmental services, such as emergency services and websites. The worldwide financial damage has been estimated to be at least US$10 billion"

Re: Is Software the UFOlogy of Engineering Disciplines?

#156

One big caveat to this is formal methods. If we did formal methods for all production code, it would meet the highest definition for rigor and rest safely as a true engineering discipline. https://en.wikipedia.org/wiki/Formal_methods

I find it especially ironic that the engineering professional regulator in BC (EGBC), in their guidelines on software engineering, mention as a specific example that a software engineer might need to rely on the expertise of a non-software-engineer who has specialist skills such as (by their own example) formal software verification methods!

Re: Is Software the UFOlogy of Engineering Disciplines?

#157

How many centuries did it take for civil engineering, for example, to become the codified, standardized, and respected calling it is now? While I'm sure "software development" will leapfrog that span of time, but it's only been 75 years since the discipline was invented to begin with (Lovelace's work was more applied math than anything else, but the starting point is arguably between then and, let's say, FORTRAN?). T…

> "How many centuries did it take for civil engineering, for example, to become the codified, standardized, and respected calling it is now?"

But the software industry is not starting from centuries ago. We have the benefit of modern education and literacy rates, instantaneous global communication, centuries of experience and data in other life and safety critical fields to draw on to understand how to establish a reasonable level of safety in the face of uncertainty, vast libraries of knowledge and data that can be called upon online, and nearly a century of increasing regulation and professionalization in those fields. Sorry but that doesn't hold up to scrutiny.

Re: Is Software the UFOlogy of Engineering Disciplines?

#158
post #138

Earlier quoted context omitted.

Almost no physical engineering requires licensing either. Most things are YOLO-ed without a licensed engineer because it isn't required and adds little value. The issue is that software systems are qualitatively more complex than any physical system due to their intrinsic malleability. Physical systems are sufficiently simple that formal verification methods are actually tractable (and used).

Physical products require the CE mark [0], so software systems (especially the complex ones) should be able to meet the same standard because they’re used in places where bugs and glitches can cause harm. [0] https://europa.eu/youreurope/business/product-requirements/l...

CE mark does not say anything about quality.

Same way critical software has all kind of sertificates.

Re: Is Software the UFOlogy of Engineering Disciplines?

#159
post #143

Earlier quoted context omitted.

Software "engineering" doesn't kill people instantly in a flashy way, sure, but it has become more like leaded gasoline, a widespread low-level harm whose effects are increasingly evident in hindsight. You pretty much can't go more than a couple of days without hearing about another massive consumer data compromise by hackers, CVE, major services outage, etc. At some point, there is going to be a software related inc…

Boeing, insulin pumps I could think of, missiles exploding on the pylon, lot of ways software can (almost) kill instantly, like that rocket that started flying sideways due to I think switching measurement units

The things you list illustrate @aplamers point that software "doesn't really kill people". If you asked the average person on the street, they might just barely remember the Boeing incidents and the rest they probably have never heard of. Even something as gruesome as the Therac-25 incident is probably unknown to most.

It's the rising tide of low-level everyday harm from software that is going to motivate the public to start coming after the software industry.

Re: Is Software the UFOlogy of Engineering Disciplines?

#160
As I haven't seen a link to it in the comments yet: A while back Hillel Wayne put some effort into resolving the question of "Is Software Engineering Real Engineering?" with the crossover project: https://www.hillelwayne.com/talks/crossover-project/

The conclusion he drew was that there's less difference than you might expect between software development and "traditional" engineering disciplines and that it's reasonable to consider software engineering a real engineering discipline.

Post reply on HN