Live data from Hacker News

Is Software the UFOlogy of Engineering Disciplines?

codemanship.wordpress.com

141–150 of 186 posts

Re: Is Software the UFOlogy of Engineering Disciplines?

#141
post #110
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…

> This again? In general, Software Engineering is not engineering. Software Engineering is definitely Engineering. But Software Development usually doesn't practice it. I've got a degree in Computer Engineering and took SE courses and at least at the companies I've been at, we never did any of that. You can't use formal methods without a formalized specification, and I never even got a written specification of any pr…

You never got a properly dimensioned wireframe model from your UI designer? That's a specification too.

Re: Is Software the UFOlogy of Engineering Disciplines?

#142
In one particular matter software engineering has measurements -- performance. Lots of cross-language comparisons, before-after. Although, it's still not done where it should be -- e.g. when planning an architecture, sometimes I personally hear "in the cloud it will be different" and nothing else.

In other areas, software engineering seems a lot like alchemy, ages before it became the serious science of chemistry.

Re: Is Software the UFOlogy of Engineering Disciplines?

#143
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…

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

Re: Is Software the UFOlogy of Engineering Disciplines?

#144
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

Never heard of the rocket, but the software in at least the first two items is already developed to existing engineering standards by law.

Re: Is Software the UFOlogy of Engineering Disciplines?

#145
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…

This again? You don't need a license to be an engineer. Every graduate of an engineering school at an accredited university/college IS an engineer. People seem to conflate an "engineer" with a "professional engineer". The two are not the same; the latter requires a license. At least in the US.

Re: Is Software the UFOlogy of Engineering Disciplines?

#146
post #129
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…

It's an interesting discussion. Developing an application is applying techniques but by nature, you don't really build the same application many times such that you can come up with rules that the daily grunt applies without thought. What is the software equivalent of spacing studs interspersed with fireblocks that we're not doing? In software, easily repeated steps and proper practices are moved to the runtime/langu…

> What is the software equivalent of spacing studs interspersed with fireblocks that we're not doing?

You're comparing apples to hockey pucks. For the analogy to hold, you need to specify what industry the software is for. i.e., if I'm building a garden shed, I don't need a specific stud spacing or even fireblocks at all. Hell, I can build it from raw timber if I have enough of it.

Re: Is Software the UFOlogy of Engineering Disciplines?

#147
There are standards (and surely more to come), but I still wouldn’t call it engineering. Then again, I’m just a theoretical physicist who wandered into software development out of necessity, so treat that as a biased call.

Sometimes I wonder: do people still believe a man's word? I do honor that. I have great respect for humans who give and follow their word. Sure, they make mistakes and you bet your butt they hold themselves accountable but... do people still do that?

I’m honestly curious, because I do take people’s anecdotes seriously (keeping in mind that brains are fuzzy with perception and memory fills the gaps), and I still tend to take someone at their word. Lately I’m noticing how naive that is, and how much people take advantage of it.

Why don’t we hold them accountable? Are we tolerating so much that we end up doing a kind of “peaceful violence”? I’m not calling for witch hunts or anything, but surely we can do better than whatever is happening now.

Take the congressional hearing, for example: if there’s strong evidence someone lied, publicly we should at least be able to say, “Your statements are not credible for the time being.” How do you come back from that? I don’t know.

Take YouTube videos nowadays: clickbait titles and exaggerated facial expressions in thumbnails just to grab attention. If the video doesn’t actually deliver on the premise of the title, it should be reported as misleading, regardless of the “this video was made for entertainment” disclaimer. That attitude is bleeding into so many areas of life. Language and words are becoming a joke, and over time people get used to it and copy the same behavior.

I guess my point is: why is someone’s word no longer taken seriously (if it ever really was)? And why don’t we hold people accountable?

Re: Is Software the UFOlogy of Engineering Disciplines?

#149
This seems to have been written by somebody who has no idea what other engineering disciplines look like. Note how TFA has, like, 10 words about other engineering disciplines and instead goes on and on about some stretched analogy to UFOlogy.

Software engineering is absolutely an engineering discipline.

Now, full disclosure so you can adjust your dosage of salt: My whole professional career has been in software development. However, my 4-year degree was in a branch of Electrical Engineering discipline (Process Control) and I have a handful of small “cottage” control systems and embedded projects under my belt. I also regularly follow other fields of engineering out of interest (communications, DSP, robotics.)

But my biggest claim to non-software engineering fame is that as an intern, on my very first “real” project ever, I caused my very first outage, in which I brought down a factory. No, not an AbstractFactoryFactory; an actual factory producing actual copper tubes. It was supposed to run 24/7/365 and was down for at least a day and caused significant $$ losses and spawned a major incident report to the CEO.

With my “credentials” out of the way, here’s how I define engineering: Engineering is the intersection of applied sciences, economics and business.

The fundamental core of any engineering is applying the principles of your scientific discipline and empiricism to navigate an environment of imperfect, changing information by making reasonable, practical tradeoffs to build something useful within a given cost.

You'll note software engineering matches this definition perfectly. Any lack of rigor you may notice is simply a function of the cost and economics involved. And any discussion of engineering that leaves out economics and cost is fundamentally flawed.

As an example, medical software for radiation therapy machines have extremely stringent standards and controls because the potential cost is a literal human life. On the other hand your bog-standard CRUD To-Do app has negligible costs (and most likely correspondingly low revenue) and is just fine with negligible rigor.

But if you’re writing code to be deployed in a large microservice deployment, you do want some tests, because the potential cost is lots of lost engineering hours and happiness when cascading failures set off pagers at 3am.

Yes, we are winging it for the most part, because costs are so low. But so are other disciplines! The professor who taught us PID control systems was an industry veteran who walked us through a bunch of complicated math that I would not inflict on an LLM because that’s how you get SkyNet… and then said something like: “This theory is essential, but you should know that tuning PID controllers is a black art. There are just too many variables we cannot control, so experts basically tune the system in Production by trial and error.”

And they have similar problems! Buggy, poorly documented libraries? An early life lesson in embedded engineering is “Check the errata” because datasheets are essentially marketing materials. Shifting requirements? That’s how civil engineers end up constructing a right-angled bridge (https://news.ycombinator.com/item?id=44522579)

Again: The only reason software engineering seems less rigorous is because that’s how the economics work out.

Maybe someone who is experienced in other forms of engineering as well as software can keep me honest. But don’t let anybody tell you software engineering is not a real engineering discipline.

Re: Is Software the UFOlogy of Engineering Disciplines?

#150

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…

Didn’t the egyptians sort of standardize it?
Post reply on HN