Abstract
In this work, we developed an algorithm for detecting code quality issues in the templates of online programming tasks, validated it, and conducted an empirical study on the dataset of student solutions. The algorithm consists of analyzing recurring unfixed issues in solutions of different students, matching them with the code of the template, and then filtering the results. Our manual validation on a subset of tasks demonstrated a precision of 80.8% and a recall of 73.3%. We used the algorithm on 415 Java tasks from the JetBrains Academy platform and discovered that as much as 14.7% of tasks have at least one issue in their template, thus making it harder for students to learn good code quality practices. We describe our results in detail, provide several motivating examples and specific cases, and share the feedback of the developers of the platform, who fixed 51 issues based on the output of our approach.
Original language | English |
---|---|
Title of host publication | ITiCSE 2023 - Proceedings of the 2023 Conference on Innovation and Technology in Computer Science Education |
Publisher | Association for Computing Machinery |
Pages | 152-158 |
Number of pages | 7 |
ISBN (Electronic) | 9798400701382 |
DOIs | |
Publication status | Published - 29 Jun 2023 |
Event | 28th Annual Conference on Innovation and Technology in Computer Science Education, ITiCSE 2023 - Turku, Finland Duration: 8 Jul 2023 → 12 Jul 2023 |
Publication series
Name | Annual Conference on Innovation and Technology in Computer Science Education, ITiCSE |
---|---|
Volume | 1 |
ISSN (Print) | 1942-647X |
Conference
Conference | 28th Annual Conference on Innovation and Technology in Computer Science Education, ITiCSE 2023 |
---|---|
Country/Territory | Finland |
City | Turku |
Period | 8/07/23 → 12/07/23 |
Bibliographical note
Publisher Copyright:© 2023 ACM.
Keywords
- code formatting
- code quality
- large-scale analysis
- learning programming
- MOOC
- programming education
- refactoring