> people / dhsmith
David H. Smith IV
Assistant Professor & PI
Virginia Tech
Computing education research — AI-assisted learning tools, automated assessment, and how novices learn to program.
David directs the ASCEND Lab, where his research focuses on computing education — particularly how novice developers, data scientists, and designers learn to program.
His work spans AI-assisted learning tools, automated assessment, and pedagogical approaches for introductory computing courses. Much of the lab’s methodological practice is written down and kept current in the lab wiki, and undergraduates join the lab through open project teams.
Teaching
Courses taught, with the materials that go with them.
-
CS 2114 Software Design & Data Structures
Fall 2026
Object-oriented software design and data structures in Java — lists, stacks, queues, trees, and hash tables — with an emphasis on testing and design.
Research areas
Lab research threads this work contributes to.
- Configurable AI-Assisted Learning Interfaces LLM · Configurable Interfaces · Personalized Learning
- Automated Assessment Autograding · Code Analysis · Feedback Systems
- Effective and Fair Randomized Computer Based Assessment Randomized Assessment · Fairness · Computer-Based Testing
- Interactive Database Learning Database Concepts · Interactive Learning · AI-Assisted Systems
- Behavior-Driven Specification for AI-Assisted Programming AI-Assisted Programming · Behavior-Driven Specification · End-User Programming
- Multilingual Computing Education Translanguaging · Language Barriers · Equity