To better serve the academic needs of my students, I am available by appointment most weekdays during business hours when the university is in session. Visit my Calendly page to schedule an appointment.


You can contact me or my teaching assistants via our Slack team to discuss topics related to courses or projects we are involved in together. You will need to sign-in or register using a school email address or else contact me to request a team invitation.


I lecture regularly for the computer programming sequence CS 110, CS 111, and CS 210 and on a rotating basis for the foundational computer science theory courses CS 220 and CS 310. This is not an exhaustive list of every course I teach or have taught. I also offer opportunities in education and development for exemplary students by permission.

CS 310

Principles of Programming Languages

CS 440

Database Design and Theory

CS 110

Introduction to Computer Science

CS 111

Introduction to Data Structures

CS 210

File and Data Structures

CS 220

Discrete Mathematics

CS 490

Teaching Practicum

CS 495

Independent Study