
First, Do No Harm: A Hippocratic Oath for Software Developers (2004) - rhema
https://queue.acm.org/detail.cfm?id=1016991
======
abjKT26nO8
This article seems focused on doing no harm "to code". To a degree, it's
ridiculous. I feel like the bigger problem is how when I look at job postings
for software developers they seem to be postings of jobs which contribute
negatively to the welfare of the society. Google, Facebook and the like being
so widely sought after by software developers just to wash our brains with ads
and track us, millions of financial companies/banks working hard to drive the
economy down for the benefit of stakeholders. Finding a company which doesn't
have a net negative impact is hard, finding one that has a positive one is
even harder. It's not like that just for software developers, sure, but it's
still clear that it's a serious problem for us.

And this part:

 _> Loss of control, loss of intellectual property, unsatisfactory
performance, hidden costs, and hard-to-obtain legal remedies are the harm that
can occur when things go wrong when projects are outsourced._

Yes, it would be a real tragedy if intellectual property (sic!) was violated.
Also, suggesting that someone from outside the US is more likely to give you
_unsatisfactory performance_ is simply racist.

~~~
azangru
> Also, suggesting that someone from outside the US is more likely to give you
> unsatisfactory performance is simply racist.

The article's position is more nuanced than that.

It starts with the premise that good (whatever that means) programmers are
expensive.

It proceeds to observation that companies would outsource to cut costs. It
also makes another observation that Indian and post-Soviet programmers are
cheap.

This observation conflicts with their premise: "good" programmers are
expensive; therefore cheap programmers are likely not "good".

Whether this has any bearing on reality can perhaps be tested
probabilistically, by examining whether there exists a negative correlation
between the amount of money asked for a project and the "unsatisfactory
performance" — if one can define what that means). If such a correlation
exists, it will make this statement not a statement of personal attitude
("racism"), but a statement of likelihood.

~~~
t0astbread
A lot of racist statements can be hidden in an obscure arrangement of facts,
observations and generalization. In this case, the statement that cheap
programmers are less likely to deliver good results isn't inherently
problematic. What is problematic is the following sentence:

> Now, competitors in India, the former Soviet bloc, and elsewhere can just as
> easily use the same tools and techniques at lower cost.

The author implicitly generalizes that all Indian and post-Soviet programmers
are cheap and all cheap programmers are Indian/post-Soviet.

~~~
azangru
> The author implicitly generalizes that all Indian and post-Soviet
> programmers are cheap and all cheap programmers are Indian/post-Soviet.

Respectfully, the generalization that includes the word ALL happens in the
mind of the reader. The authors CANNOT have meant that all cheap programmers
are Indian/post-Soviet. Indeed, in the previous paragraph the author talks
about "barely-out-of-high-school whiz kids", whom he also doesn't hold in high
esteem; and those kids are likely imagined as American.

The claim that the original text makes is probabilistic. It may even turn out
to be true (as in, it is not unimaginable that it's more likely than not to
get bad programmers on the project when outsourcing to cheap companies in e.g.
India or post-Soviet countries).

~~~
t0astbread
I'm still not convinced that that sentence wasn't meant to imply this
generalization. (Whether the author has deliberately written the sentence like
that or subconsciously, I can't say.)

Besides that, bringing in nationalities was completely useless. The author had
already established that low cost contractors yield bad results, so why tie
that to nationalities needlessly? It adds nothing to the text except for a
slightly racist undertone and a bash on engineers of these nationalities.

------
pepper_sauce
I'm surprised by the mental gymnastics other commenters in this thread are
displaying in order to avoid contemplating how tech can and should be held
responsible for its own actions.

All the more reason to push for some form of professional ethics!

~~~
cmurf
I think those mental gymnastics are the result of cognitive dissonance.
There's discomfort resulting from the idea that some action could be unethical
in a non-obvious way to someone intelligent enough to be in the tech industry
(this is sheer hubris and ignorance of course), or that intelligence does not
lead to ethical behavior; or the idea that ethics could or should limit either
innovation or income; or the idea that externalities are unacceptable
exploitation, i.e. it really is someone else's problem. And like any ordinary
person, people are resolving the discomfort with dismissal.

The history of the hippocratic oath shows that despite its age, it didn't
really become popular in medicine until 1000 years after it was written. Seems
reasonably likely there was quite a lot of mental gymnastics in the medical
profession, arguing against an oath.

------
_def
I don't think this is a discussion for developers. Every human being should
"do no harm". The thing is, you get no money by looking out for others. It's
hard to see the (short-term) benefits. And I think because of that there are a
lot of people acting very egocentric and not for the greater good.

I don't know how to fix this though.

~~~
neon_me
> The thing is, you get no money by looking out for others. It's hard to see
> the (short-term) benefits.

This is the main problem of us. We perceive money and short-term goals (self)
over of anything else. To fix the lack of personal responsibility in broader
part of ecosystem is crucial.

Therefore, sort of Hippocratic Oath for software and hardware
developers/managers and education to behave in moral constraints is important.
We are playing bigger role in shaping how future on Earth(and other planets)
will looks like. So it will be beneficial and important to signup for ethical
codex.

I am surprised that we are not already doing it - globally. How come? How is
that possible?

~~~
Nasrudith
You said why already in the second sentence of the first paragraph - there is
nothing to be gained from it and the codexes wouldn't be binding and the last
thing we need is to give liars more tools to feign trustworthiness.

~~~
neon_me
Ok, so what is the purpose of Hippocratic Oath?

Why we have such things as Bar Association for lawyers?

Statements are important - at least you have to fight with your inner feeling
that "you lied" to all when it actual status quo its just "matter of
perspective" bending morals

------
xwdv
The only thing such an oath would do if taken seriously is create a sharp line
between blackhat and whitehat software developers, where as of now I’d say
most of the industry is gray and unjudged.

Personally I would never swear to such a ridiculous contract.

------
harimau777
It seems to me that referencing Code Complete's exhortation to fix the
underlying cause of a problem actually supports refactoring. In my experience,
the most common cause of bugs is code that was either poorly designed, doesn't
follow principles such as immutability and functional purity, or where time
wasn't taken to make it simple. In these situations, refactoring is how you
fix the root problem.

------
dynamite-ready
There are quite a few of these online.

[https://techcrunch.com/2018/03/14/a-hippocratic-oath-for-
art...](https://techcrunch.com/2018/03/14/a-hippocratic-oath-for-artificial-
intelligence-practitioners/)

I think something of the like is definitely needed for software in critical
domains.

Structural Engineers have to be chartered, right? Software engineers in
certain domains should probably be chartered under the exact same conditions.
But how would you define who should, and who shouldn't be chartered?

~~~
noneeeed
The first company I worked for was a high integrity systems/software firm.
Getting your Chartered Engineer (CEng) status was seen as part of your
professional development for most of the engineers.

It isn't required however. Most of the focus was put on the process being
followed (DO178B, IEC 61508, or their equivalents which I've now forgotton)
rather than the compentence of specific individuals. It's more of an
organisational view of competance rather than focusing on individuals.

------
cmurf
[https://absn.northeastern.edu/blog/the-history-of-the-
hippoc...](https://absn.northeastern.edu/blog/the-history-of-the-hippocratic-
oath/)

"First, do no harm" wasn't included in the original oath. Whereas, "give no
deadly medicine to any one if asked" is.

I think it's reasonable as a metaphor, but possibly not as an actual guide.
Every profession could use an ethical code and statement made by each
practitioner, not least of which is an explicit anti-fraud statement. Boy
wouldn't that give a lot of people in marketing some difficulty?

------
blamestross
This seems a bit silly, but I can see room in our culture for an analogue to
the Iron Ring.

[https://en.m.wikipedia.org/wiki/Iron_Ring](https://en.m.wikipedia.org/wiki/Iron_Ring)

------
snvzz
I'll pass.

------
Townley
I think the reason developers in particular need to be cognizant of this (as
opposed to "everyone doing no harm") is because of labor power.

There's a societal expectation that everyone provide for their family. If
you're doing so through evil means (selling drugs, joining the mafia, sweeping
floors as part of a genocidal political movement...) then you're in the moral
wrong. But if you're sweeping floors for Goldman Sachs, no one could
reasonably blame you for causing the financial crisis. Your contribution to an
organization that falls somewhere juuuuust south of neutral is morally
justifiable because you've gotta pay the bills.

But if you're the kind of developer we're talking about here, your ability to
provide for your family is largely taken care of. Your decision to support an
organization is no longer rooted in this socially-acceptable "gotta pay the
bills" mentality, and instead about providing luxuries. That's also fine, but
you now have to reckon with the fact that your contributions aren't in pursuit
of helping pay the bills, and internally grapple with the morality of sending
your kids to private school vs using your specialized, valuable skills to help
modernize your neighborhood community center's tech stack (but at a much lower
salary).

All people need to grapple with the tension between individual/family-level
selfishness and societal well-being. But the relieved, privileged life that
higher salaries afford also comes with an added moral obligation to evaluate
how we spend our time.

Something something spiderman great power great responsibilities.

------
yters
Ironically, doctors have stopped taking the Hippocratic oath...because vowing
to not kill people is so outdated now...

~~~
stuartbman
No, it's because large parts of the hippocratic oath are outdated and involve
refusal to teach medicine to those not in the fraternity, and refusing
abortions. In the UK, this has been replaced by Duties of a Doctor, which is
much more progressive.

~~~
yters
I suspect the controversial part of the oath is the following: 'Neither will I
administer a poison to anybody when asked to do so, nor will I suggest such a
course. Similarly I will not give to a woman a pessary to cause abortion.'

Like I said, not killing people is so behind the times :D

Of course, perhaps there is a bit of concern people may have when the person
holding their life in their hands no longer takes an oath to preserve it, but
what did the ancients know?

------
toolslive
Medicine has largely outgrown that oath. A few examples: At some point you're
going to want to replace a bad heart, and to do that you have to take it out
first. These days if an arm is broken, they often prefer to operate on it and
insert some metal rods and pins to fix it so it heals faster and correctly. In
both cases the intermediate state is worse than what you started with.

Anyway, it's fun as a thinking exercise, but I wouldn't live by it.

~~~
hobs
The oath doesnt say "dont do any harm at all" it says "abstain from all
intentional wrong-doing and harm, especially from abusing the bodies of man or
woman" \- causing pain in attempts to fix the body has very much been in the
realm of medicine since the oath was first coined.

~~~
Symmetry
The modern Hippocratic Oath says that. The original one Hippocrates
promulgated and the ones taken by European physicians followed for centuries
afterwards explicitly prohibited things like surgery.

" _I will not use the knife, not even, verily, on sufferers from stone_ "

Pre-antibiotics and pre-clinical trials that wasn't as unreasonable a position
as it would be now. Of course some European medical workers did perform
surgeries, just lower class ones who didn't take an oath.

------
kolbe
How's the Hippocratic Oath working out for doctors? One of the most unhealthy
things that can happen to me is to be bankrupted, and that seems to be their
goal. The last two times I've actually gone to the doctor for an ailment, it's
been misdiagnosed, given irrelevant/expensive/harmful treatment, and
eventually just went away on its own.

I've stopped thinking of doctors as friends, and instead as salespeople
preying on people in their most vulnerable state. That oath is just another
ruse in the sales process.

~~~
asark
> I've stopped thinking of doctors as friends, and instead as salespeople
> preying on people in their most vulnerable state. That oath is just another
> ruse in the sales process.

Same, I basically consider a doctor an adversary until they give me reason to
believe otherwise. Probably some of the ones who pass that filter _are_
adversaries, still, and are making me pay for crap I shouldn't need to or
directing me to providers who are more expensive to get kickbacks or whatever,
they're just better at hiding it.

They are, as a profession, failing hard at upholding their oath. The insurance
industry may be a uniquely useless part of providing medical care, but they
_do not_ deserve all the blame for the massive harm that's being done.
Hospitals and doctors are a huge part of it, too.

[EDIT] I guess I think of them like mechanics now, actually, in that I figure
any time I follow their advice and it causes me to give them money there's
about an even chance I'm their mark, not their customer/patient.

