Current Teaching

CSCI 2021: Machine Architecture
Univeristy of Minnesota, Twin Cities
Spring 2023, Fall 2022, Spring 2022, Fall 2021, Spring 2021, Fall 2020, Spring 2020, Fall 2019, Summer 2019, Spring 2019, Spring 2018
Course Materials
CSCI 5451: Introduction to Parallel Computing
Univeristy of Minnesota, Twin Cities
Spring 2023, Spring 2022, Fall 2021
Course Materials

Previous Teaching

I have enjoyed leading courses at the college level at the University of Minnesota, George Mason University, and Concordia of St. Paul. Below are the course websites which contain additional information.

CSCI 4061: Introduction to Operating Systems
Univeristy of Minnesota, Twin Cities
Spring 2021, Summer 2020, Spring 2020, Spring 2019, Fall 2017
Course Materials
CSCI 2041: Advanced Programming Principles
Univeristy of Minnesota, Twin Cities
Fall 2018
Course Materials
CSCI 2011: Discrete Structures of Computer Science
Univeristy of Minnesota, Twin Cities
Summer 2018
Course Materials
CSCI 1103: Intro to Java
Univeristy of Minnesota, Twin Cities
Fall 2017
Course Materials
CS 211 / CS 211H: Object Oriented Programming
George Mason Univeristy
Spring 2013, 2014, 2015, 2016, 2017
Lecture Slides
CS 310: Data Structures
George Mason Univeristy
Fall 2013, 2014, 2015, 2016
Lecture Slides
CS 499: Introduction to Parallel Programming
George Mason Univeristy
Spring 2016
Lecture Slides
CS 100: Principles of Computing
George Mason Univeristy
Fall 2014, 2015, Spring 2017
Lecture Slides
CS 105: Computer Ethics and Society
George Mason Univeristy
Fall 2012, 2013, Spring 2013, 2014
CS 222: Computer Programming for Engineers
George Mason Univeristy
Fall 2012, Summer 2013, 2014
Lecture Slides
CSC 301: Programming and Problem Solving
Concordia University, St. Paul
Fall 2011
Csci 2011: Discrete Structures of Computer Science
Dep. of Computer Science, U of MN, Twin Cities
Summer 2011