Those who practise a profession must accept that they have a certain responsibility not only to protect the interests of society, but also because their professional conduct is murky and unintelligible to most clients, managers and policymakers. The latter must be able to trust that the professionals work ethically. Of course, that trust isn’t always justified, as the ‘diesel dupe’ software scandal at Volkswagen recently revealed.
Programmer autonomy is at stake
This brings us to a critical dilemma. On the one hand, society wants the programming profession to be more heavily regulated and supervised, given how important software has become. On the other hand, the programmers themselves need to be free to act. After all, reality is so complex that it cannot easily be captured in a set of rules; each new situation requires the expert opinion and ethical judgement of the professional.
The dynamic relationship between society and programmer is clear: the more programmers act responsibly, the less government will need to intervene on society’s behalf. It’s up to the programmers, then; their professional autonomy is at stake.
Ethical programming in two steps
Programmers can take the first step towards acknowledging their responsibility by drawing up their own code of ethical conduct. Codes of this kind are naturally more effective if they are compulsory. Enforcement is therefore the second step.
When a lawyer violates the code of conduct for the legal profession, he or she can be disbarred in accordance with standard review and complaint procedures. A similar system can be imagined for programmers.
In addition to codes, society can also rig up an enforcement structure. In exchange for codes and enforcement, it can allow the profession the freedom to take decisions based on expertise, experience and professional ethics, naturally within a certain statutory framework.
Existing codes of ethics for the IT sector
Various IT-related occupational groups have already started drawing up codes of ethics. The Association for Computer Machinery (ACM), for example, has had a Code of Ethics and Professional Conduct since 1999. The code states that members will
- contribute to society and human well-being
- avoid harm to others
- take action not to discriminate, and
- respect the privacy of others.
Adherence to the code is voluntary, however. The ACM plans to issue a revised code in 2018.
International organisations such as the Institute for Electrical and Electronic Engineers (IEEE) and the International Federation for Information Processing (IFIP) also have or are involved in developing professional codes for programmers.
Pressure by lawmakers
At the moment, these codes are voluntary. It appears, however, that society will not be satisfied with general and non-committal initiatives. The European Parliament, for example, has called for a dedicated code of ethical conduct for robotics engineers, and the German Transport Ministry’s ethics committee has taken charge by becoming the first in the world to draft a set of ethical guidelines for self-driving cars.
Programmers are therefore under growing pressure to develop a mature professional culture that provides clear guarantees for ethical programming. How the scales tip between government regulation and professional self-regulation will be determined in the years ahead.
So it’s high time for Dutch programmers to get to work. Embrace the responsibility befitting your position in society. Being a professional is a burden, but also an honour. Accept it with verve!
By Frans Stafleu, assistant professor of Ethics at Utrecht University
& Linda Kool, senior researcher at the Rathenau Instituut.
Be sure to read the other articles in the Decent Digitisation series, and the related reports: