Teaching
UC Berkeley
- I was a TA for CS61C with Dr. Dan Garcia in Spring 2008 and Spring 2007. I co-created a very popular C project, in which students program a text adventure game as they play it. You can see my ratings.
- I was also a TA for EE126 with Prof. Martin Wainwright in Fall 2007. I made some nice handouts for discussion section.
- I worked on introducing parallelism into the introductory CS curriculum with Dr. Dan Garcia, Dr. Brian Harvey, my colleague Ramesh Sridharan, and others. We built a system to easily write and run MapReduce computations in Scheme using Hadoop [pdf] for CS61A, and we added a new parallelism lab to CS61C. I also made a new lecture on threaded programming for multicore, which is now part of Google Code University.
- I proposed an overhaul of the EE105 analog circuit labs to Prof. Tsu-Jae King Liu, and worked with another amazing team to produce a brand new set of labs, tutorials, and a project that are still in use.
MIT
- I was a TA for 6.438: Algorithms for Inference [pdf], a graduate course on probabilistic graphical models and inference, in Fall 2009 with Prof. Gregory Wornell and Prof. William Freeman.
- I've presented in several seminars at MIT on a variety of topics, often with my colleague Ramesh Sridharan:
- Good-Turing Estimators
- Some differential geometry for a reading group
- Streaming Algorithms and More Streaming Algorithms
- DP mixture models, HDP mixture models, and HDP-HMMs with Emily Fox