Proceedings of the 2019 ACM Conference on Innovation and Technology in Computer Science Education 2019
DOI: 10.1145/3304221.3319780
|View full text |Cite
|
Sign up to set email alerts
|

How Teachers Would Help Students to Improve Their Code

Abstract: Code quality has been receiving less attention than program correctness in both the practice of and research into programming education. Writing poor quality code might be a sign of carelessness, or not fully understanding programming concepts and language constructs. Teachers play an important role in addressing quality issues, and encouraging students to write better code as early as possible.In this paper we explore to what extent teachers address code quality in their teaching, which code quality issues th… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
4
1

Citation Types

0
27
0
2

Year Published

2020
2020
2023
2023

Publication Types

Select...
8

Relationship

2
6

Authors

Journals

citations
Cited by 33 publications
(29 citation statements)
references
References 19 publications
0
27
0
2
Order By: Relevance
“…The hints the system gives are based on rules, derived from teacher suggestions for a set of imperfect student programs, collected in our earlier study that investigated how teachers would give feedback on improving code [18]. Other rules are based on other studies [9,36], a subset of rules from professional static analysis tools considered suitable for novices, and equality rules from arithmetic and logic.…”
Section: The Refactor Tutormentioning
confidence: 99%
See 1 more Smart Citation
“…The hints the system gives are based on rules, derived from teacher suggestions for a set of imperfect student programs, collected in our earlier study that investigated how teachers would give feedback on improving code [18]. Other rules are based on other studies [9,36], a subset of rules from professional static analysis tools considered suitable for novices, and equality rules from arithmetic and logic.…”
Section: The Refactor Tutormentioning
confidence: 99%
“…The system focuses on method-level refactorings, such as rewriting a complex expression, removing unneeded code, and replacing a language construct by a more suitable alternative. The functionality of the tutoring system is based on input from teachers and how they would want students to rewrite their code, which we investigated in an earlier study [18]. The system offers refactoring exercises: it is the student's task to rewrite functionally correct code.…”
Section: Introductionmentioning
confidence: 99%
“…Poor coding style may result in writing incomprehensible code that is difficult to maintain and test [25]. Creating code quality awareness is an important step in preparing programming students to work as professional developers [21,28,29]. However, many students do not pay enough attention to code quality, since the main goal for them is to submit a solution that passes all the tests [28].…”
Section: Introductionmentioning
confidence: 99%
“…However, many students do not pay enough attention to code quality, since the main goal for them is to submit a solution that passes all the tests [28]. They rarely research more complex solutions or best practices [28,29] and may make the same mistakes over again. Therefore, learners may need an incentive to improve their coding style [28].…”
Section: Introductionmentioning
confidence: 99%
“…The CS Education research literature has established the importance of teaching software quality as part of the CS curriculum 1,2,3,4 . However, it remains subject to considerable debate whether the topic of software quality is appropriate for introductory learners.…”
Section: Introductionmentioning
confidence: 99%