Kristin Stephens-Martinez

Associate Professor of the Practice · Computer Science Department
D224 LSRC Research Drive Box 90129 · Duke University, NC 27708 · (919) 660-6581 ·

I am an Associate Professor of the Practice at Duke University in the Computer Science Department. I received my Ph.D. in Computer Science from UC Berkeley.

My research is in computer science education, both the study of learning computer science and applying computer science to education problems. My research focus is on scaling classes, such as how do we add more students to a class without sacrificing quality? I pursue this research by examining data from course tools to find interpretable data-driven insights that inform learning interventions.

I'm also the creator of The CS-Ed Podcast.

Below are highlights from my CV.


University of California, Berkeley

Doctor of Philosophy: Computer Science
Advisor: Armando Fox
December 2017

University of California, Berkeley

Master of Science: Computer Science
Advisor: Vern Paxson
December 2013

University of Maryland, College Park

Bachelor of Science: Computer Science
Summa Cum Laude
May 2009

Professional Appointments

Associate Professor of the Practice

Duke University

See my Teaching Section for what I teach.

January 2024 - Now

Assistant Professor of the Practice

Duke University
December 2017 - Dec 2023


University of California, Berkeley

Co-taught CS194-25 Special topics: Building Your Next Generation Education Technologies with Dawn Song.

Fall 2012



Shao-Heng Ko and Kristin Stephens-Martinez. 2023. What Drives Students to Office Hours: Individual Differences and Similarities. In Proceedings of the 54th ACM Technical Symposium on Computer Science Education V. 1 SIGCSE '23

[Poster] Sadhana Suryadevara and Kristin Stephens-Martinez. 2022. UPIC a Problem-Solving Framework: Understand, Plan, Implement, and Correctness/Debugging. In Proceedings of the 2022 ACM Conference on International Computing Education Research ICER '22

Anshul Shah, Jonathan Liu, Kristin Stephens-Martinez, and Susan H. Rodger. 2021. The CS1 Reviewer App: Choose Your Own Adventure or Choose for Me!. In Proceedings of the 26th ACM Conference on Innovation and Technology in Computer Science Education ACM ITiCSE '21

Kristin Stephens-Martinez. 2021. A Study of the Relationship Between a CS1 Student's Gender and Performance Versus Gauging Understanding and Study Tactics. In Proceedings of the 52nd ACM Technical Symposium on Computer Science Education. ACM SIGCSE '21. (Video)

Kristin Stephens-Martinez, Armando Fox. 2018. Giving Hints is Complicated: Understanding the challenges of an automated hint system based on frequent wrong answers. In Proceedings of the 23rd Annual ACM Conference on Innovation and Technology in Computer Science Education 2018. ACM ITiCSE '18.

Kristin Stephens-Martinez, An Ju, Krishna Parashar, Regina Ongowarsito, Nikunj Jain, Sreesha Venkat, Armando Fox. 2017. Taking Advantage of Scale by Analyzing Frequent Constructed-Response, Code Tracing Wrong Answers ACM International Computing Education Research 2017. ACM ICER '17.

Kristin Stephens-Martinez, Marti A. Hearst, and Armando Fox. 2014. Monitoring MOOCs: Which Information Sources Do Instructors Value? ACM Learning At Scale 2014. ACM L@S '14.


Duke University

CompSci 101 Introduction to Computer Science

Spring 2020; Fall 2019; Spring 2019; Fall 2018; Spring 2018 (Co-taught with Owen Astrachan)
Introduction to practices and principles of computer science and programming and their impact on and potential to change the world. Algorithmic, problem-solving, and programming techniques in domains such as art, data visualization, mathematics, natural and social sciences. Programming using high-level languages and design techniques emphasizing abstraction, encapsulation, and problem decomposition. Design, implementation, testing, and analysis of algorithms and programs. No previous programming experience required.

CompSci 116 Foundations of Data Science

Fall 2021; Fall 2019
Given data arising from some real-world phenomenon, how does one turn that data into knowledge and that knowledge into action? Students will learn critical concepts and skills in computer programming and statistical inference in the process of conducting analysis of real-world datasets. Students will write computer programs for projects using the Python programming language. In considering applications, we will discuss how data can be used responsibly to benefit society. This class assumes no prior coding experience.

CompSci 201 Data Structures and Algorithms

Spring 2021 (Co-taught with Brandon Fain)
In this course, you will learn how to analyze, use, and design data structures and algorithms in an object-oriented language (Java) to solve computational problems. Emphasis on abstraction including interfaces and abstract data types for lists, trees, sets, tables/maps, and graphs. Implementation and evaluation of programming techniques including recursion. Intuitive and rigorous analysis of algorithms.

CompSci 216 Everything Data

Spring 2024; Fall 2023; Spring 2023; Fall 2022; Spring 2022; Fall 2021; Spring 2021 (Co-taught with Brandon Fain)
This course serves as an introduction to various aspects of working with data–acquisition, integration, querying, analysis, and visualization–and data of different types–from unstructured text to structured databases. Through lectures and hands-on labs, the course covers both fundamental concepts and computational tools for working with data and applies them to real datasets in a capstone team project.

CompSci 249 CompSci Ed Research

Spring 2020; Fall 2019
(Co-taught with Susan Rodger and Robert Duvall)
This is the computer science department’s undergrad TA training class. The goal of this class is to help you become an awesome TA. We believe that helping you become a good UTA will help your students learn and we believe that it is important to help you with this process. When it comes to teaching, no one is perfect. But no one can improve in a vacuum. It takes practice, acquiring new knowledge and skills, and a lot of reflection. The purpose of this class is to help you through that process and to prepare you to teach lab, run consulting hours, and support the faculty that teach in the department.

CompSci 290 Computing Education Research

Fall 2022; Spring 2022
Computing education research (CER) is the study of how people learn and teach computing. This course will cover a basic understanding of what CER is, the current topics in the field, and CER methodologies. We will do this by reading an overview of CER, prominent works, and current research papers. In addition, the class will have CER projects mainly focused on data analysis.

University of California, Berkeley

CS194-25 Special topics: Building Your Next Generation Education Technologies

Fall 2012 (Co-taught with Dawn Song)
In this course we will explore today's online education landscape, learn and discuss what to consider when designing education tools, and contribute to a next generation online education technology.


My research is in computer science education, specifically on how to scale learning. With many classes growing in size, we cannot ignore the gap between the supply of teachers and demand in terms of the number of students. I do not believe a computer can replace a teacher, but I do think computers can help this situation. How to support the teacher, student, and class are the research questions I am most interested in. My research approach involves using mixed methods to analyze classroom data collected from class tools. I then apply the insights from this analysis to inform learning interventions.

If you are interested in working with me or collaborating, feel free to email me. For undergrad students, I am open to doing an independent study or you might be interested in Duke University's summer undergrad research program (CS+). I usually have at least one project in this program every summer.

Below are some of my research projects.

Student Help Seeking Behavior

Using data we currently can collect from the class, this project focuses on understanding student help-seeking behavior. Which students are seeking help? Where are they seeking help? What kind of help are students seeking? What kind of help are students receiving? How do we encourage students to seek help only when they need it? How do we improve the help students are receiving?

This project is in the preliminary data collection and analysis phase. We have data from office hours, class forums, and class materials.

Team members: Shao-Heng Ko

Former Team members: Sona Suryadevara (Summer 2021 - Spring 2022)

Hybrid, Flipped, Just-in-time Teaching

This line of work intertwines closely with what happens in the classroom. Hybrid means students can attend class online synchronously. Flipping class material involves students consuming learning materials outside the classroom, taking pre-class quizzes on that content, and applying their learning in the classroom. Just-in-time means the quiz results are analyzed and used to inform what is covered and focused on in class.

Team members: Janet Jiang, Shao-Heng Ko

Former Team members: Jerry He (Summer 2023), Salma El Otmani (Summer 2023)

UTA and student diversity

This work examines the diversity of students and undergraduate teaching assistants (UTAs). We are exploring the relationship between the demographic diversity of these two groups and other factors that spark our interest. Our first project focused on the historical diversity of these two groups over the past eight years.

Team members: Janet Jiang, Divya Nataraj

Helping Novices Debug Relational Queries (HNRQ)

This project is with Jun Yang and Sudeepa Roy. Our goal is to create an interactive debugger called I-Rex for SQL. I-Rex allows users to interactively "trace" through SQL queries, understand how they execute, and debug wrong queries.

My work on this project focuses on the learning and user experience of the tool. So far, we've run preliminary user studies to learn about the overall study experience. Other ideas we have for this project include: (1) Conducting cognitive walkthrough while an expert is debugging for the sake of designing a debugging process for beginners, (2) A controlled learning gains study while learners are using the tool, and (3) More user studies.

Team members: See the HNRQ Project for more details.

CS101 Reviewer App and Formative Assessments

CS101 Reviewer App is a web application that provides an online quiz tool to students enrolled in CS101 at Duke University. It enables students to quiz themselves on CS101 topics with carefully designed questions that check for specific misunderstandings. These questions are computer generated from a template. Formative assessments are course materials that seek to identify a studet's current understanding of the material. This project includes improving the Reviewer app and investigating assessments generally in a course with a focus on formative assessments.

Former Team members: Belle Xu (Summer 2021 - Spring 2023), Rhea Tejwani (Spring 2023), Bianca Saputra (Fall 2021 - Spring 2022), Brian Janger (Summer 2021), Manith Luthria (Summer 2021), Anshul Shah (Spring 2020 - Spring 2021), Jonathan Liu (Fall 2020 - Spring 2021), Andrew Elcock (Spring 2021), Benjamin Stewart (Summer 2020), Frank Tang (Summer 2020), Eric Young (Summer 2020)


Shao-Heng Ko (Current)
Ji Yeon Kim (2019)



Association for Computing Machinery (ACM)

2008 - Now

Special Interest Group on Computer Science Education (SIGCSE)

2018 - Now

Honors and Awards

Outstanding Graduate Student Instructor - UC Berkeley

National Science Foundation Graduate Research Fellowship

UC Berkeley Chancellor's fellowship


Hobby crafts blog