I am an Associate Professor of Computer Science at Swarthmore College. I
received a Ph.D. in computer science in September 2010 from Dartmouth College, where
I was fortunate to be advised by Amit Chakrabarti.
Between Dartmouth and Swarthmore, I was a postdoctoral
researcher at Tsinghua
University and Aarhus
Prior to graduate school, I was
a Peace Corps Volunteer
in Burkina Faso,
where I taught high school mathematics and introductory computer
My main research area is theoretical computer science. I am
particularly interested in query complexity and communication
complexity, and in how communication lower bounds give you lower
bounds in areas such as streaming algorithms, property testing,
and data structures.
Have something to say? Provide some anonymous feedback.
- CS41: Introduction to Algorithms.
Lecture: MWF 9:30-10:20, Singer 222.
Lab A: Thursday 1:05-2:35, Clothier 016.
Lab B: Thursday 1:05-2:35, Clothier 016.
This is a directed reading course aimed both at students
interested in competitive programming and students who want to
prepare for technical interviews.
Lecture: T 1:05-2:35, Clothier 016.
- CS 21: Introduction to Computer Science (F21, S19, S16)
- CS 35: Data Structures and Algorithms (S20, S17,
F14, S14, F13 lab)
- CS 41: Introduction to Algorithms (F20, F19, F18, F16, S15, F13)
- CS 46/Math 46: Theory of Computation (S21)
- CS 49/Math 59: The Probabilistic Method (F15)
- CS 93: Directed Reading (S21, S19x2, F18, S16, F15, F14, S14, F13)
- Sublinear Time
Algortihms: Property Testing. Aarhus University, Third
Quarter, Winter 2013.
Complexity. Aarhus University, Second Quarter Fall 2011.
- Research Immersion in Theoretical Computer Science.
Tsinghua University, Summer 2011.
Architecture (CS37). Dartmouth College, Summer 2010.