代码香水:报告好的代码以鼓励学习者

Florian Obermüller, Lena Bloch, Luisa Greifenstein, Ute Heuer, G. Fraser
{"title":"代码香水:报告好的代码以鼓励学习者","authors":"Florian Obermüller, Lena Bloch, Luisa Greifenstein, Ute Heuer, G. Fraser","doi":"10.1145/3481312.3481346","DOIUrl":null,"url":null,"abstract":"Block-based programming languages like enable children to be creative while learning to program. Even though the block-based approach simplifies the creation of programs, learning to program can nevertheless be challenging. Automated tools such as linters therefore support learners by providing feedback about potential bugs or code smells in their programs. Even when this feedback is elaborate and constructive, it still represents purely negative criticism and by construction ignores what learners have done correctly in their programs. In this paper we introduce an orthogonal approach to linting: We complement the criticism produced by a linter with positive feedback. We introduce the concept of code perfumes as the counterpart to code smells, indicating the correct application of programming practices considered to be good. By analysing not only what learners did wrong but also what they did right we hope to encourage learners, to provide teachers and students a better understanding of learners’ progress, and to support the adoption of automated feedback tools. Using a catalogue of 25 code perfumes for, we empirically demonstrate that these represent frequent practices in, and we find that better programs indeed contain more code perfumes.","PeriodicalId":224786,"journal":{"name":"The 16th Workshop in Primary and Secondary Computing Education","volume":"19 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2021-08-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"11","resultStr":"{\"title\":\"Code Perfumes: Reporting Good Code to Encourage Learners\",\"authors\":\"Florian Obermüller, Lena Bloch, Luisa Greifenstein, Ute Heuer, G. Fraser\",\"doi\":\"10.1145/3481312.3481346\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Block-based programming languages like enable children to be creative while learning to program. Even though the block-based approach simplifies the creation of programs, learning to program can nevertheless be challenging. Automated tools such as linters therefore support learners by providing feedback about potential bugs or code smells in their programs. Even when this feedback is elaborate and constructive, it still represents purely negative criticism and by construction ignores what learners have done correctly in their programs. In this paper we introduce an orthogonal approach to linting: We complement the criticism produced by a linter with positive feedback. We introduce the concept of code perfumes as the counterpart to code smells, indicating the correct application of programming practices considered to be good. By analysing not only what learners did wrong but also what they did right we hope to encourage learners, to provide teachers and students a better understanding of learners’ progress, and to support the adoption of automated feedback tools. Using a catalogue of 25 code perfumes for, we empirically demonstrate that these represent frequent practices in, and we find that better programs indeed contain more code perfumes.\",\"PeriodicalId\":224786,\"journal\":{\"name\":\"The 16th Workshop in Primary and Secondary Computing Education\",\"volume\":\"19 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2021-08-13\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"11\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"The 16th Workshop in Primary and Secondary Computing Education\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/3481312.3481346\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"The 16th Workshop in Primary and Secondary Computing Education","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3481312.3481346","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 11

摘要

像基于块的编程语言可以让孩子们在学习编程时更有创造力。尽管基于块的方法简化了程序的创建,但学习编程仍然具有挑战性。因此,诸如lint之类的自动化工具通过提供有关程序中潜在错误或代码气味的反馈来支持学习者。即使这种反馈是详细的和建设性的,它仍然代表着纯粹的负面批评,并且通过构建忽略了学习者在他们的课程中正确做的事情。在本文中,我们介绍了一种正交方法来检测:我们用正反馈来补充检测器产生的批评。我们引入了代码香味的概念,作为代码气味的对应物,表明正确应用了被认为是好的编程实践。通过分析学习者做错了什么,以及他们做对了什么,我们希望鼓励学习者,让老师和学生更好地了解学习者的进步,并支持采用自动反馈工具。使用一个包含25种代码香水的目录,我们经验地证明了这些代表了常见的实践,并且我们发现更好的程序确实包含更多的代码香水。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Code Perfumes: Reporting Good Code to Encourage Learners
Block-based programming languages like enable children to be creative while learning to program. Even though the block-based approach simplifies the creation of programs, learning to program can nevertheless be challenging. Automated tools such as linters therefore support learners by providing feedback about potential bugs or code smells in their programs. Even when this feedback is elaborate and constructive, it still represents purely negative criticism and by construction ignores what learners have done correctly in their programs. In this paper we introduce an orthogonal approach to linting: We complement the criticism produced by a linter with positive feedback. We introduce the concept of code perfumes as the counterpart to code smells, indicating the correct application of programming practices considered to be good. By analysing not only what learners did wrong but also what they did right we hope to encourage learners, to provide teachers and students a better understanding of learners’ progress, and to support the adoption of automated feedback tools. Using a catalogue of 25 code perfumes for, we empirically demonstrate that these represent frequent practices in, and we find that better programs indeed contain more code perfumes.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信