The CS1 Reviewer App: Choose Your Own Adventure or Choose for Me!
We present the CS1 Reviewer App - an online tool for an introductory Python course that allows students to solve customized problem sets on many concepts in the course. Currently, the app's questions focus on code tracing by presenting a block of Python code and asking students to predict the output of the code. The tool tracks a student's response history to maintain a "mastery level"that represents a student's knowledge of a concept. We also provide an option of answering auto-generated quizzes based on the student's mastery across concepts. As a result, the tool provides students a choice between creating their own learning experience or leveraging our question selection algorithm. The app is supported on traditional webpages and mobile devices, providing a convenient way for students to study a variety of concepts. Students in the CS1 course at Duke University used this tool during the Spring and Fall 2020 semesters. In this paper, we explore trends in usage, feedback and suggestions from students, and avenues of future work based on student experiences.