comp.lang.ada
 help / color / mirror / Atom feed
From: Bill White <billjwhite@notan.org>
Subject: Re: F-22 ADA Programming
Date: Thu, 30 Oct 2014 16:07:46 +0000 (UTC)
Date: 2014-10-30T16:07:46+00:00	[thread overview]
Message-ID: <m2tnoi$j1q$4@speranza.aioe.org> (raw)
In-Reply-To: 50cacb19-5d0b-4dbe-b91b-0b3b462913d6@googlegroups.com

On 2014-10-30, Maciej Sobczak <see.my.homepage@gmail.com> wrote:
>
>> Surely if the language is chosen by management, they share in the responsibility
>> for its effect. A developer who agrees to work on the project using the poor
>> language has made a decision to do so, and is clearly responsible for that decision.
>
> Sorry, I got lost in this. I mean - in the taking responsibility part.
> Does it mean that if we choose Ada and then shit happens, are we cleared
> from responsibility because the choice was good?

It is not about escaping responsibility but come from the other end and try
to be responsible. People are required to be diligent. Choosing the right
platforms, languages, techniques etc. are all part of engineering just like
choosing the right concrete, steel, and designs are are all part of making a
bridge.

Choosing something that's known to be defective or provably unsuitable is
irresponsible and not certainly not good engineering practice. Choosing
something less-than-optimal often is "acceptable" engineering practice. When
forced to do something like that you can either quit or send memos and keep
copies.

> The difference between Ada and C++ is not that in Ada there will be no
 bugs and in C++ there will be only bugs. At best, the language choice will
 have some influence on the probability and economy of failure.

I think that's misleading. It is not only the probability of failures that's
important but their type and consequences. Those are engineering limits that
can usually be quantified fairly well. 

> So, let's say (just for the sake of discussion, with no regard to how ridiculous it got already)
> that with C++ the probability of project failure is 30% and with Ada the probability of project
> failure is 20%. I don't care if these numbers reflect reality.

If that was all there was to it then it would be a simple matter of
budgeting. Is the 10% you'll have to pay in claim settlements and damages
worth it? If so, choose C++. If not, choose Ada. But I don't think it's the
quantity (and I don't think C++ is only 10% worse than Ada even by pure
quantity). 

>
> a) And I choose C++. And then shit happens. Am I responsible? To what extent?

If the system requires safety and you are responsible for choosing an
inappropriate tool then you're certainly responsible. You're might also be
incompetent and criminally negligent.

> b) And I choose Ada. And then shit happens. Am I responsible? To what extent?

Nobody says Ada is a silver bullet. The point is diligence. You don't use
things with known safety issues in systems where safety is an issue. If you
did the best you can and you followed good engineering practice then
failures should have been mitigated as much as possible. People can still do
the wrong thing with good tools. The question is whether people acted
responsibly, cautiously, and in good faith. And those are things that make a
difference in court.

>
> Are you ready to throw some numbers or can we agree that the discussion went out of
> control and the whole responsibility argument is just nonsense?

The discussion is not nonsense. The idea that people should refuse to use
bad tools on the job is hard because when push comes to shove many people
feel obligated to not be homeless or starving, especially if other people
are depending on them. The question is a question of ideals, having a sense
of social responsibility and right and wrong, and how close you can get to
doing the right thing. You're at least obligated to make your objections and
questions known and then if it's my way or the highway then only you can
decide what to do. Immorality is not ok just because you're in an office.

> Would that work? I was elaborating on this idea several times and it makes sense to me,
> as it puts money into the equation just as it already does in many other parts of our life.
> If my insurance company cares about me doing proper technical service of my car, it might
>  as well guide me in the choice of my programming language, there is really little difference here.
>
> But until this (or something equivalent) happens, please don't argue that the programmer is 
> responsible for his language choices, as such argument has no tangible (and countable)
> foundations. It's just hand-waving.

That is a very odd assertion. Just because there is no legal ecosystem for
something hardly means it's hand-waving or irrelevant. The (attempted)
solution usually comes after the problem, not before. 

Bill



  parent reply	other threads:[~2014-10-30 16:07 UTC|newest]

Thread overview: 97+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-26 18:31 F-22 ADA Programming nathandsash
2014-10-26 19:02 ` Martyn Pike
2014-10-26 21:20 ` David Botton
2014-10-26 23:24   ` Jeffrey Carter
2014-10-26 23:55     ` David Botton
2014-11-14 22:54       ` rriehle
2014-11-14 23:46         ` Dennis Lee Bieber
2014-11-15  6:43           ` wilson
2014-11-15 17:49             ` Jeffrey Carter
2014-11-15 21:28         ` Maciej Sobczak
2014-11-16  9:57           ` Jean François Martinez
2014-11-16 22:26             ` Maciej Sobczak
2014-11-17  0:33               ` Jean François Martinez
2014-10-27  0:13     ` Robert A Duff
2014-10-27  0:31       ` David Botton
2014-10-27 10:17         ` Georg Bauhaus
2014-10-27 10:47           ` J-P. Rosen
2014-10-27 15:06         ` Adam Beneschan
2014-10-27 22:32           ` Randy Brukardt
2014-10-27  6:28       ` Pascal Obry
2014-10-27 15:04     ` Adam Beneschan
2014-10-27 15:17       ` Björn Lundin
2014-10-27 15:41       ` Maciej Sobczak
2014-10-27 16:01         ` Robert A Duff
2014-10-27 20:16         ` Adam Beneschan
2014-10-28  8:45         ` Natasha Kerensikova
2014-10-28 11:58           ` Bill White
2014-10-28 14:56             ` Adam Beneschan
2014-10-28 19:36               ` Bill White
2014-10-28 18:29           ` Jeffrey Carter
2014-10-28 18:37             ` Adam Beneschan
2014-10-28 19:14               ` David Botton
2014-10-28 21:06               ` Jeffrey Carter
2014-10-28 21:32                 ` Simon Clubley
2014-10-28 21:37                 ` Adam Beneschan
2014-10-28 23:59                   ` Jeffrey Carter
2014-10-29  0:34                     ` Adam Beneschan
2014-10-29  5:24                       ` Jeffrey Carter
2014-10-29  8:37                         ` Dmitry A. Kazakov
2014-10-29 17:20                           ` Jeffrey Carter
2014-10-29 20:43                             ` Dmitry A. Kazakov
2014-10-29 20:55                               ` Jeffrey Carter
2014-10-29 21:40                               ` Georg Bauhaus
2014-10-30  8:56                                 ` Dmitry A. Kazakov
2014-11-08  4:52                                   ` Randy Brukardt
2014-11-08  8:12                                     ` Dmitry A. Kazakov
2014-10-30 15:38                             ` Maciej Sobczak
2014-10-30 15:49                               ` Alan Jump
2014-10-30 22:33                                 ` Dennis Lee Bieber
2014-10-30 23:13                                   ` Jeffrey Carter
2014-10-30 16:07                               ` Bill White [this message]
2014-10-30 22:37                                 ` Maciej Sobczak
2014-10-31  9:41                                   ` Georg Bauhaus
2014-10-31 12:51                                     ` Brad Moore
2014-11-01  3:03                                     ` C versus Ada (once again :-)), was: " Simon Clubley
2014-11-01 13:35                                       ` Georg Bauhaus
2014-11-03  1:54                                         ` Simon Clubley
2014-11-03  9:42                                           ` Georg Bauhaus
2014-11-03 12:07                                           ` Luke A. Guest
2014-11-04  2:01                                             ` Simon Clubley
2014-11-03 14:26                                           ` Brian Drummond
2014-11-01 13:46                                       ` Maciej Sobczak
2014-11-03  2:01                                         ` Simon Clubley
2014-11-03  9:10                                           ` Maciej Sobczak
2014-11-03 12:09                                           ` Luke A. Guest
2014-11-03 12:40                                       ` Florian Weimer
2014-11-03 21:58                                         ` Shark8
2014-11-03 22:28                                           ` Dmitry A. Kazakov
2014-11-04 13:42                                           ` Florian Weimer
2014-11-04 15:01                                             ` G.B.
2014-11-04 15:50                                               ` Florian Weimer
2014-10-31 10:11                                   ` Bill White
2014-10-31 12:52                                     ` Maciej Sobczak
2014-11-02 15:40                                       ` Bill White
2014-11-02 22:23                                         ` Maciej Sobczak
2014-11-02 22:52                                           ` Peter Chapin
2014-11-03  1:36                                           ` Simon Clubley
2014-11-03 19:04                                           ` Laurent
2014-10-31 13:24                               ` Jacob Sparre Andersen
2014-11-08  4:45                 ` Randy Brukardt
2014-11-08 23:43                   ` Shark8
2014-11-09  8:39                     ` Simon Wright
2014-11-09 20:53                       ` Shark8
2014-10-28 19:18             ` Simon Clubley
2014-10-27 16:34       ` David Botton
2014-10-27 16:51         ` brbarkstrom
2014-10-27 18:03           ` G.B.
2014-10-27 22:06             ` Simon Wright
2014-10-28  9:40               ` Georg Bauhaus
2014-10-27 20:06         ` Adam Beneschan
2014-10-27 20:21           ` David Botton
2014-10-28 11:34       ` tonyg
2014-10-27 17:01     ` Pascal Obry
2014-10-27  4:53 ` Jerry Petrey
2014-10-29  1:49   ` F-35 (was:F-22 ADA Programming) Robert Love
2014-10-30  9:01     ` Frédéric Praca
2014-10-30  9:07       ` Frédéric Praca
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox