The Reasonable Developer
Paul Verbeek-Mast
Front-end Developer @ Werkspot
Slide 2
Content warnings
Detailed description of sexual assault
Image of raw meat
Image of Mark Zuckerberg
Slide 3
Slide 4
Slide 5
“I’m just an engineer.”
Slide 6
– Tom Lehrer (in ‘Wernher von Braun’)
“Once the rockets are up,
who cares
where they come down?”
Slide 7
Slide 8
The Reasonable Developer
Paul Verbeek-Mast
Front-end Developer @ Werkspot
Slide 9
Reasonable
having sound judgement; fair and sensible
Slide 10
Normal distribution &
standard deviation
L’Homme Moyen
(The Average Man)
Slide 11
!
"
$
Menlove
Vaughan
%
%
%
%
%
%
Slide 12
Slide 13
did he behave like an ordinary,
reasonable man?
Slide 14
The Legal Village
&
'
(
)
*
+
reasonable person
reasonable o
!
cer
ordinary prudent man
of business
reasonable hairdresser
fair-minded and
informed observer
“The ugly truth is that we believe in
connecting people so deeply that
anything that allows us to connect more
people more often is de facto good
. It is
perhaps the only area where the metrics
do tell the true story as far as we are
concerned”
– Andrew Bosworth, VP @ Facebook
https://www.buzzfeed.com/ryanmac/growth-at-any-cost-top-facebook-executive-defended-data
Slide 20
Slide 21
Ethical dilemmas
are everywhere
Slide 22
What is your product when it’s
“free”
to use?
Slide 23
Slide 24
Slide 25
What is
“safe enough”
?
Slide 26
Slide 27
Slide 28
How much effort should we put into
preventing misuse
?
Slide 29
Slide 30
Slide 31
Should I
fix
this bug?
Slide 32
How much
harm
can
this bug cause?
Slide 33
What are we
sharing
back to the
community?
Slide 34
Slide 35
Slide 36
Would you write code that’s
clearly unethical
?
https://insights.stackoverflow.com/survey/2018/#ethics
No
Depends on
what it is
Yes
58.5%
36.6%
4.8%
Slide 37
Would you
report
unethical code?
https://insights.stackoverflow.com/survey/2018/#ethics
Depends on
what it is
Yes, but only
within the company
Yes, and publicly
46.6%
35.7%
13.1%
No
4.6%
Slide 38
Who is ultimately most
responsible
?
https://insights.stackoverflow.com/survey/2018/#ethics
Upper management
The person who
came up with the idea
The developer
who wrote it
57.5%
22.8%
19.7%
Slide 39
Do developers have an obligation to
consider the
ethical implications
of their code?
https://insights.stackoverflow.com/survey/2018/#ethics
Yes
Unsure /
I don't know
No
79.6%
14.3%
6.1%
Slide 40
Reasonable Developer
1.
Does not write code that’s clearly
unethical;
2.
Reports any unethical code;
3.
Holds upper management responsible
for accomplishing something unethical;
4.
Is obligated to consider ethical
implications of their code.
Slide 41
Code of Ethics
Slide 42
ACM Code of Ethics and Professional Conduct
1.
Avoid harm;
2.
Contribute to society and to human well-being,
acknowledging that all people are stakeholders in computing;
3.
Be fair and take action not to discriminate;
4.
Design and implement systems that are robustly and usably
secure.
“An ACM member should”
Slide 43
Accept full responsibility for their own work;
2.
Be careful to use only accurate data derived by ethical and
lawful means, and use it only in ways properly authorized;
3.
Avoid associations with businesses and organizations which
are in conflict with this code.
ACM Software Engineering Code
“A software engineer should”
Slide 44
ACM Code of Ethics and Professional Conduct
https://www.acm.org/about-acm/acm-code-of-ethics-and-
professional-conduct
ICAEW framework for resolving ethical
problems
https://www.icaew.com/technical/ethics/framework-for-
resolving-ethical-problems
Santa Clara University framework for
ethical decision making
https://www.scu.edu/ethics/ethics-resources/ethical-decision-
making/a-framework-for-ethical-decision-making/
Slide 51
Ethics is an integral part
of software development
Slide 52
Don’t just act reasonable.
Act responsible.
Slide 53
Create your own code of
ethics, and live by it
Slide 54
You are not
“just an engineer”
Slide 55
Thank you
Slide 56
Paul Verbeek-Mast
@paul_v_m
Front-end developer @ Werkspot