This is my second year as faculty at Brown University, after a postdoc at Berkeley. I am interested in how computational tools and perspectives can address fundamental problems in the wider world, including the other sciences. Current projects include:
Big Data: Data is becoming the driving force behind much of what we do with computers, but are we using our data efficiently? What is the most we can do with our data, or, more precisely, for a particular problem, what is the least amount of data we need to solve it to a given certainty? These are a series of related questions with their roots in statistics but their heart in computer science. The techniques to solve them involve probability, statistics, property testing, and linear programming. This area has many applications to the sciences.
Scientific Computing: I am working on algorithms for protein folding (on which I taught a graduate seminar, CSCI2951G in Fall '12), and investigating computational fluid dynamics. More generally, with my graduate student Thomas Dickerson, we are working on frameworks to more effectively express parallel computations on modern hardware, including graphics cards.
Evolution: Biological evolution has long been an inspirational creative force in our world. The challenge is to understand biological evolution in computational terms, for perhaps the same reasons that the fields of cognitive science and artificial intelligence aim to understand the brain and intelligence in computational terms. I am currently a long-term visitor at the Evolutionary Biology and the Theory of Computing program, at UC Berkeley's Simons Institute for Theory of Computing.
I am currently teaching a graduate reading seminar, CSCI 2951M. In the fall, I teach Algorithms.
Interests past and future, but not immediately practical, include cryptography, algorithmic game theory, the brain, and acoustics.