Current Teaching

  • Present 2016

    CPSC 213 Introduction to computer systems.

    Software architecture, operating systems, and I/O architectures. Relationships between application software, operating systems, and computing hardware; critical sections, deadlock avoidance, and performance; principles and operation of disks and networks.

  • Present 2017

    CPSC 538A Concurrency and Parallelism

    This course is about the study of interacting processes. More and more programs today interact, either with each other, with users, or other programs and services across a network. The correctness, programmability, and performance of these programs differ from the typical sequential programs we are used to building. The course is divided into three approximately equal parts based on the three previously mentioned items: correctness, programmability, and performance. There is a heavy programming component to the course.

    Monday-Wednesday (10:30-12:00), introductory class Sept 6, first regular class Sept 11

Current Administration

  • Present 2017

    Chair, Computer Science Graduate Admissions Committee

  • 2017 2015

    Associate Head of Graduate Affairs (Computer Science)