Ethics: How responsible are we as software developers?

Yesterday, the NOS reported on the use of countdown timers and the potential deception associated with them. This sparked internal discussions about the extent of our responsibility as software developers for the purposes our software is used for.

  • Linda

Written by Linda

Deceiving consumers is not allowed

The NOS headline read, 'This offer expires in 3 hours': webshops deceive with countdown timers. The Netherlands Authority for Consumers and Markets (ACM) warns against webshops that claim an offer expires after a certain time, while it is not the case in reality. At 10KB, we frequently implement countdown timers, where our clients can determine the information displayed in the timer and the consequences of the specified time running out. Technically, these implementations are relatively simple for us, but to what extent are we responsible for the content of our implementations? What if our creations are used for illegal or unethical purposes?

Where is the boundary?

We develop software that helps businesses succeed. We contribute by considering technical specifications, drawing knowledge from other industries, and striving to create the most efficient end product. In the extreme cases, it is clear to us which projects we want to be involved in and which ones we don't. For example, we would never develop a calculation tool for an arms dealer as it involves illegal practices. However, many cases are not as black and white.

Different aspects

We consider such a timer to be relatively harmless, as there are many more "dark patterns" with far greater impact. There are several ethical considerations we need to address. Privacy, for instance, requires us to question which data is being collected, how it is stored, and with whom it is shared (think of invisible tracking and cookie walls that still allow cookies). Safety is another crucial aspect as software vulnerabilities can lead to data breaches and harmful attacks. Discrimination occurs when biased algorithms reinforce inequality. Additionally, even software with legitimate purposes can have negative social impacts such as addiction or interference with human interaction. Furthermore, we are increasingly concerned about the environmental impact of software, such as certain programming languages consuming more energy than others and poorly optimized code needlessly straining hardware resources.

"But what about the client..."

It would be convenient for us to shift the responsibility onto the companies we work for, but we believe we also bear a certain level of responsibility. When it comes to the countdown timer mentioned by the ACM, we can delve into the client's goals by asking various questions and potentially adjust accordingly. We believe that all parties involved share a collective responsibility. Developers, companies, users, and policymakers ideally collaborate to address ethical issues.

Conclusion

These types of news articles from the NOS undoubtedly spark intense discussions at our lunch table. Ethics is not a one-time decision where we set the course and never think about it again. Yes, we want to create great things, but not at any cost. Ethics is something we actively consider in our office, and we take our role as developers very seriously. Let's continue to foster an open dialogue and remain aware of our societal responsibility.

Linda
Where do you draw the line?

We're curious to hear your opinion, so please let us know!