everything.study
CMSC 25910

Engineering for Ethics, Privacy, and Fairness in Computer Systems

Undergraduate / Graduate

This course takes a technical approach to understanding ethical issues in the design and implementation of computer systems. Technologies like machine learning systems, large language models, the web, ubiquitous sensing, algorithmic personalization/targeting, and surveillance systems all raise numerous ethical concerns. Tensions often arise between a computer system's utility and its privacy-invasiveness, between its robustness and its flexibility, and between its ability to leverage existing data and existing data's tendency to encode biases. The course will demonstrate how computer systems can violate individuals' privacy and agency, impact sub-populations in disparate ways, and harm both society and the environment. It will also introduce computational approaches to privacy, fairness, transparency, anonymity, internationalization, and auditing. Through hands-on programming assignments and a final project, students will design and implement computer systems that reflect both ethics and privacy by design. They will also wrestle with fundamental questions about who bears responsibility for a system's shortcomings, how to balance different stakeholders' goals, and what societal values computer systems should embed. Students may not take CMSC 25910 if they have taken CMSC 25900 or DATA 25900.

Sources