Teaching
CS 4063/5063: Human-Computer Interaction
University of Oklahoma, Norman, Spring 2025
This course introduces the theory and practice of human-computer interaction, with a focus on the graphical user interfaces that make up the modern human-centric computing experience. Topics include fundamental principles of human-computer interaction, interface design and analysis, human cognitive and perceptual capabilities and limitations, desktop/window systems, and social implications of computing. You will learn about current graphic user interface development tools and programming libraries, and complete a semester-long team-oriented project that provides realistic experience with human-computer interaction from developer, designer, and end-user perspectives.
CS 5970: Information Visualization
University of Oklahoma, Norman, Spring 2025
Data is everywhere. Charts, graphs, and other visualizations help people make sense of data. This course explores the design, development, and evaluation of these visualizations. By combining design, HCI, and data science aspects, you will gain hands-on experience creating visualizations. Topics include graphical encoding, evaluation, perception and cognition, user-centered design, storytelling, insight-building, dimensionality reduction, statistics and patterns, and statistical analyses.
COP 3353: User-level Intro to Linux
University of South Florida, 2017
Introduction to a modern Linux distribution, covering topics such as installation in a desktop-friendly virtualized environment, management of users and software packages, and the use of shell commands for navigation and text processing.