Live data from Hacker News

Is Software the UFOlogy of Engineering Disciplines?

codemanship.wordpress.com

171–180 of 186 posts

Re: Is Software the UFOlogy of Engineering Disciplines?

#171
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 absolutely is engineering. Engineering is not defined by presence of regulations. Engineering is about solving practical problems within the constraints of physical reality and economics.

TFA (and your comment indirectly) seem to be about the lack of rigor in software engineering. However, any discussion of engineering that leaves out economics and costs is fundamentally incomplete.

The only reason most software development seems to have less rigor is because the economics of most software projects permit it. Other domains of software engineering where lives are on the line definitely have high levels of rigor.

I wrote a lot more in this other comment: https://news.ycombinator.com/item?id=45849304

Re: Is Software the UFOlogy of Engineering Disciplines?

#172
post #15

> More than 20 years ago, I corresponded with famous UFO researcher Stanton T. Friedman. His central claim was that “the evidence is overwhelming that some UFOs are extraterrestrial spacecraft”. I don't believe in UFOs. But if I had to believe in UFOs, this would be my position: We have had modern humans for 500 000 years [1]. If it takes 10 000 years to make it from stone age to space age, we have theoretically had…

The largest obstacle to this theory being taken seriously is the lack of evidence in long term records, such as ice cores. Our current age will show up in future ice cores as a massive spike; we affect CO2, Methane, Sulfates, and probably a lot more. Additionally we produce and have produced various synthetic compounds that will remain detectable in the environment for hundreds of thousands of years, if not millions.…

> This is highly unlikely

Absolutely. But are visitors from other star systems any less unlikely?

Re: Is Software the UFOlogy of Engineering Disciplines?

#173
post #24
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…

Helps to have more of the quote: He said that programming today is “More like science. You grab this piece of library and you poke at it. You write programs that poke it and see what it does. And you say, ‘Can I tweak it to do the thing I want?'”. The “analysis-by-synthesis” view of SICP — where you build a larger system out of smaller, simple parts — became irrelevant.

Shouldn't that make us want to fight to simplify our software stacks to the point where we can do analysis by synthesis, building from simple, well-understood parts, again?

Re: Is Software the UFOlogy of Engineering Disciplines?

#174
post #145

Earlier quoted context omitted.

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.

There are states that regulate the bare term “engineer” depending on the context. And all states require a license to offer certain engineering services, so practically speaking in certain fields you can’t “be an engineer” without a license. For example in most (all?) states you can’t hang up a shingle adverting yourself as an “Engineer” doing structural work without a license even if you aren’t calling yourself a “P…

[deleted]

Re: Is Software the UFOlogy of Engineering Disciplines?

#175
post #20
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…

There have been serious efforts at software engineering, like the OOP movement in the 1980s and 90s to construct software very methodically. Programmers hate it and rejected it. To be fair, it does tend to create its own pathology. Instead of a layer cake made of congealed spaghetti, you tend to get over -engineering. https://github.com/Hello-World-EE/Java-Hello-World-Enterpris... Software engineering leads to softwa…

> there is no capital or material cost to push back against complexity

On a thread about software bloat and inefficiency, @josephg once speculated about an alternate universe where Moore's Law stopped decades ago. I've kept thinking about that. Unfortunately, I kept coming up with counterfactuals where important things like accessibility weren't as advanced or (relatively) widespread as they are in this world.

Re: Is Software the UFOlogy of Engineering Disciplines?

#176
post #129

Earlier quoted context omitted.

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.

That doesn't really sound like an invalid analogy, you just don't need the same fire code for all structures but there are still fire codes that apply to building sheds.

I'm not sure what your point is. Like, ok, you came up with a structure that doesn't need a lot of structural engineering but clearly others do. So what are you trying to say?

Re: Is Software the UFOlogy of Engineering Disciplines?

#177
Engineering means lots of documentation. Catalogs of parts. "Red rubber balls", listing all the variations and properties. Standard forms of documentation. Need to describe a file format? Here is a prescribed way to do that. So yes, software is not engineering yet.

I think the reason is that component interoperability problem remains unsolved. The aim of OOP was that; at least Brad Cox saw it this way. One of entries in his blog said something like "software product related to security should not provide security; it should provide tools to build a secure system".

Re: Is Software the UFOlogy of Engineering Disciplines?

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

> Is it too conceited to argue that each application is more unique than each housing structure?

I would say the exact opposite, actually. Two random software applications designed for the same purpose are likely much more similar to each other than two random buildings that were built for the same purpose.

This is because, for practical reasons, the software applications are likely just going to be slight variations of the same base. Unless your application is extremely intricate, most of the complexity (and most of the code that's executing) is actually in the kernel and the libraries. You're mostly just reusing those shared components and arranging them in a slightly different way.

Re: Is Software the UFOlogy of Engineering Disciplines?

#179
post #140

Earlier quoted context omitted.

> the whole idea of “engineering” is about quality and responsibility This is hilarious :-) Making things that work has precisely zero relationship with quality or responsibilty or whatever shit you wish. Of course you can pay me anytime for quality or responsibility or whatever :)

“Quality” is subjective, so you’re correct that it’s not about quality. A tool designed with a planned lifespan of 100 hour lifespan is just as much a product of engineering as one designed to last 10k. Responsibility though is very much is a central component of capital E Engineering. The modern profession in many ways is a direct response to big newsworthy engineering disasters.

Responsibility does not have anything to do with engineering capital E or whatever.

If you pay me I can of course sell you some responsibility or whatever. This is called business.

Post reply on HN