305 McGregory Hall


I build and test AI-driven instructional systems that teach students how to engage in productive civil discourse and recognize their own biases. I use these instructional tools to research how political beliefs impact our ability to think rationally about an argument's validity, and believe an intelligent computer agent might be able to help us recognize and mitigate the cognitive biases that reinforce information bubbles and political tribalism.

I received my Ph.D. from Carnegie Mellon University in 2020 (link to my dissertation), and am now an Assistant Professor of Computer Science at Colgate University.




Civil discourse that fosters democratic goals is a foundational component of any functioning democracy. However, the shrinking civics curriculum leaves very little room to provide students with the practice they need to engage in civil discourse productively. As as result, most political discussions leave both parties feeling angry and frustrated, and often only further entrench both sides deeper into their previously-held beliefs.

In our work, we use educational games to give students the opportunity to practice key civil discourse skills in a safe and scaffolded environment. Our game leverages theories from social psychology alongside data-driven machine learning models to adapt instruction based on the specific political beliefs of each player. We've shown that, for some students, this new kind of Value-Adaptive Instruction can effectively reduce the impact of bias when reasoning about political arguments.

For more information, or to play the game, Click Here!


Even as technology becomes more ubiquitous, the principles and mechanisms that drive that technology remain inaccessible to many citizens. For example, having even a basic understanding of algorithms may inform how we consume content generated by algorithm-based news feeds.

In this work, we use natural language processing to attempt to identify, in a data-driven way, features of programming tasks that may be markers of computational thinking skills. We explore how this automated approach might be deployed in real-time instructor dashboards as a way to track student progress, match poorly performing students to high-performing peers, and map solution spaces.



Course Descriptions

CORE SP: Bias in Humans and Machines

Colgate University ranks among the top 20 liberal arts colleges according to the U.S. News and World Report, or more specifically, according to their proprietary algorithm. Algorithms are everywhere: populating your news feed, auto-predicting your messages, and determining your student aid package. But how do we know when algorithms are fair, and what happens when they're not?

In this course, we'll explore various cognitive biases and how we (intentionally or unintentionally) build our biases into our technology. We will examine the sources of bias, the hallmarks of biased systems, and some tools that might help us mitigate bias.

Throughout the course, we will develop an appreciation for the potentially life-changing consequences of biased systems, and how those consequences are often disproportionately felt by historically disenfranchised populations. We will also discuss the dangers of algorithm feedback loops, and how when we build bias into our machines, it builds it back into us.

COSC 480: Human-Computer Interaction

In this course you will learn how to reliably design user interactions that are satisfying and meaningful, rather than frustrating or ineffectual. This course covers the best methods for discovering what your users actually need or want, and how to design technologies that directly address those needs. We will also cover the role that Human-Computer Interaction can play in augmenting our abilities, connecting us to each other, and increasing our quality of life.

This course is organized around three broad topic areas: 1) human-computer interaction design principles, 2) techniques for designing interactive systems, and 3) techniques for evaluating the efficacy of your designs. Topics include user experience (UX) and interaction design (IxD), needfinding, rapid prototyping, identifying "Dark UX" patterns, cognitive task analysis, affinity diagramming, usability testing, heuristic evaluation, contextual inquiry, user interviews, surveys, wire-framing, and A/B Testing.

COSC 101: Introduction to Computer Science

An introduction to computer science through the study of programming utilizing the programming language Python. Topics include program control, modular design, recursion, fundamental data structures including lists and maps, and a variety of problem-solving techniques.

Past Teaching Experience



Ph.D. in Human-Computer Interaction
Carnegie Mellon University, 2015-2020
B.S. in Neuroscience and Psychology
Allegheny College, 2009-2013

Teaching Experience


Invited Talks




Technical Proficiencies

Data Analysis: Python (Pandas, Scikit-learn, Statsmodels, Scipy, Gensim), R, Matlab, SPSS, VBA
UI/UX: JavaScript (jQuery, Angular, Vue, Mithral, Node), HTML, PHP, MySQL/MySQLi, CSS

Academic Honors

  • Program for Interdisciplinary Education Research (PIER) Fellowship recipient (2016-Present)
  • Graduated with Psychology Department Honors (2013)
  • Awarded the Iva Patterson Gilmore Prize in Psychology for writing the best psychology senior research composition (2013)


Are you a civics researcher or instructor?

I'm always looking to connect with people doing interesting work.

Contact Me: