• some guy (unregistered)

    Can someone tell me what a "flash validation" is? Running the software on the actual hardware as a smoke test?

    Also, mandatory: https://xkcd.com/2030/

  • 516052 (unregistered)

    I've always purposely avoided jobs where my screw-ups might produce serious injury or death.

    What turns me off jobs like that is that they always come with strings attached. We are talking high pressure, tight deadlines and annoying red tape all over the place. When you combine corporate greed with insistence on quality and safety by regulators there is only one way things can turn out. Nobody is ever going to give up part of their profit margin to make your life as a dev easier.

    This said, if someone had offered me a laid back and non high stress job in such a field I'd not have said no. At the end of the day bugs will happen, and on occasion people will die. That's just how it is. No sense stressing over that. And if it's going to happen to someone it might as well be me. As long as nobody can sue me personally over it and the whole thing is not some sort of obvious idiot mistake on my part I'd not feel any guilt over an airplane or ten falling out of the sky because an unforeseen bug.

  • G. Gekko (unregistered)

    But think of all the shareholder value generated. The product is just an annoying afterthought.

  • (nodebb)

    The thing about engineering in the real world is that it has evolved over decades and centuries, depending on what's being designed. We've been creating buildings for millennia, and we've increased size and complexity incrementally, building on what previous architects learned. Airplanes are only a little over a century old, but still that's been time enough for us to learn the basics and improve on them. Early planes probably fell out of the sky all the time, now crashes are rare and almost always due to a really strange glitch.

    Software has the problem that each new application is almost starting the evolution process from scratch. While past software engineers may have solved some fundamental problems, like memory management, the domain-specific parts are new. Just as you can't apply too many skyscraper architecture principles to designing jumbo jets, what we've learned from designing word processors doesn't help much with cockpit automation.

  • (author) in reply to some guy

    That's what it sounds like for context. Flash the software onto the device, power it up, and see if it works for a very minimal test of "works". That "working test hardware is scarce" implies that you may fail this validation not because of software failures, but because the test hardware you're running it on is busted. I've been in this state- tracking down bugs in software when it's just that one of the pins on a board got shorted at some point and now the board is wonky.

  • (nodebb)

    Ah, yes. The wonderful "We have a schedule to meet" on what everyone except the C-suite and the sales dept knows is still an R&D project.

  • (nodebb)

    If Greta's organization isn't following some form of NASA/JPL's "Power of 10" coding standards for safety-critical code ( https://en.wikipedia.org/wiki/The_Power_of_10:_Rules_for_Developing_Safety-Critical_Code ) and its extensions ( https://nasa.github.io/fprime/UsersGuide/dev/code-style.html ), then they should be...

  • (nodebb) in reply to Barry Margolin

    That's because software is fundamentally different from other types of engineering. If you build a successful bridge or house and you want another, the copy is made of different substance and likely built by different workers under slightly different conditions. But if you have a successful piece of software and you want another copy, copying it is trivial. You can be absolutely certain that the copy is identical to the original, so all software engineering is doing something novel.

  • (author) in reply to Charles-2

    I think that's a misunderstanding of how large engineering projects are carried out. If you build a successful bridge, and want to build another one, you're usually starting from square one. You can't just copy the design, because the actual geography is going to be different. Adding a few feet to the span might make no difference- or it might change the tolerances such that you need a totally different design. And there's also a constant race to improve- to use fewer materials, to get it built in less time, etc. (Just the fiendish challenges of adapting a design to the regionally available concrete can be a huge undertaking- concrete is different everywhere you go, and it's only cheap because there's usually a local source for it; shipping in concrete would defeat the cost savings of concrete!)

    Houses, especially the tract-style developments, definitely are more in the direction you're saying, but also- they're not engineering. Or the engineering happened years ago, and now it's built-to-plan. But that's because they are, relatively, a mass-produced widget.

  • (nodebb) in reply to cellocgw

    "My God, Thiokol, when do you want me to launch — next April?"

  • (nodebb) in reply to 516052

    What turns me off jobs like that is that they always come with strings attached. We are talking high pressure, tight deadlines and annoying red tape all over the place.

    The opposite of that also occurs, for example when developing systems where if something goes wrong the land surrounding the location where the system was running becomes a no-go zone for the next several thousand years. Getting it right is paramount, so the deadlines are either very, very distant or not rigorously enforced, so that it takes forever to get the hardware and software done. And it's way over budget. And there's a lot of paperwork.

  • A Nonny Moose (unregistered)

    "The exact sort of experience you want your flight crew to have if, say, your aircraft loses an engine during takeoff."

    An unfortunate statement considering that in November 2025 another flight, UPS Airlines Flight 2976 with a highly experienced crew literally lost an engine - as in, detached from the wing lost - during takeoff and crashed killing 11 people on the ground and all three crew.

  • Graculus (unregistered)

    "I've always purposely avoided jobs where my screw-ups might produce serious injury or death." - they should immediately resign from their current job and go and stack shelves in Tescos (other supermarkets are available). Should not be working on any kind of software projects.

  • Officer Johnny Holzkopf (unregistered)

    Luckily, you can counter with what industry is currently running around advertising with: "With A.I., we can solve all those problems! Not enough code monkeys? The A.I. will do it, and we'll also use smart A.I. to verify everything! It's super cheap, and everyone else is doing it. Also let the A.I. develop and test all the hardware, it can be simulated, so no extra costs, see? It's really safe to do so. It is industry standard now. And nobody really needs all this documentation. The A.I. will figure everything out on its own. I know that, I'm using it at home all the time, and I can even talk to it. Oh look, over there - they're building an A.I. factory!" I'm going home now.

  • 516052 (unregistered) in reply to zomgwtf

    If i learned anything over the years is that good or ill the only constant with government anything is paperwork. Endless paperwork. And that is why I refuse to work with governments.

  • (nodebb) in reply to Charles-2

    software is fundamentally different from other types of engineering.

    Yes it is, but not for the reason you say. The problem with software is that it is very brittle. With most engineering, small errors are usually not catastrophic. In fact, the consequences are usually proportional t the size of the error (yes, I know there are exceptions - the Hubble mirror comes to mind). However, flip a single bit in a program consisting of a million lines of code and ithere's a reasonable chance that it will no longer run.

  • Cmdr Javik (unregistered)

    Software is different because, save for military, aerospace, medical, and maybe auto industry, it is not treated like real engineering. As in, there is no civil or criminal liability for failures.

Leave a comment on “The Ghost of Christmas Future”

Log In or post as a guest

Replying to comment #:

« Return to Article