It's Never too Early to Learn about Code Quality: A Longitudinal Study of Code Quality in First-year Computer Science Students

7Citations
Citations of this article
7Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Low code quality incurs a significant cost upon the software industry. Despite this, little serious effort has been devoted to the topic at the most basic levels of computing science education. Where studies have been conducted, the results are disappointing in terms of code quality. In this work, four iterations of a medium to large CS1 and CS2 course (n=200 students) were analyzed through the lens of code violations to better understand (1) what code violations occur most frequently, (2) how does their occurrence vary throughout the course, and (3) to what extent do teaching assistants have an effect upon code quality. Results showed a statistically significant improvement in code quality over 19 assignments in all four course iterations. In particular, when a single violation was the focus of a learning outcome, the effects were both a dramatic fall and sustained low occurrence. However, this improvement was mostly focused on the three most frequently occurring violations (> 70%), which masked an increase in lesser occurring violations throughout the course. Finally, the effects from different teaching assistants were found to be random at best, contradicting expectations that their influence would be easily detected. Given that explicit learning outcomes targeted at code quality had an effect and teaching assistant influence had no effect, a path forward to improving code quality might combine these forces without creating too many additional demands upon the already stretched teaching resources with CS1 and CS2 courses.

Cite

CITATION STYLE

APA

Östlund, L., Wicklund, N., & Glassey, R. (2023). It’s Never too Early to Learn about Code Quality: A Longitudinal Study of Code Quality in First-year Computer Science Students. In SIGCSE 2023 - Proceedings of the 54th ACM Technical Symposium on Computer Science Education (Vol. 1, pp. 792–798). Association for Computing Machinery, Inc. https://doi.org/10.1145/3545945.3569829

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free