Teaching

On this page, I list courses for which I have been (or am, or will be) a teaching assistant or instructor.

[INSTRUCTOR] George Mason University: Economics Department Math Camp (2009)

From the announcement:"I will be teaching a 5-day intensive math review class before the fall term starts. This class is open to all new graduate students. You do not need to register on Patriot Web, and you will not get credit. In this class, you will review algebra, pre-calculus, basic linear algebra, and calculus. You will also learn how to write mathematical proofs."

[TA] Vrije Universiteit: Systems Programming (2007)

From the web site: "The goal of this course is to prepare students for lab assignments in computer systems, such as those related to operating systems, compiler construction, network programming, and computer networks. After attending this course, the student should be able to develop, test, and debug systems programs written in C."

[TA] Vrije Universiteit: Algorithms for Genomes (2005)

From the catalog: "Introduction: A gentle introduction to molecular biology and genome biology: lectures explaining principles of biology required for the course. No additional biological knowledge expected! Sequences: Sequence comparison, searching large amounts of biological data, Hidden Markov models for sequences, detecting genes and motifs. Genomes: Sequencing and assembling, genome duplication, rearrangements, evolution, comparative genomics, genome repeats Literature: Biological Sequence Analysis, R. Durbin et al.; An Introduction to Bioinformatics Algorithms, N. Jones and P. Pevzner; DNA from the Beginning"

[TA] Caltech CS24: Introduction to Computer Systems (2005)

From the catalog: "CS 24. Introduction to Computing Systems. 9 units (3-3-3); third term. Prerequisites: CS 2; and CS 21 or CS/EE/Ma 129 a. Basic introduction to computer systems, including hardware-software interface, computer architecture, and operating systems. Course emphasizes computer system abstractions and the hardware and software techniques necessary to support them, including virtualization (e.g., memory, processing, communication), dynamic resource management, and common-case optimization, isolation, and naming."