For the 2022/2023 academic year I will be on sabbatical and thus not teaching any courses. Lecture video for the 2019 edition of CPEN 211 can be found here. UBC students enrolled in CPEN 211 may also access course material on Piazza, which they can access through Canvas and the CPEN 211 website for lab partners and autograding.

Below is a list of courses I have taught in the past.

Undergraduate Courses

CPEN 211 Introduction to Microcomputers (Fall 2015-2021); Lecture video archive.
EECE 259 Introduction to Microcomputers (now CPEN 211; Fall 2014)
EECE 353 Digital Systems Design (now CPEN 311; Summer 2006, Spring 2008, 2009, 2010, Fall 2010, 2011)
EECE 476 Computer Architecture (now CPEN 411; Fall 2006, 2007, 2008, 2009, 2010, 2011, 2013)

Grad Courses

EECE 527 Advanced Computer Architecture (now CPEN 511; Spr. 2008, Fall 2008, 2009, Spr. 2011, 2012)

The following are seminar courses not listed in the UBC calendar:
EECE 571T Compute Accelerator Architectures (Spring 2019)
EECE 571M Optimizing Compilers (Spring 2007, 2012)
EECE 571B Advanced Computer Microarchitecture (Spring 2007; became EECE 527 which is now CPEN 511)