[SystemSafety] State of the art for "safe Linux"

Paul Sherwood paul.sherwood at codethink.co.uk
Sat Aug 10 11:07:55 CEST 2024


Hi Andy,

Thank you for jumping in - please see my comments below

On 2024-08-09 18:05, andy at the-ashworths.org wrote:
> -  “admin” and “paperwork” are important elements of
> engineering. By ignoring these, the task is simply coding;

I agree in principle, but these days software engineers are able to 
automate quite a lot.

There remains a perception that safety requires lots of content in Excel 
spreadsheets and Word documents, which can put people off.

> -  in signing off a safety critical review, the engineer is accepting
> responsibility for their work and is demonstrating accountability,
> another important element of engineering.

Totally agree.

But most software engineers have not had to consider the possibility 
that their work might directly contribute to harming people. If pressed 
many may back away from that responsibility - either because of impostor 
syndrome, or reasonable concern about their own skill level, or because 
they don't trust the leadership/processes/motivations/capabilities of 
their employer.

> I propose therefore that you list be modified to a single item as
> follows:
> 
> Could it be that…
> - most “software engineers” are not actually engineers?!

You may be surprised to learn that I wholeheartedly agree, so long as we 
acknowledge that "most" means more than half.

> In saying this, I’m not trying to diminish the importance of
> developers and coders; I’m trying to identify that software
> development should sit within an established engineering framework
> with appropriate checks and balances commensurate with the level of
> safety of the product.

For many years I have been trying to distinguish the term "software 
engineer" from "developer" and "programmer" and "coder", because as you 
say there is much more needed than just programming.

Incidentally I used to disfavour "hacker" too, until I learned that many 
expert open source contributors would refer to themselves proudly as 
"hackers"...

And before folks pile in with "see, they're just hackers, amateurs" etc. 
I invite everyone to have a read of this document, which describes the 
Linux kernel's actual implementation of "real time" scheduling...

https://www.kernel.org/doc/html/latest/scheduler/sched-deadline.html

If you find any mistakes, I am confident that the kernel community would 
welcome your contributions and be keen to fix.

> Sadly, there seems to have been a steady
> decline in the recognition of engineering over the last 20+ years (and
> its not just in the software field) and that has contributed to the
> current environment where we have situations like Ottawa Light Rail
> Transit, Boeing, Tesla self-driving mode, OceanGate’s submersible,
> etc. Not all of these are safety related, but I feel that in all
> cases, management hubris has over-ridden sound engineering principles.

I wholeheartedly agree.

> I am really not sure what the answer is… somehow we need to move
> away from the “shareholder value” model of projects and get back
> to understanding we’re delivering a product that not only has to
> work but has to ensure that it doesn’t kill its userbase.

+1 and thank you for your comments

br
Paul


More information about the systemsafety mailing list