TY - CHAP
T1 - Writing Between the Lines: How Novices Construct Java Programs
AU - Brown, Neil
AU - Mac, Victoria
AU - Weill-Tessier, Pierre
AU - Kölling, Michael
N1 - Publisher Copyright:
© 2024 ACM.
PY - 2024/3/7
Y1 - 2024/3/7
N2 - Novices frequently learn to program using text-based programming, in languages such as Java. Programs can be constructed in a variety of different ways. Novices may write them sequentially, one line after another, or they may use top-down design to write outlines then fill them in. They may do a lot of trial and error: writing and deleting as they receive errors, or they may use a lot of copy-and-paste. This level of detail -- higher than keystroke-level editing but below plan-composition analysis -- has rarely been explored in programming education research, but it can provide insight into how novices tackle program construction, and offer hints as to how they wrestle with the challenges of constructing an error-free program. In this paper we used thematic analysis to create a reliable set of tags for Java program construction, and then used them to tag over 100 programming sessions lasting over 300 hours. We empirically find that novices rarely comment, rarely plan, and frequently program by copying code they already wrote in the project and pasting it then adjusting it -- which we think indicates a way to transfer the knowledge of the code they just wrote to the next code they are constructing. We offer thoughts on the viability of this work and the difficulty of tagging higher-level behaviours such as responses to errors.
AB - Novices frequently learn to program using text-based programming, in languages such as Java. Programs can be constructed in a variety of different ways. Novices may write them sequentially, one line after another, or they may use top-down design to write outlines then fill them in. They may do a lot of trial and error: writing and deleting as they receive errors, or they may use a lot of copy-and-paste. This level of detail -- higher than keystroke-level editing but below plan-composition analysis -- has rarely been explored in programming education research, but it can provide insight into how novices tackle program construction, and offer hints as to how they wrestle with the challenges of constructing an error-free program. In this paper we used thematic analysis to create a reliable set of tags for Java program construction, and then used them to tag over 100 programming sessions lasting over 300 hours. We empirically find that novices rarely comment, rarely plan, and frequently program by copying code they already wrote in the project and pasting it then adjusting it -- which we think indicates a way to transfer the knowledge of the code they just wrote to the next code they are constructing. We offer thoughts on the viability of this work and the difficulty of tagging higher-level behaviours such as responses to errors.
UR - http://www.scopus.com/inward/record.url?scp=85189328233&partnerID=8YFLogxK
U2 - 10.1145/3626252.3630968
DO - 10.1145/3626252.3630968
M3 - Conference paper
VL - 1
T3 - SIGCSE 2024 - Proceedings of the 55th ACM Technical Symposium on Computer Science Education
SP - 165
EP - 171
BT - SIGCSE 2024: Proceedings of the 55th ACM Technical Symposium on Computer Science Education
ER -