Sign In

Communications of the ACM


Computing Ethics and Teaching It

View as: Print Mobile App Share: Send by email Share on reddit Share on StumbleUpon Share on Hacker News Share on Tweeter Share on Facebook
Robin K. Hill, University of Wyoming

Having taken on the teaching of "Ethics for the Computing Professional" with conscientious intent but also express doubts about the efficacy of such classes in the computer science curriculum [Hill2018], I am poised on the brink of a change of heart. There is something to it; there is some benefit to exposing computer science students to issues, norms, and moral quandaries in computer science. I still believe that corrupting incentives hamper the application of ethics in any business setting. In high tech, a sleight of hand has dressed up the profit motive, which is not per se seen as virtuous, as a drive toward growth, which is seen as admirable, if not downright virtuous per se [Hill2017, Hill2019]. Arming students with sharper instruments for dissection of such premises is a worthy goal of a course in the ethics of technology. In this piece, I outline a gimmick and offer a few observations and suggestions. Taking up any of them requires adaptation due to variation in ethics courses across institutions.

In my class, coverage of popular ethical theories is light, as our interest in them is inspirational and instrumental rather than academic. The idea that actions should be chosen for greatest benefit (the consequentialist approaches) occurs naturally. The idea that rules should be formulated before problems arise (deontological theories) is also natural, and can be specified further by religious dogma or by social norms. Here's the gimmick: I define ethical theories via function signatures, as black-box subroutines. Here follows one example, for the theory family Consequentialism, often glossed as "the greatest good for the greatest number":

Scores-for-various-outcomes CONSEQUENTIALISM (Q, Knowledge-of-how-world-works)

The return type exposes its quantification of morality, and thereby prompts the standard critique. The input parameter knowledge-of-how-the-world-works could also be given as a vast library. This method reveals the dependencies of theories on their input types, where Supernaturalism (that is, religion), uses scripture as a parameter, and Intuitionism, which relies only on one's own reactive assessment, has no input parameters other than Q. (Choose your own theories.)

Then, of critical importance, I emphasize the shortcomings of this interpretation: Ethical theories are NOT mechanical, not algorithmic, not simplistic; this is only a metaphor for us. Because the interaction between the computational paradigm and the philosophical paradigm is discordant, I recommend this only to an instructor who appreciates the variation and is prepared to explain all aspects ("metaphor," for instance). I even lay claim to a benefit of this discord—illustration of the nuances of philosophical as opposed to computational treatment. An earlier article outlined how philosophy graduate students might be deployed to help teach [Grosz].

Using this model (with discrimination), we can note that intuitionistic theories don't appeal to libraries of facts or traditions. We can ask what is the function signature for "woke." We can ask whether some resources are fixed or variable; for instance, does virtue ethics pass a human exemplar as a parameter or is that value permanent (for a given agent)? And, of course, we can discuss the actual code of the function bodies. (White-box it! Hence, the title, "Computing Ethics," uses the progressive form of the verb.) Note that the consequentialist view fortuitously lends itself to description in terms of computation; others call for creativity.

Again—the theories do not take center stage. I prefer to get across the general idea of developing and following principles; I don't consider it necessary to get across the procedures, details, versions, histories, and subtleties of the major theories. The introductory method here pitches the theories at a superficial level, to show how ethics is structured and shaped. Distinctions among theories of ethics, applied ethics, and professional ethics also plays a minor role. In fact, professional ethics, defined as the set of issues that we face as computer scientists, some unique and some shared with others, grounds the material, but the differences between that view of issues and the applied and theoretical views of issues play only a supporting role.

From this sparse background, at the start of the term, we launch into cases and questions. It will not be news that the Internet offers a wealth of bad behavior to contemplate and attendant issues to discuss. The instructor's job is to turn those juicy stories into thoughtful considerations of how we should live, and turn those considerations into an appreciation of professional rectitude.

The study of computing ethics boasts such a wealth of resources that I hesitate to suggest any for fear of omitting standouts. Recommendations are certainly welcome. Good resources, such as the Markkula Center materials on technical areas [Markkula], guide students beyond pat statements such as can be found on corporate websites and beyond shallow accounts such as can be found in the popular press. Case studies work well, as long as they are not overwrought. Some scenarios are so stark that there is no way out. This author shrinks from trolley problems because they are so baldly contrived, corresponding to no incident in the real world. (This informs my view of the safety of self-governed automata: If the trolley problem must be solved, we face problems much bigger than the trolley. But that's another topic.) In the real world, quandaries are messy, factors are innumerable, and situations must be assessed holistically, by professionals who have gained perspective and poise.


[Grosz] 2019. Barbara J. Grosz, David Gray Grant, Kate Vredenburgh, Jeff Behrends, Lily Hu, Alison Simmons, and Jim Waldo. Embedded EthiCS: Integrating Ethics across CS Education. Communications of the ACM 62:8. August 2019.

[Hill2017] Robin K. Hill. Ethical Theories Spotted in Silicon Valley. BLOG@CACM. Blog posted March 16, 2017.

[Hill2018] Robin K. Hill. Tech Ethics at Work. BLOG@CACM. Blog posted January 29, 2018.

[Hill2019] Robin K. Hill. The Artificialistic Fallacy. BLOG@CACM. Blog posted March 30, 2019.

[Markkula] Markkula Center for Applied Ethics. Vari Hall, Santa Clara University, 500 El Camino Real, Santa Clara, CA 95053. Accessed July 6, 2020.


Robin K. Hill is a lecturer in the Department of Computer Science and an affiliate of both the Department of Philosophy and Religious Studies and the Wyoming Institute for Humanities Research at the University of Wyoming. She has been a member of ACM since 1978.


No entries found