Florian Obermüller, Lena Bloch, Luisa Greifenstein, Ute Heuer, G. Fraser
{"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":"https://doi.org/10.1145/3481312.3481346","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.0,"publicationDate":"2021-08-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114484660","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Nina Körber, Lisa Bailey, G. Fraser, B. Sabitzer, Marina Rottenhofer
{"title":"An Experience of Introducing Primary School Children to Programming using Ozobots (Practical Report)","authors":"Nina Körber, Lisa Bailey, G. Fraser, B. Sabitzer, Marina Rottenhofer","doi":"10.1145/3481312.3481347","DOIUrl":"https://doi.org/10.1145/3481312.3481347","url":null,"abstract":"Algorithmic thinking is a central concept in the context of computational thinking, and it is commonly taught by computer programming. A recent trend is to introduce basic programming concepts already very early on at primary school level. There are, however, several challenges in teaching programming at this level: Schools and teachers are often neither equipped nor trained appropriately, and the best way to move from initial “unplugged” activities to creating programs on a computer is still a matter of open debate. In this paper, we describe our experience of a project aiming at supporting local primary schools in introducing children to programming concepts using Ozobot robots. These robots have two distinct advantages: First, they can be programmed with and without computers, thus helping the transition from unplugged programming to programming with a computer. Second, they are small and easy to transport, even when used together with tablet computers. Although we learned in our outreach events that the use of Ozobots is not without challenges, our overall experience is positive and can hopefully support others in setting up first encounters with programming at primary schools.","PeriodicalId":224786,"journal":{"name":"The 16th Workshop in Primary and Secondary Computing Education","volume":"14 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116021059","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}