
Code I’m Still Ashamed Of - mnmlsm
https://medium.freecodecamp.com/the-code-im-still-ashamed-of-e4c021dff55e#.76pl74cy2
======
nstart
This is tough to read. I've railed and yelled in meeting about ethics and have
ultimately discovered that in nearly every case the money talks louder. I
remember this company I worked with that had a sign up with a "add me to the
newsletter" check box. When leading a ux review it was decided to switch it
off by default. One day a friend of mine buzzed me to say she was annoyed at
receiving mail even though she specifically made sure that that box was
unchecked when signing up. I assumed it was a dev error and checked with the
dev team and was told to go check with the CTO. When I did, the CTO said that
it was exactly how he wanted it. I wasnt even manager level but I lost it and
yelled at the CTO. I was simply told "we need our email signups and dont dare
tell me how to do my job". I tried to look for support elsewhere in the
company and all I discovered were at best some hushed mutterings in corners.
Even laughs of me being on some kind of moral high horse. It hurt to know that
the same people I know who did these things are now working on startups that
scoop up massive amounts of people's location data. The same people who wrote
tiny scripts to collate customer data to give to the sales teams who would
give it to clients as part of a sales package even though the terms
specifically said we don't share personal info. It bothers me that I don't
even know how to fight it since all it takes is the next dev to come along and
say yes to end months of protests against something unethical. I don't want
regulation and lobbyists pushing their tech onto me as a solution. If anyone
has advice, I think this is a great thread to share thoughts.

~~~
JoeAltmaier
SO many anecdotes we could share. Mine is, I contracted out to do work on an
80211 radio. The company wanted quicker connections on bands reserved for
emergency communications in many countries. The FCC rule was, listen before
you talk. But its quicker to ping the access point immediately. Quicker but
illegal, and obstructive to emergency communications.

I refused flatly. Phrased it as 'as a contractor I'd be liable. I don't have
deep pockets'. So they just got an employee to do it, who had absolutely no
compunctions about it.

Its not so much that a company wants to do wrong things. Its that there's
always an engineer willing to do them.

~~~
croon
Completely agree. While I like the idea that we all share some responsibility
about the decisions we make, and I applaud you for yours, it shouldn't be on
the implementor to fix. The companies/heads demanding this should be the ones
liable, and heavily so.

To make a crude and polarizing comparison, especially since I happen to land
somewhat on the other side of that argument:

You can't blame a tool (bat/knife/gun) for what its agent does with it. If one
tool doesn't work for them, they'll get it done with something else.

~~~
JoeAltmaier
Sadly I suspect corporate decisions get made in a microcosm. Whatever is good
for the next quarter or next product. A middle manager would be fired for
doing anything else. Or at least reviewed badly. "Sure you did the right
thing; but your numbers were down. Sorry no raise/promotion"

So there is no particular person in a corporation that has direct incentive to
be responsible.

~~~
st3v3r
So we need to change that. We need to make sure there is a heavy stick being
used against those that decide to make these unethical decisions.

------
nommm-nommm
>I advised her to get off the drug ASAP. Thankfully, she listened.

This bothers me, this isn't how medicine works. While there's very, very
legitimate reasons to be critical of over prescribing and marketing, "I heard
about an adverse outcome in someone else that may or may not be related to a
drug she was taking" is not a good reason to recommending another person to
stop treatment.

All medical interventions are a cost-benefit analysis and _all_ medical
interventions have risk, some more than others. Forgoing medical interventions
also has risks and benefits. For all we know the risks were very minimal and
the drug helped the sister. This could have been very harmful advice if the
drug required, say, tapering down and the sister went off of it without
assistance of a medical provider.

The author is themselves handing out incredibly rash and potentiality harmful
advice.

~~~
forlulz
True, the author is no doctor, but in this case this is not the only drug
available.

In the article:

“The quiz doesn’t work,” she said.

“Oh. What’s broken?” I asked.

“Well, it seems that no matter what I do, the quiz recommends the client’s
drug as the best possible treatment. The only exception is if I say I’m
allergic. Or if I say I am already taking it.”

~~~
nommm-nommm
What does that have to do with anything at all? The morale of the story is he
or she heard something on the six o'clock news and recommend the sister stop
treatment based on that. That's extremely improper advice.

The author is apparently upset about assisting in giving what they believe to
be improper medical advice so they proceeded to give improper medical advice
themselves.

There's also a huge logical flaw to go from "this drug had a side effect that
may have caused death in one person" to "this drug is inappropriate for my
sister"

------
uiri
This is why Software Engineering as a profession should be regulated and
licensed just like other engineering fields - mechanical, civil, electrical,
etc. Professional Engineers are bound by a code of ethics stressing first and
foremost the welfare of the public. Engineers who behave unethically have
their licenses revoked which can be a career-ending event. It is our
responsibility as engineers to ensure that the code we ship does not
negatively impact anyone's health or safety; especially as software becomes
more and more pervasive in society.

[https://www.nspe.org/resources/ethics/code-
ethics](https://www.nspe.org/resources/ethics/code-ethics)

[http://www.ieee.org/about/corporate/governance/p7-8.html](http://www.ieee.org/about/corporate/governance/p7-8.html)

[http://peo.on.ca/index.php?ci_id=1815&la_id=1](http://peo.on.ca/index.php?ci_id=1815&la_id=1)

~~~
codingdave
> It is our responsibility as engineers to ensure that the code we ship does
> not negatively impact anyone's health or safety; especially as software
> becomes more and more pervasive in society.

I agree 100% with the above sentence. But I do not think that implies
regulation and licensing to be the appropriate solution, at least not
universally. Perhaps it is appropriate to require licensing to write code for
life-support systems, vehicles, or other systems on which all other
engineering requires licensing. But not to write code for Twitter. Not to
tweak the PHP on your Wordpress site. Not for the vast pile of code that may
be meaningful to the author, but is trivial when considering its risk to the
health of the general public.

~~~
scott_karana
To "act unethically" is what GP was talking about. Nothing about security or
liability.

I do not think it would be acceptable to intentionally write unethical code in
_any_ of those problem spaces. ;-)

------
Beltiras
I'm the chairman of the board of a local society of computer scientists. We
have bylaws that describe a code of conduct for members governing their work.

    
    
      1. Let honesty govern your work
      2. Heed professional responsibility
      3. Do not accept gain from a third party, except with full knowledge of your employer/contract partner
      4. Do not ever use confidential information from an employer of contract partner without informed consent
      5. Increase your professional capabilities
      6. Make sure your conduct is an exemplar of membership
      7. Share your experience with other members
    

We host meetings once or twice a month where members or guests hold lectures
on varying IT topics.

I don't know if tech in Iceland is such a small community that it tends to
keep people honest or that transgressions like this happen all the time and
are not spoken of. I like to think our members are ethical in their work.

~~~
ysavir
I actually don't see any rule in there about being ethical towards your
userbase. The integrity encouraged here is towards the employer, which will be
the one to insist on screwing over the users.

~~~
Beltiras
Let honesty govern your work. It's a bit difficult to translate and still keep
the language clear.

~~~
ysavir
What you really mean is that it's hard to be upfront about saying "Cause your
employer trouble over client needs that screw over the user" and still keep a
job. The message itself can be crystal clear; broadcasting it where it
actually means something is the challenge.

~~~
Beltiras
No, I mean that going from a verb-based language to a noun-based language is
tricky without either losing meaning or becoming "wordy".

------
lordnacho
An awkward situation, for sure. However, after a lady in my community killed
herself (she was on some prescribed drug), a friend of mine in the industry
explained his view.

Apparently, these drugs can cause some people to kill themselves. But they
also cause some users to recover, meaning they're less likely to commit
suicide. It wasn't clear how exactly this balance was measured, but the net
effect can be positive.

Still raises some hard questions along the lines of the trolley experiment.
Who gets to live, and who gets to die? And what about the fact that we don't
even know who it is that will get better or worse?

Regarding coding, the coder is only really able to quit because the market is
good. Plenty of people along the same economic chain that led to this are in
more precarious job circumstances.

~~~
nicky0
Similar thought: should you have a moral quandry about doing work for a car
company, given that 1.25 million people per year are killed in road traffic
incidents.

~~~
douche
This takes you down a never-ending and unproductive rabbit hole. We really
aren't equipped to encompass the totality of the effects of any particular
action we take, which will invariably, at some point in the chain of
consequences, have adverse impacts on someone, somewhere.

------
scraft
I just wanted to say I hope the OP isn't beating themselves up about what
happened. In terms of moral integrity I feel they did very well to, at a
relatively young age, take the decision to quit. I understand the point of the
article (we may be developers at the end of the chain, and there maybe lots of
people legally and ethically responsible above us, but we can still stand up
for what is right) but at the same time, until you read something like this,
or are in the situation yourself, it is common for people not to appreciate
the knock on of what we do. If the OP hadn't made the quiz, someone else would
have, this isn't to say people can't take a stand, but it is more to say no
matter what they did that person would still be dead.

So my respect to the developer in question, I'm fairly sure I would have
continued to work there. I would have just said to myself that these things
happen, there are laws in place to protect people, if the laws aren't good
enough we should campaign for change, I'm just a developer move data around a
machine, etc. But I sort of assume by time I get to my death bed, I'll
probably look back over my life and decide I made most decisions wrong, rather
than work hard for success, fortune, etc. perhaps favouring compassion,
helping others, charity work, etc. would have actually be a life better spent.
So for the time being I'll give credit to those who take the moral high
ground!

------
b123400
Here is mine. The company was going to pitch investors very soon but its
product is not ready yet. The CTO copied our competitor's code (well, mangled
javascript), replaced their name with ours, updated some public API to our
company name. Then asked me to build upon that.

I said this is not acceptable but they said it is ok because they are not
releasing it publicly, it is just for demo for investors. I am sure we are
either violating copyright or telling lie to investors, and am surprised no
one in the company think it is a problem. After all I have to do it, because I
was just an intern.

~~~
eveningcoffee
If you can, refuse. Tell them that you believe that you get into a big
trouble, if this comes out and you are not sure anyway that it does not.

Based on your description they are looking for a scapegoat. If this comes out,
they definitely point towards you while saying that they were not aware of
this, must be interns initiative.

------
flanbiscuit
> “Yes. That’s what the requirements say to do. Everything leads to the
> client’s drug.”

Working in Pharma Advertising I have seen other devs in my company do exactly
that.

I also found out recently that a company I made a website for bought a drug
and raised the price 2,000%.

I've already started my new job search.

~~~
paulcole
What percentage would you have been OK with?

------
moonshinefe
I have code I'm ashamed of as well. I was very young, and told the app was for
a fairly innocent cause. After the fact, it became apparent the company was
also selling it to a fairly controversial foreign government entity.

I think it's worth standing up to this sort of thing, but good luck getting
that new job if you stipulate they inform you before hand who they're going to
sell your code to. I'm not sure what the solution is if you don't have a ton
of leverage (and if you choose to turn down the job, someone will gladly take
your place in this economy).

Interested in hearing other people's suggestions.

~~~
EvilTerran
I note the BCS (a professional body of sorts for British technologists) has a
"public interest" clause in its code of conduct for members, which arguably
prohibits the sort of behaviour described by you & in the submission:

[http://www.bcs.org/category/6030#publicinterest](http://www.bcs.org/category/6030#publicinterest)

That said, there's no real obligation to be a BCS member, and most people
aren't, which somewhat defangs their CoC: like you say, if you refuse the
work, someone else will do it. Still, it's a good symbolic gesture, and
perhaps points the way to go.

------
tf2manu994
Expected this to be a "the code I never wrote" thing, from there blog name.

Then thought it might be a "lol look at my bad code that I wrote 6 years ago"

Pleasantly surprised. For more, I recommend"the gift of Fire" by Sara Baase.

------
donatj
What I've discovered over the years is simply if you refuse to build it
they'll get someone else to do it, and someone else certainly will. That's not
too say you should, just that you as a developer have very little power to
actually stop it.

~~~
eloisant
You have little power to stop it, but you can choose not to be part of it so
you don't have it on your conscience.

------
bakhy
good read. and kudos for coming out and opening the subject.

i personally think this is not just a developer issue, but affects every
person living in a society. the quality of the society we live in depends on
all of us doing as much as we can to achieve it. unfortunately, the living
today is too precarious, and too many people cannot afford to be too ethical.

the sad thing about our industry to me is that sometimes it seems we give up
before putting up any fight. we know how hard it is to control complex
systems, how impossible it is to create a perfect system. so a lot of us
decide, like that fox in Aesop's fable, that it's actually wrong to even try
to do anything. if she can't reach the grapes, then the grapes must be sour.
this happens everywhere, but it strikes me in IT particularly if you look at a
simple example - most IT people find it obvious, and live with it, that
everything we do online is recorded and that it's not that hard to spy on
anyone. most regular people don't fully grasp this, and get occasionally
outraged. how many of us (i count myself in here) will then just wave their
concerns away, and explain that they simply have no choice but to accept this
future?

------
TheAceOfHearts
This is something I've wondered about.

What do you do if your boss asks you to do something which you believe to be
legally questionable or unethical? For example, if you're asked to do
something which you thought might be illegal, but you don't know for certain,
would the best course of action be to hire a lawyer? Based on what I saw from
the recent Volkswagen fiasco, it seems like the developer himself can be held
liable. Is this correct?

~~~
PaulKeeble
I have been asked a couple of times to do things that were unethical, never
illegal but certainly unethical. I resigned on the spot in both cases. I feel
this is how professionals should act.

When asked in my interviews why I left I stated clearly that I was asked to do
something unethical and resigned as a result when "forced", it was taken
positively.

~~~
nommm-nommm
The problem with that is people need to eat. Very, very few people are in a
position where they can resign from a job on the spot.

~~~
adrianN
The market for developers in many locations currently seems to be such that
developers make good money and should be able to have some saving and finding
a new job isn't terribly difficult.

~~~
ryandrake
The key word there is "currently". I've lived through several cycles now, and
I can assure you that there are times when you will take any job that comes
because you want to eat or pay rent this month.

~~~
nommm-nommm
Now that I am experienced I am confident that I can get a new job fast. When I
was just starting out it took a few months to get my first job everyone wanted
experience (I live far away from San Fran). Now I can quit my job on the spot
(it helps my spouse also works) but I couldn't have quit my job on the spot
back when I had student loans.

~~~
ryandrake
Key word again being "now". The economy goes in cycles, and there will come
another time when few or no companies are hiring. It's happened before.

~~~
nommm-nommm
If it wasn't clear I am agreeing with you.

~~~
ryandrake
Ahh it is now :)

------
rurban
I was asked a couple of time to write illegal code or hand over log data to
management which they are not allowed to see. In Europe we still have working
privacy protection laws, you know.

I always said no, and management always reacted professionally and accepted
it. Maybe they just don't know software or privacy laws that well.

Having a clean conscience trumps all, and in the end you will have troubles,
not your management.

------
kol
Every single CS student should read this.

~~~
brianwawok
I took a CS ethics class. We generally read better things, with a more
interesting conclusion.

The conclusion of this? If you said NO, someone in India would have made it,
for likely less money. The only winning end game would be to e-mail the FDA
and hope that the right political party and lobbyists are currently in control
of the agency.

------
zekevermillion
This reminds me of issues we face in the legal profession. Lawyers have
convinced ourselves, through elaborate rationalization, that every person
deserves legal representation. Yet lawyers clearly make decisions about what
kind of work they want to do, and what kind of clients they are comfortable
representing. For example, most divorce lawyers tend to specialize in
representing husbands or wives (not both), and most employment and labor
lawyers either represent the company or the employee consistently, etc. But on
the other hand, many defense lawyers become prosecutors, and vice versa. The
key is that whatever role we like to take, we make ethical decisions within
that role. If I am a prosecutor, I work for the people and my job is to "do
justice". If I defend accused criminals, my job is to advocate zealously for
the accused b/c anyone may be falsely accused. This system relies on
discretion -- that is, the individual professional is free to decide whether
to pursue a matter or take on a client. Unfortunately discretion does not
exist in most software development efforts. Unless you are contributing to
free software on a voluntary basis, it is likely that you will be called upon
from time to time to support businesses that you don't like. This is a hard
problem and I don't think there is an easy answer. If anything, the answer may
require that you forego many of the economic trappings of success if you wish
to live an ethical life. I don't expect anyone to make that decision, although
I admire those who do. Not so much the Richard Stallmans who can live on their
celebrity, but the people who adhere to those ideals and do not have celebrity
to fall back on when they can't make their rent.

------
yorksranter
I was asked to scrape details of 50k+ people from LinkedIn and load them into
essentially a spam cannon because, you guessed it, we needed the e-mail
signups. And follow-up sales calls. So, probably illegal (because spam),
generally horrible behaviour, and also a huge violation of LI's terms of
service. I said no. Fortunately if I didn't program it in that company nobody
was going to do it and all I had to put up with was snark.

------
Tharre
I don't get it.

I mean yes, sure, I realize the author blames himself for the death of that
poor girl. But how could he possibly have known? It's neither his job nor his
responsibility to know anything about the side effects of this drug. His job
was to built a website, according to the wishes of his employer. And so he
did.

Hindsight is 20/20, it's easy to say afterwards that what he did was
unethical. But to me this seems more like bad luck.

~~~
somestag
On the one hand, it was clear that the website wasn't meant to be informative,
since it always recommended the client's drug no matter what the questionnaire
returned. Clearly that was a bit shady.

On the other hand... as a general rule, I don't really want software
developers deciding what to code based on their personal medical opinions.
That can cut both ways.

If the author felt it was unethical at the time (and he says it didn't really
cross his mind), the best he could have done would have been to quit. Then, of
course, someone else would have taken his place. Perhaps his conscience would
have been cleaner, but I doubt any girls would have been saved. The stark
reality is that ethical quandaries like this call for an all-or-nothing
approach; either you're disturbed enough to report their actions to the
authorities, or you don't do anything at all. You can quit, but that won't
save anyone, so you're not really helping. (Unless you're irreplaceable, of
course.)

There's another important element to the author's story: the sketchy
questionnaire and the drug's harmful side effects weren't really linked in any
way. Marketing is marketing; as the author says, he knew the job of the site
was to promote the drug. Shady questionnaire or not, that's not inherently
problematic. If the pharma company misled its customers on the side effects or
knew the drug wasn't safe, that's an entirely separate issue that the author
simply could not have known of. Drugs are complicated business, and they can
be helpful, dangerous, important, and abused all at the same time.

The "last line of defense" statement was a powerful one, but not one I feel I
can really agree with. It's often said that pharmacists are the last line of
defense for prescription drugs, and that's how it should be; they actually
have the training to know what they're doing. Software engineers might be a
knowledgeable bunch, but they're not so knowledgeable they should be making
calls outside their expertise.

~~~
kamjam
I agree with you totally. I'm sure the author feels some responsibility for
having some played some part of this, but it's the pharma company that should
be ashamed.

With regards to advertising, I'm from the UK so we don't get much medical
advertising, but in the US it is crazy. Half the adverts in commercial breaks
seem to be for medicines with half a dozen potential side effects.

> Then, if a visitor could prove they had a prescription, they were given
> access to a patient portal with more specific info about the drug.

I assume that it was just further information about the drug. In the UK only a
doctor can prescribe controlled medicines. I assume it's the same in Canada...
if so it's for the doctor, who has had years of training in this field, to
prescribe the correct drug. Yes, some drugs cause side effects for some
people, and medicines need to be adjusted/changed as a result. We don't know
how many people died as a result of the medicine, but that's what government
regulation should deal with not allowing untested drugs to be sold.

> We’re approaching a time where software will drive the vehicle that
> transports your family to soccer practice. There are already AI programs
> that help doctors diagnose disease. It’s not hard to imagine them
> recommending prescription drugs soon, too.

For me this was the most (and only) important paragraph of the post.

------
jcj52436999
Applying the term engineer to software is a problem here, there is a lot of
law attached to the term, and proper lines between being a Software
"Developer" and being a Software "Engineer" have not been drawn yet. I have
found that some corporate entities insist on calling an engineer anyone
developing software, just so they can point the blame and liability at some
employees, like VW tried. Liscensing as an engineer requires at least an ABET
BS degree in Engineering, plus tests and years of junior time, but
corporations throw this word about like confeti, conferring it on any employee
they like. In the licensed world this title indeed means both criminal and
civil financial liability in the case of errors. It is strongly advised to use
the title Developer, and avoid the title Engineer, unless one wishes to work
in harms way of prosecution from some error that harms someone.

------
throw2016
There is a problem with software engineers. Narcissism.

Its disturbing how many software discussion boards routinely refer to other
people as dumb or ignorant.

It's as if everyone should leave their area of expertise and become software
engineers.

This kind of hubris that allows some to think they are better than others only
paves the way for people to dehumanize others and behave unethically.

And we have seen after decades of posing as champions of freedom and liberty
nearly the entire industry has been co-opted into the surveillance economy or
state surveillance programs without so much as a murmur with Snowden left
holding the baby of these pretensions.

------
err4nt
I have been asked to do unethical-but-not-illegal things in the past, and in
response I (unwittingly) delivered something ethical under the guise of being
the requested item. Still dubious ethics, but just between me and the client,
not anybody outside.

The most common request is to knock off another site. You can hit the save
button, or copy code, but what I do is code up a better similar design from
scratch. The result is a superior product so everybody is happy, but I would
never take code that wasn't open source. I don't even peek at their code
during this process!

------
OJFord

        > As developers, we are often one of the last lines of
        > defense [sic] against potentially dangerous and
        > unethical practices
    

I think this article is a prime example of how professional institutions can
be just as important in software engineering as other fields more typically
associated with such bodies.

Just because software isn't a physical entity like a bridge that can
physically collapse on someone, it seems to be the view of many that a
professional body with guidance on ethics, best practice, et al. has no
relevance.

~~~
Nition
That spelling of defense is correct in American English.

------
worik
That page has the most blocks that I have seen uBlock Origin do - over 120.

------
3chelon
As others have said, the biggest culprit here is the law that allows
prescription drugs to be pushed in this way.

Was the drug in question an SSRI by any chance? If so, that is terrifying.

------
johnydepp
I have seen bad code in my life. Some cases developers don't care about the
code ethics OR they are not intelligent/experienced enough to write a good
code.

But in many cases its the mistake of product managers or leads. When the
product goals/specs are not clear, the design changes very often and you have
to meet the tight deadlines. This leads to redundant and inefficient code
which is very difficult to clean up and maintain.

------
golergka
A lot of drugs have severe side effects. And of course, if a drug is popular
enough, there always will be a couple of extremely severe cases.

Does it mean that those drugs are bad? Does it mean that the recovery of
millions of patients is outweighted by one where the doctor probably shouldn't
have prescribed it in the first place because the patient was already
predisposed to depression or depressed in the first place?

~~~
gcp
Your argument sounds like a false dichotomy to me. We can have drugs with
potentially bad side effects _and_ make efforts to make sure they're not
incorrectly prescribed.

~~~
cowsandmilk
I saw nothing in the article that indicated the drug discussed was incorrectly
prescribed or promoted.

Honestly, the article could be written about someone doing a marketing
campaign for facebook and then hearing about a teenager committing suicide due
to facebook. We would all find that absurd, but it is functionally equivalent
here. Facebook has been sued for the suicide of teenagers, just like the drug
company.

~~~
eloisant
What I find very disturbing in US, that I haven't seen in France for example
is marketing push (including TV ads) for prescription drugs.

Is it something people do, go to their doctors and say "that drugs looks great
because I've seen it on TV/some online quiz told me I need it, please write me
a prescription"?

~~~
xori
Yup. It's a different culture.

------
CapitalistCartr
The major side effect of making coding easier is more people will. Some will
have fewer scruples about ethics. So as coding tools get easier to use, more
such dishonest coding will show up.

I think a solution, alongside our personal integrity, is watching for it.
Whether we be Google, or a lone, random programmer, we could any of us chance
to ferret out such a nasty site and shine the bright light of day on it.

~~~
bbcbasic
I do a little to help by clicking ads to those fake news sites. Then clicking
around and closing the site. Costing them ad money but no sale.

~~~
moonshinefe
Uhhh, they often make money simply by how many clicks they get though...

~~~
bbcbasic
The ads that take you TO the site. Usually there are no ads on the site, just
a sales funnel for a questionable product

------
mixmastamyk
Earlier this year while looking for work, I received an offer to start on a
project that would scan innocent travelers (through client's airports) and
build dossiers on them looking for criminal connections.

I'm proud to say I declined and included the fancy word "repugnant" in my
reply.

------
jdefr89
This is a very tough thing to address if you're a security researcher say for
the government. The likes become blurry on what is ethical and what's needed
for keeping weapons that can protect us..

------
UhUhUhUh
In practice, liability is the yardstick of ethics. Anyone caught in the
"unethical/not liable" zone is alone. Which for most of us results in shame.
For a few others, it results in pride.

------
sguav
Thanks for the story.

I feel this has been an issue for other types of jobs so far, but this example
points out how _easy_ is to be borderline with ethics...which _may_ itself be
a non-ethical choice IMHO

------
markharris99
I was reading the comments of the article and I came across an interesting
thought.

Whilst we in first world countries may be able to protest against our
employers or try and steer them away from non-ethical actions.

What happens when the employer takes away the assignment in question and gives
the work to an off-shore company, who's only obligation is to get paid? Where
the developers of said off-shore company's obligation is to get paid so they
can eat?

Do you think off-shore developers are going to have the same moral stances of
a first world developer? I don't think so.

I know there are a couple of voices in this thread who think they can be that
knight in shining armor, a bit like Don Quixote. However, you can't rail too
much. Lest you find yourself outcast, side-lined or even fired?

I thought it was an interesting situation to ponder.

~~~
oakesm9
The same could be said if you refuse to do the work and it's given to any
other person who doesn't morally object (off-shore or otherwise).

~~~
ff10
Unfortunately, the ethical chain here is only as good as it's most unethical
link. Then again, most people really don't have a good feeling being the
corrosive link.

~~~
danielam
I don't know what you mean by "ethical chain", but whether something is the
right thing to do is independent of whether other people are acting morally or
not. Just because others are morally corrupt does not justify one's own moral
corruption.

------
joesmo
Amazing how much backlash there was at the idea of legally requiring software
to explain its decisions, but this is one example out of many that makes it
clear that we either require it or people will die from software with bad
intentions. To me, the idea of trusting software authors or companies without
the accompanying legal framework to ensure that it isn't blind trust is
absolutely insane. I should hope VW (amongst many other companies) has proven
that beyond any doubts.

------
aminok
If he hadn't coded it, someone else would have. The most effective way to
change the world, in my opinion, is to push for political and social changes
that change incentives in a manner that reduces the number of unethical
economic niches that exist. Sacrificing your own employment opportunities out
of principle has next to no effect on the larger picture, and if anything,
will reduce your own ability to shape things in a positive direction in the
future.

~~~
fallingfrog
I disagree. Even if the boss found somebody else to do it, the fact that
somebody had stood up and said no would make a difference. It still would
provide an example to other employees. Behavior is contagious. You have more
power than you think. If everyone sits back and says "I can't act ethical
until we have big political and social changes", I can guarantee you that
those changes will never occur. Somebody somewhere has to start the ball
rolling, even at some personal cost, or nothing will ever change.

~~~
ryandrake
It sure would provide an example to other employees. Mike was replaced because
he wouldn't write the code he was asked to write. Lesson learned: Write the
code you're asked to if you want to keep your job.

------
Kenji
My take on this: If someone reads garbage advertisement information on a
random website and takes this medication solely because of that, they fail to
do the most basic thinking and scrutiny. The gene pool won't miss these
people. I know, it's harsh and cynical, but it's the truth (oh boy, this
opinion will be unpopular, I already feel it in my bones). If everyone had to
take responsibility for such thoughtless behaviour of other people, we
couldn't do anything anymore.

However, I do see major moral implications of writing code for things like
cars, rockets, robots, pacemakers, etc. This is where the true responsibility
of software engineers lies.

