Algorithm design is a vital skill developed in most undergraduate Computer Science (CS) programs, but few research studies focus on pedagogy related to algorithms coursework. To understand the work that has been done in the area, we present a systematic survey and literature review of CS Education studies. We search for research that is both related to algorithm design (as described by the ACM Curricular Guidelines) and evaluated on post-secondary-level students. Across all venues we searched prior to July 2024, we only find 102 such papers.
We first classify these papers by topic, evaluation metric, evaluation methods, and intervention target. Through our classification, we find a broad sparsity of papers which indicates that many open questions remain about teaching algorithm design. We also note the need for papers using rigorous research methods, as only 43 out of 92 papers presenting quantitative data use statistical tests, and only 16 out of 47 papers presenting qualitative data follow a coding scheme. Only 18 papers report controlled trials. In addition, almost all authors only contribute to one publication, an indication that few groups are specializing on these topics.
We then synthesize the results of the existing literature to give insights into what the corpus reveals about how we should teach algorithms. Broadly, we find that much of the literature explores implementing well-established practices, such as active learning or automated assessment, in the algorithms classroom. However, there are algorithms-specific results as well: A number of papers find that students may under-utilize certain algorithmic design techniques, and studies describe a variety of ways to select algorithms problems that increase student engagement and learning.
The results we present, along with the publicly available set of papers collected, provide a detailed representation of the current corpus of CS Education work related to algorithm design and can orient further research in the area.
Sat 21 FebDisplayed time zone: Central Time (US & Canada) change
10:40 - 12:00 | |||
10:40 26mTalk | An Empirical Evaluation of Active Live Coding in CS1 Journal First Anshul Shah University of California, San Diego, Thomas Rexin University of California, San Diego, Fatimah Alhumrani University of California, San Diego, William Griswold UC San Diego, Leo Porter University of California San Diego, Adalbert Gerald Soosai Raj University of California, San Diego DOI | ||
11:06 26mTalk | Analyzing Fine-Grained Skill Development across Computer Science Course ProgressionsGlobal Journal First Bogdan Simion University of Toronto Mississauga, Lisa Zhang University of Toronto Mississauga, Giang Bui University of Toronto Mississauga, Robin Huang University of Toronto, Ramzi Abu-Zeineh , Shrey Vakil University of Toronto DOI | ||
11:33 26mTalk | Teaching Algorithm Design: A Literature Review Journal First Jonathan Liu University of Chicago, Seth Poulsen Utah State University, Erica Goodwin University of Chicago, Hongxuan Chen University of Illinois at Urbana-Champaign, Grace Williams University of Chicago, Yael Gertner University of Illinois Urbana-Champaign, Diana Franklin University of Chicago DOI | ||