### Current and Past Courses Taught

### 2018-2019

ECS 260: Software Engineering (Empirical Software Engineering)

ECS 120: Introduction to Theory of Computation

### 2017-2018

ECS 122A: Introduction to Algorithms

ECS 222: Design and Analysis of Algorithms

ECS 20: Discrete Mathematics

### 2016-2017

ECS 20: Discrete Mathematics

ECS 122A: Introduction to Algorithms

### 2015-2016

ECS 222: Design and Analysis of Algorithms

ECS 122A: Introduction to Algorithms

### 2014-2015

ECS 122A: Introduction to Algorithms

ECS 20, Discrete Mathematics

### 2013-2014

ECS 289L, Topics in Methods for Social Computing (Winter) on SmartSite

ECS 20, Discrete Mathematics (Winter) on SmartSite
### 2012-2013

ECS 122A, Algorithm Design and Analysis (Spring) on SmartSite

ECS 20, Discrete Mathematics (Winter) on SmartSite
### 2011-2012

ECS 122A, Algorithm Design and Analysis (Winter) SmartSite

ECS
20, Discrete Mathematics (Spring)
### 2010-2011

ECS 289L, Computational Understanding of Biological Networks (Winter)

ECS
30, Programming and Problem Solving (Spring)
### 2009-2010

ECS 234, Computational Functional Biology (Spring, moved from Winter)

ECS
120, Theory of Computation (Fall) (NEW!!)

ECS
30, Programming and Problem Solving (Summer II, 2009)
### 2008-2009

ECS
234, Computational Functional
Genomics (Winter)

ECS 120, Theory of Computation (Fall)
### 2007-2008

ECS
234, Computational Functional Genomics (Spring)

ECS
120,
Theory of Computation (Spring)

ECS
20, Discrete Mathematics (Winter)

ECS
120,
Theory of Computation (Fall)

### 2006-2007

ECS
120,
Theory of Computation

ECS
234, Computational Functional Genomics

ECS
30, Programming and Problem Solving (Summer I, 2007)
### 2005-2006

ECS
120, Theory of Computation
### 2004-2005

ECS
289A, Computational Functional Genomics

ECS
20, Discrete Mathematics
### 2003-2004

ECS 124,
Theory
and Practice of Bioinformatics

ECS
289A, Gene Network Inference
### 2002-2003

ECS
120, Theory of Computation

ECS
289A, Modeling Gene Regulation