About Me: I am a (fifth-year) computer science PhD student and course instructor at Indiana University, where I am primarily a computer science education researcher, but I also have interests in programming language theory, compilers, and logical theory.
I received my Master of Science in Computer Science in 2022, and my Bachelor of Science in Computer Science in 2021, both from the University of North Carolina at Greensboro. I was a graduate instructor's assistant for the computer science department from 2021-2022.
Research Interests: I am broadly interested in understanding how students reason about the programs they design. In particular, my research examines the conceptual structure of programming, the ideas that are often implicit in how a program is organized and constructed, and how we can make that structure more explicit through instruction. For example, rather than seeing an accumulator as simply a variable that changes during a computation, I am interested in whether students understand the role that accumulator plays in constructing a solution contextualized to the problem.
I am also interested in how students communicate their reasoning while programming. Do they focus primarily on syntax and surface-level features of their code? Do they reason about the semantics and roles of programming constructs? Do they connect details of the problem they are solving to the structures they use in their programs? By studying when and why students engage in these different forms of reasoning, I hope to better understand where students struggle and how educators can intervene with pedagogical approaches that make important programming concepts more visible and usable.
In the past, I focused on rhetorical device detection, education, and Prolog with Dr. Nancy L. Green. I have three published papers in inductive logic programming, antithesis detection, and AI argument scheme education. My master's thesis focused on improving the pedagogy of natural deduction proofs and logical thought processing. I currently specialize in programming languages.
Theoretical Computer Science Interests: Computer Science Education, Programming Languages, Compilers, Linguistics Syntax and Semantics, Theory of Computation, Computer Graphics, Algorithm Analysis, Artificial Intelligence
Practical Computer Science Interests: Systems Programming, Embedded Software Engineering, Parallel Computing, Computer Architecture
See also my CV.
Note, this website was heavily inspired by Carlo Angiuli's website. In fact, you could say it was the entire inspiration. :-)