Artificial intelligence · Data science · Computer science
Learning through concepts, code, and experimentation
I teach courses in artificial intelligence, reinforcement learning, data mining, and computer science, with an emphasis on connecting foundational ideas to practical implementations and reproducible experiments.
Current courses — Fall 2026
CS 5/7320 · Lyle School of Engineering
Artificial Intelligence
Course materials, examples, and exercises are available on the course website.
CS 5/7329 · Lyle School of Engineering
Reinforcement Learning
Course materials, examples, and exercises are available on the course website.
Teaching resources
Open lecture materials, code examples, exercises, and small teaching tools used in my classes.
Artificial Intelligence
Python · Course materialsSlides, compact code examples, and exercises for an introduction to AI using Russell and Norvig’s Artificial Intelligence: A Modern Approach.
Reinforcement Learning
Python · Course materialsSlides, code examples, and exercises for an introductory course in reinforcement learning.
R Companion for Introduction to Data Mining
R · Companion bookR examples accompanying Introduction to Data Mining by Tan, Steinbach, Karpatne, and Kumar.
Data Structures
C++ · Code examplesCode for an introductory data-structures course using Mark Allen Weiss’s Data Structures and Algorithm Analysis in C++.
gym-classics2
Python · RL packageClassic discrete finite Markov decision processes and algorithms for teaching reinforcement learning.
Additional examples
R · C++ · Small toolsTools for fitting distributions and Gridhunt2, a game for teaching encapsulation, composition, inheritance, and polymorphism.
Video lectures
Introduction to R Programming
A video series covering the foundations of programming and data analysis with R.
Here is the lecture material, code examples, and data.