The Toilet Paper

Does ACM’s code of ethics change ethical decision making in software development?

ACM’s code of ethics isn’t very effective, but maybe something else is…

Mark Zuckerberg diverts a trolley into a group of tied people so that it doesn’t hit a stack of bills.
Some decisions are ethical, others just Zuck

Codes of ethics provide guidelines that help you do the right thing, but do they actually work?

Why it matters


Software developers constantly make ethical considerations, e.g. when deciding how much user data to collect or time to spend on mitigating security risks. Sadly, developers are people and thus don’t always make the right decisions.

The Volkswagen emissions scandal (also known as Dieselgate) is a highly publicised example of a case where engineers were told to write software that would cause cars to “lie” about their pollution levels during emission tests. The engineers voiced their concerns about this unethical practice internally, but did not inform the authorities. The scandal eventually cost the company more than $30 billion in fines and led to possibly hundreds of early deaths.

To encourage ethical behaviour many professional organisations, like the ACM, have published a code of ethics that provides guidelines for ethical behaviour. While the effectiveness of such codes of ethics has been studied in the past, no one has done this yet for the computing field.

How the study was conducted


A survey was created that described a fictional company that a respondent had just joined as a lead developer. It presented 11 software-related ethical cases, along with an ethical decision, an unethical decision, and an “unsure” option for each case.

The survey was spread among a large number of software engineering students and professional software engineers. About half of the respondents were simply told that the fictional company had strong ethical standards, while the other half was told that the company followed the ACM code of ethics.

What discoveries were made


No statistically significant difference was found between the control group and the group that saw a brief version of the code of ethics. Responses from students were also very similar to those from professional software engineers.

Two of the cases that were presented in the survey were based on recent news stories: the Waymo v. Uber dispute and the aforementioned Dieselgate scandal. None of the respondents recognised the Waymo dispute, but 20 respondents did mention that they recognised the Dieselgate story.

The researchers found that those who did not recognise the Dieselgate story were more likely to favour the creation of test-evading software, whereas none of the 20 respondents who recognised the story chose to act unethically.

This suggests that engineers can be influenced to make more ethical decisions by providing examples of similar news-worthy decisions that make clear that unethical decisions can have undesirable consequences.


  1. There is no evidence that the ACM code of ethics influences decision making

  2. It’s possible that awareness of news stories that involve (un)ethical decisions influences decision making