{"title":"Using Discernment Activities to Promote Skill Retention from Programming and Software Tutorials","authors":"H. Nickerson","doi":"10.1145/3105726.3105733","DOIUrl":"https://doi.org/10.1145/3105726.3105733","url":null,"abstract":"Short self-guided tutorials for individuals who wish to create computational artifacts often emphasize activity completion, providing an immediate sense of accomplishment but failing to promote sustainable gains in learning. However, to be successful in subsequent endeavors, it is essential that these learners develop robust skills. By incorporating principles from Bransford & Schwarz's Preparation for Future Learning framework, interactive tutorials should be able to promote the acquisition of durable and adaptive abilities.","PeriodicalId":267640,"journal":{"name":"Proceedings of the 2017 ACM Conference on International Computing Education Research","volume":"4 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-08-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121037244","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}
J. Tenenberg, Donald D. Chinn, J. Sheard, L. Malmi
{"title":"Proceedings of the 2017 ACM Conference on International Computing Education Research","authors":"J. Tenenberg, Donald D. Chinn, J. Sheard, L. Malmi","doi":"10.1145/3105726","DOIUrl":"https://doi.org/10.1145/3105726","url":null,"abstract":"We welcome you to the thirteenth annual International Computing Education Research Conference, ICER 2017, sponsored by the ACM Special Interest Group on Computer Science Education (SIGCSE). Tacoma, Washington, USA is the host city for this year's conference, with sessions taking place on the downtown campus of the University of Washington Tacoma. \u0000 \u0000ICER stands as the premier ACM forum for dissemination and discussion of the latest findings in computing education research across the globe. ICER research papers represent significant, rigorous contributions to the field. One hundred eight research papers were submitted, with twenty-nine papers accepted for publication (a 27% acceptance rate) in the conference proceedings in the ACM Digital Library. All papers were double-blind peer reviewed by three members of the review committee. In addition, each paper received a meta-review by a member of the program committee, with the two Program Co-Chairs making final acceptance decisions. \u0000 \u0000In addition to the research paper presentations, ICER includes Lightning Talk and Poster sessions as a way for ICER attendees to present early results, gain feedback from conference attendees, find collaborators on a topic, and/or spark discussion among conference participants. The conference also serves a vital mentoring and advising role for upcoming discipline-based computing education researchers through the Doctoral Consortium. The Work in Progress workshop is a dedicated one-day workshop for ICER attendees to provide and receive friendly, constructive feedback on research during formative stages of development. \u0000 \u0000Associated co-located workshops with external sponsorship at ICER 2017 include Social Theory for Computer Science Education, Leveraging Programming and Social Analytics to Improve Computing Education, and Research on Learning about Machine Learning. \u0000 \u0000We are honored to welcome Wolff-Michael Roth, the Lansdowne Professor of Applied Cognitive Science in the Faculty of Education at the University of Victoria, British Columbia, Canada to present the ICER 2017 keynote address. For the past 30 years, he has been investigating knowing and learning across the lifespan in formal educational, workplace, and leisure settings. His journal and book publications range across several disciplines and fields (natural sciences, research methodology, education, psychology, social studies of science), drawing on a wide spectrum of research methods and theories. Professor Roth's keynote, Minding One's Business, examines where the mind is \"located\" when people do what they characteristically do. He draws on several empirical examples to exhibit how, when, and where to look to find cognition that is not reduced to the physical body (including brain physiology) or to some nonphysical mind and that is not reduced to the individual or social.","PeriodicalId":267640,"journal":{"name":"Proceedings of the 2017 ACM Conference on International Computing Education Research","volume":"111 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-08-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123978455","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}
S. Edwards, Nischel Kandru, Mukund B. M. Rajagopal
{"title":"Investigating Static Analysis Errors in Student Java Programs","authors":"S. Edwards, Nischel Kandru, Mukund B. M. Rajagopal","doi":"10.1145/3105726.3106182","DOIUrl":"https://doi.org/10.1145/3105726.3106182","url":null,"abstract":"Research on students learning to program has produced studies on both compile-time errors (syntax errors) and run-time errors (exceptions). Both of these types of errors are natural targets, since detection is built into the programming language. In this paper, we present an empirical investigation of static analysis errors present in syntactically correct code. Static analysis errors can be revealed by tools that examine a program's source code, but this error detection is typically not built into common programming languages and instead requires separate tools. Static analysis can be used to check formatting or commenting expectations, but it also can be used to identify problematic code or to find some kinds of conceptual or logic errors. We study nearly 10 million static analysis errors found in over 500 thousand program submissions made by students over a five-semester period. The study includes data from four separate courses, including a non-majors introductory course as well as the CS1/CS2/CS3 sequence for CS majors. We examine the differences between the error rates of CS major and non-major beginners, and also examine how these patterns change over time as students progress through the CS major course sequence. Our investigation shows that while formatting and Javadoc issues are the most common, static checks that identify coding flaws that are likely to be errors are strongly correlated with producing correct programs, even when students eventually fix the problems. With experience, students produce fewer errors, but the errors that are most frequent are consistent between both computer science majors and non-majors, and across experience levels. These results can highlight student struggles or misunderstandings that have escaped past analyses focused on syntax or run-time errors.","PeriodicalId":267640,"journal":{"name":"Proceedings of the 2017 ACM Conference on International Computing Education Research","volume":"60 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-08-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127969390","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}
{"title":"RoboBUG: A Serious Game for Learning Debugging Techniques","authors":"Michael A. Miljanovic, J. S. Bradbury","doi":"10.1145/3105726.3106173","DOIUrl":"https://doi.org/10.1145/3105726.3106173","url":null,"abstract":"Debugging is an essential but challenging task that can present a great deal of confusion and frustration to novice programmers. It can be argued that Computer Science education does not sufficiently address the challenges that students face when identifying bugs in their programs. To help students learn effective debugging techniques and to provide students a more enjoyable and motivating experience, we have designed the RoboBUG game. RoboBUG is a serious game that can be customized with respect to different programming languages and game levels.","PeriodicalId":267640,"journal":{"name":"Proceedings of the 2017 ACM Conference on International Computing Education Research","volume":"101 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-08-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131962993","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}
{"title":"Towards Understanding Student's Mental Effort in Block- Based Programming Environments Using Electroencephalogram (EEG)","authors":"Yerika Jimenez","doi":"10.1145/3105726.3105738","DOIUrl":"https://doi.org/10.1145/3105726.3105738","url":null,"abstract":"Block-based programming environments such as Scratch and App Inventor are currently being used by millions of students around the world. Although block-based programming environments were created to make computing concepts simpler for students to understand and visualize, students continue to struggle with understanding some basic Computer Science (CS) concepts [1]. My research focuses on understanding how students interact and learn computing concepts in block-based programming environments from a cognitive perspective. In particular, I am using neurophysiological devices, electroencephalography (EEG), to measures students' mental efforts that is attention and perception during programming tasks.","PeriodicalId":267640,"journal":{"name":"Proceedings of the 2017 ACM Conference on International Computing Education Research","volume":"2674 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-08-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131508782","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}
{"title":"Comprehension-First Pedagogy and Adaptive, Intrinsically Motivated Tutorials","authors":"Greg L. Nelson","doi":"10.1145/3105726.3105739","DOIUrl":"https://doi.org/10.1145/3105726.3105739","url":null,"abstract":"Two large multinational studies show more than 60% of students incorrectly answer questions about the execution of basic programs. How can we improve program comprehension learning outcomes, and does that improve program writing learning outcomes? Nearly all prior tools and approaches have been evaluated in a writing-focused pedagogical context. People receive instruction on a programming construct's syntax and semantics, practice by writing code, then advance to the next construct (roughly a spiral syntax approach). In contrast, little work has explored a comprehension-first pedagogy, teaching and assessing program semantics - how static code causes dynamic computer behavior - before teaching learners to write code. I hypothesize this pedagogy improves program comprehension and writing learning outcomes, and that an adaptive curriculum of programs that aligns with the learner's interests and assessed knowledge further improves outcomes. Towards that goal, I built and evaluated a comprehension-first tutorial (PLTutor) with a fixed, non-adaptive curriculum, showing 60% higher learning gains (3.9 vs 2.4 on the SCS1) than the writing-focused tutorial Codecademy. I'm looking for new ideas (such as more social (theories, design, etc)), prior work, or methods to inform my thesis proposal and committee selection.","PeriodicalId":267640,"journal":{"name":"Proceedings of the 2017 ACM Conference on International Computing Education Research","volume":"55 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-08-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132588700","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}
{"title":"The Effect of Sketching and Tracing on Instructors' Understanding of Student Misconceptions","authors":"Kathryn Cunningham","doi":"10.1145/3105726.3105746","DOIUrl":"https://doi.org/10.1145/3105726.3105746","url":null,"abstract":"The operation of the notional machine presents a hidden but crucial process in students' understanding of introductory programming. When students trace though code, simulating the operation of the notional machine, this hidden operation becomes evident. When students sketch this trace by physically drawing it, the operation is also visible to peers, tutors, and teachers as well as to the students themselves. Increased accuracy on code reading problems has already been found for students who sketch and trace. I want to explore whether sketching and tracing helps others better understand what a student knows about the notional machine.","PeriodicalId":267640,"journal":{"name":"Proceedings of the 2017 ACM Conference on International Computing Education Research","volume":"42 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-08-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128872734","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}
{"title":"Dual Modality Code Explanations for Novices: Unexpected Results","authors":"Briana B. Morrison","doi":"10.1145/3105726.3106191","DOIUrl":"https://doi.org/10.1145/3105726.3106191","url":null,"abstract":"The research in both cognitive load theory and multimedia principles for learning indicates presenting information using both diagrams and accompanying audio explanations yields better learning performance than using diagrams with text explanations. While this is a common practice in introductory programming courses, often called \"live coding,\" it has yet to be empirically tested. This paper reports on an experiment to determine if auditory explanations of code result in improved learning performance over written explanations. Students were shown videos explaining short code segments one of three ways: text only explanations, auditory only explanations, or both text and auditory explanations, thus replicating experiments from other domains. The results from this study do not support the findings from other disciplines and we offer explanations for why this may be the case.","PeriodicalId":267640,"journal":{"name":"Proceedings of the 2017 ACM Conference on International Computing Education Research","volume":"149 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-08-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115546256","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}
{"title":"Towards a Fine-grained Analysis of Complexity of Programming Tasks","authors":"Rodrigo Duran","doi":"10.1145/3105726.3105731","DOIUrl":"https://doi.org/10.1145/3105726.3105731","url":null,"abstract":"Bloom's and SOLO taxonomies have been used to describe the complexity of computer science tasks and student's outcome. However, using these taxonomies have coarse granularity and programming tasks with very different demands could be equally classified at the same level. My research proposes a new framework using Neo-Piagetian stages of development based on the Model of Hierarchical Complexity (MHC) that enable formal definition and fine-grained evaluation of programming tasks nuances in paradigms, languages, and constructs. By empirically validating the model, I expect it to be a valuable tool to provide best practices to develop pedagogical approaches and tools.","PeriodicalId":267640,"journal":{"name":"Proceedings of the 2017 ACM Conference on International Computing Education Research","volume":"10 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-08-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123989936","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}
{"title":"Understanding and Supporting Better Pairings for CS1 Students","authors":"L. Legault","doi":"10.1145/3105726.3105729","DOIUrl":"https://doi.org/10.1145/3105726.3105729","url":null,"abstract":"Introduction to programming courses employ pair programming with benefits to both students and instructors. When selecting their own partners, students without extant support or social networks are at a significant disadvantage relative to well-connected students. The present work will use individual and pair programming activities to create a matching program to suggest effective programming partners to students, with the goal of improving the experience of partner work in introductory CS classes. In doing so, we will explore the relevant matching traits in productive pairs and gain a deeper understanding of (un)productive pair partnerships.","PeriodicalId":267640,"journal":{"name":"Proceedings of the 2017 ACM Conference on International Computing Education Research","volume":"32 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-08-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131083837","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}