"Why is my code slow?" Efficiency Bugs in Student Code
While prior research has categorized common errors and code quality issues of student programmers, little attention has been paid to researching student efficiency bugs. Qualitative content analysis of 250 slow student submissions across five CS2 assignments yielded over 750 efficiency bugs. Extracting general themes resulted in an efficiency bug taxonomy with three main categories: superfluous computation, suboptimal data structure design, and suboptimal algorithm design, with 12 subcategories. Analysis of specific bug frequencies across the assignments provided insights that may inform content design for programming courses.
Authors
- Robert C. Miller
- Hope Dargan (ORCID: https://orcid.org/0000-0002-2921-6273)
- Adam Gilbert-Diamond
- Adam J. Hartz
Institutions
- IIT@MIT (US)
Publication Details
- Published
- 2025-02-12
- DOI
- https://doi.org/10.1145/3641554.3701939
- Citations
- 2
- Primary Topic
- Software Testing and Debugging Techniques
- Type
- article
- Field-Weighted Citation Impact
- 4.62