The job of engineers is not to deploy some technology but to build robust, reliable and sustainable (in all meanings of that word) solutions for real world problems based on requirements directly derived from people's needs.
-
@tante Calling any of the turn it off and on again engineering is an insult to engineers.
When I am crossing a bridge, someone had run the math to prove that it won't collapse on its own or from an earthquake.
But with software we don't have a single clue what will happen let alone to how reproduce issues.
Then you are just throwing things together until it seems to work for some ill defined goal and conditions, not engineering software.
Can be fun, but single use only. -
The job of engineers is not to deploy some technology but to build robust, reliable and sustainable (in all meanings of that word) solutions for real world problems based on requirements directly derived from people's needs. Even for an engineer technology comes second at best.
@tante The job of the engineer is to meet the specification. Period.
-
@tante The job of the engineer is to meet the specification. Period.
@Wyatt_H_Knott @tante and to make sure the specification being developed is as close to the requirements as possible.
-
@olyerickson That's a tinkerer. Tinkering is fun but a different thing IMO
@tante @olyerickson Tinkerers specifications are intrinsic, which is the essence of joy.
Professional engineers may also enjoy their work mostly while still being bound to extrinsic specifications, which sometimes are frustrating as they are much harder to comply with.
-
The job of engineers is not to deploy some technology but to build robust, reliable and sustainable (in all meanings of that word) solutions for real world problems based on requirements directly derived from people's needs. Even for an engineer technology comes second at best.
@tante In my experience, it's non-engineers who tend to focus on the tech and may need to be gently guided back to the problem they're trying to solve, from which a lot of engineers will look first for a simpler, less technical, or more general solution.
-
@tante Calling any of the turn it off and on again engineering is an insult to engineers.
When I am crossing a bridge, someone had run the math to prove that it won't collapse on its own or from an earthquake.
But with software we don't have a single clue what will happen let alone to how reproduce issues.
-
@Wyatt_H_Knott @tante and to make sure the specification being developed is as close to the requirements as possible.
@Colman @tante Yes and no. As a working engineer, I got handed a spec. I was allowed to INTERPRET that spec to my advantage, but I was never allowed to modify it, because it was a customer document. So if the spec said "no pipe fittings here, with some exceptions" it was my job to make sure the exception was found and that it was justifiable. Which is how we got around stupid requirements. But mostly, we did what the spec said to do.
-
@Colman @tante Yes and no. As a working engineer, I got handed a spec. I was allowed to INTERPRET that spec to my advantage, but I was never allowed to modify it, because it was a customer document. So if the spec said "no pipe fittings here, with some exceptions" it was my job to make sure the exception was found and that it was justifiable. Which is how we got around stupid requirements. But mostly, we did what the spec said to do.
@Wyatt_H_Knott but there was another engineer up the pipeline somewhere involved in developing that spec. I meant the gestalt "engineer".

-
@Wyatt_H_Knott but there was another engineer up the pipeline somewhere involved in developing that spec. I meant the gestalt "engineer".

@Colman Probably not. The specs came from the contract. The contract came from the Navy. The Navy thinks they know what they want, so they are very detailed about their specs. It's why we don't deviate very much. Specifications are commercial contracts. They say "do they job according to such and such standard to produce X result." Maybe there was a smart engineer involved in producing the standard, or maybe a bunch of managers sat around with their heads up their asses justifying their jobs.
-
@Wyatt_H_Knott but there was another engineer up the pipeline somewhere involved in developing that spec. I meant the gestalt "engineer".

@Colman Also, what KIND of engineer? Because if the sonar guy wrote the spec, but the pipe guy has to interpret it, you're getting a different result, guaranteed.
-
The job of engineers is not to deploy some technology but to build robust, reliable and sustainable (in all meanings of that word) solutions for real world problems based on requirements directly derived from people's needs. Even for an engineer technology comes second at best.
@tante i love this thread.
only a bunch Of engineers would debate this great post. 
-
@tante The job of the engineer is to meet the specification. Period.
@Wyatt_H_Knott @tante Perhaps for a junior engineering role, but I'd expect anyone in a more senior role to understand the context of the specification and the constraints that led to it, and where appropriate to discuss alternatives with the relevant stakeholders. With increasing seniority there should be a widening scope of awareness.
-
@Wyatt_H_Knott @tante Perhaps for a junior engineering role, but I'd expect anyone in a more senior role to understand the context of the specification and the constraints that led to it, and where appropriate to discuss alternatives with the relevant stakeholders. With increasing seniority there should be a widening scope of awareness.
@GerardThornley @tante Sure, yes. And for sure I was able to have discussions with contract supervisors where we could suggest modifications to the specification requirements in certain limited scope cases. But it was always a fight, and often the outcome rested on a political consideration rather than a purely technical one. The truth is there are MANY ways to do most things and what we were doing was picking one that jibed with the rest of our manufacturing ethic.
-
The job of engineers is not to deploy some technology but to build robust, reliable and sustainable (in all meanings of that word) solutions for real world problems based on requirements directly derived from people's needs. Even for an engineer technology comes second at best.
@tante [a gif of the Team Fortress engineer playing on a banjo]
-
The job of engineers is not to deploy some technology but to build robust, reliable and sustainable (in all meanings of that word) solutions for real world problems based on requirements directly derived from people's needs. Even for an engineer technology comes second at best.
@tante Sun Tsu's "The Art of War", specifically the section on Tactics, is surprisingly relevant in Software Engineering. You have a powerful army. Don't ask it to do something it can't do
-
@GerardThornley @tante Sure, yes. And for sure I was able to have discussions with contract supervisors where we could suggest modifications to the specification requirements in certain limited scope cases. But it was always a fight, and often the outcome rested on a political consideration rather than a purely technical one. The truth is there are MANY ways to do most things and what we were doing was picking one that jibed with the rest of our manufacturing ethic.
@Wyatt_H_Knott @tante Oh, for sure. I think we engineers often start out hoping that engineering decisions will flow from what makes the most sense, technically, only to discover that in large organisations (where most engineering happens) it's politics (a skill not typically taught to engineers) that rules.
I've certainly seen some dumb things done to satisfy political constraints, and with long-lasting consequences. And in a nod to the original post, I should note that some of those were made by engineers focusing on their own technical area of a product to the detriment of the product as a whole. -
@Colman Probably not. The specs came from the contract. The contract came from the Navy. The Navy thinks they know what they want, so they are very detailed about their specs. It's why we don't deviate very much. Specifications are commercial contracts. They say "do they job according to such and such standard to produce X result." Maybe there was a smart engineer involved in producing the standard, or maybe a bunch of managers sat around with their heads up their asses justifying their jobs.
@Wyatt_H_Knott @Colman And then there are Navy contracts with all the the mechanical interface specs as "figure it out with the ship SPO". Not exactly helpful when you're designing something that goes on every major ship class, and when the SPOs won't give you drawings or access. Flickr to the rescue sometimes, especially for the high res pics.
-
@Wyatt_H_Knott @Colman And then there are Navy contracts with all the the mechanical interface specs as "figure it out with the ship SPO". Not exactly helpful when you're designing something that goes on every major ship class, and when the SPOs won't give you drawings or access. Flickr to the rescue sometimes, especially for the high res pics.
@ingram @Colman That was usually the point where I would walk down the hall, or to another department, and start digging through someone's private filing cabinet of legacy classified drawings.
Which is why we worked so hard to get production rates up - to be able to keep legacy engineers and historical build data in house and actually usable. Because all those files were worthless without the engineer who collected them and could give you the right set of notes without looking anything up.
-
@GerardThornley @tante All software ever written, unless its one of those special "formally verified" academic projects.
-
@GerardThornley @tante All software ever written, unless its one of those special "formally verified" academic projects.
@alatiera @tante Then I think the phrase "don't have a single clue" might be putting it a little bit strongly!
For the software managing, for example, the timing of fuel injectors and spark plugs in all modern internal combustion engines, the engineers will have a very high (and justifiably high) level of confidence in how it will behave.
That's built on a great deal of work to measure things like the behaviour of raw materials (electronic components) including failure rates and conditions, model the behaviour of the system in a range of scenarios, and test the product at multiple stages during both design and manufacture.
All the same processes that give confidence in the construction of a bridge.In neither case will these efforts always manage to catch every single unintended outcome. A _fairly_ recent example would be the London millennium bridge, a footbridge over the Thames, which happened to have a resonant frequency at around people's walking pace, and had to have dampers added after construction to prevent an unpleasant rocking motion.