← Back to home

Teaching

Where my research meets the classroom, and how I make abstract computer science tangible, inclusive, and a little bit joyful.

Courses I look forward to teaching — across language, mind, machine & matter

Teaching Philosophy

What I try to do every time I step in front of a class.

I teach computer science as a craft you build intuition for, not a pile of formulas to memorize, and I build that intuition with metaphors from the kitchen and from ordinary life. A recursive call is a recipe that quietly makes a smaller version of itself, and a cache is just keeping the spices you reach for most within arm's length. Most of all, I start with questions. Why are we doing this? Why does this model work? How did we get here, and will it really replace everything that came before? Only then do I reach for a concrete, slightly playful example, something a student can picture, poke at, and break, because the abstraction finally lands once they have felt the problem it solves. I try to match my effort to theirs, so thirty minutes of homework earns thirty minutes of feedback, and I read the room and change course the moment an idea stops landing.

Structure is what makes the risk-taking possible. My materials stay consistent and deliberately minimal, every lecture opens and closes with a short recap, and the deadlines are plain, so students can spend their energy on understanding instead of logistics. Inside that frame I run the room as a dialogue and a democracy: I watch for the backchannel cues, the furrowed brows and the quiet nods, and I poll the class about pace and comprehension so that no one is quietly left behind and every voice counts. I stay honest about the dead ends and frustrations of real research, which is what lets students try things that might fail. Inclusive design tends to make the work better too, and our Alexa Prize TaskBot, which generated signed-language instructions, is the example I keep coming back to.

Above all, I teach language before I teach the tools. People choose their words from what a language offers and from what a listener already shares, and selection is an old idea, since Aristotle's Rhetoric and Poetics are both accounts of it, while a model only samples from the text that people wrote. A student who feels that difference reads an output as one choice among many and asks what the model assumed, and I treat a prompt the very same way, as an utterance to a listener who cannot ask what you meant, which is exactly where my research on ambiguity lives, where most of the instructions I studied carried more than one reading. So my students are welcome to use generative AI, and they are graded on their audit of it: what they asked, what the model assumed, and what they verified. The best moment in any course I teach is still the same, when a student stops asking “is this right?” and starts asking “what if I tried…?”

In the Classroom

Photos of me teaching and of the classes I've worked with.

Lectures & Talks

Recorded lectures and presentations.

Full lectures

Paper presentations

Courses I've Taught

Each card can hold a thumbnail, a blurb, and material excerpts (lecture notes, assignments, video).

Introduction to Data Science

Teaching Assistant · University of Pittsburgh (Fall 2022)

[Your blurb: e.g. taught data wrangling, visualization, and intro ML in Python; graded projects and ran hands-on lab sessions.]

Theory of Computation

Teaching Assistant · University of Pittsburgh (Spring 2022)

[Your blurb: e.g. led problem sessions on automata, Turing machines, and complexity; helped students build proofs from intuition up.]

Algorithms and Data Structures

Teaching Assistant · University of Pittsburgh (Spring 2022)

[Your blurb: e.g. coached students through sorting, graphs, and dynamic programming with worked examples and whiteboard walkthroughs.]

∀ ∃ ¬ P ⊢ Q

Formal Methods in Computer Science

Teaching Assistant · University of Pittsburgh (Fall 2020, Spring 2021, Fall 2021)

[Your blurb: e.g. taught logic, proof techniques, and discrete structures across three semesters; refined the recitation materials over time.]