Michael Morgan, M. Butler, J. Sinclair, G. Cross, Janet Fraser, J. Jacková, Neena Thota
There is an increasing trend to use national benchmarks to measure student engagement, with instruments such as North American National Survey of Student Engagement (NSSE) in the USA and Canada, Student Experience Survey (SES) in Australia and NZ (previously known as the University Experience Survey UES), and Student Engagement Survey (SES) in the UK. Unfortunately, Computer Science (CS) rates fairly poorly on a number of measures in these surveys, even when compared to related STEM disciplines. Initial research suggests reasons for this poor performance may include a lack of awareness by CS academics of these instruments and the student engagement measures they are based on, and a misalignment between these instruments and the research focus of computing educators, leading to misdirected efforts in research and teaching practice. In this working group we carry out an in-depth analysis of international student engagement instruments to facilitate a greater awareness of the international benchmarks and what aspects of student engagement they measure. The working group also examine the focus of current computing education research and its alignment to student engagement measures on which these instruments are based. Armed with this knowledge, the computing education community can make informed decisions on how best to respond to these measures and consider ways to improve our performance in relation to other disciplines. In particular it is important to understand why certain measures of student engagement are built into these instruments, how these align to our current research practice or even to provide feedback to the designers of these instruments from a CS perspective.
{"title":"Understanding International Benchmarks on Student Engagement: Awareness, Research Alignment and Response from a Computer Science Perspective","authors":"Michael Morgan, M. Butler, J. Sinclair, G. Cross, Janet Fraser, J. Jacková, Neena Thota","doi":"10.1145/3059009.3081324","DOIUrl":"https://doi.org/10.1145/3059009.3081324","url":null,"abstract":"There is an increasing trend to use national benchmarks to measure student engagement, with instruments such as North American National Survey of Student Engagement (NSSE) in the USA and Canada, Student Experience Survey (SES) in Australia and NZ (previously known as the University Experience Survey UES), and Student Engagement Survey (SES) in the UK. Unfortunately, Computer Science (CS) rates fairly poorly on a number of measures in these surveys, even when compared to related STEM disciplines. Initial research suggests reasons for this poor performance may include a lack of awareness by CS academics of these instruments and the student engagement measures they are based on, and a misalignment between these instruments and the research focus of computing educators, leading to misdirected efforts in research and teaching practice. In this working group we carry out an in-depth analysis of international student engagement instruments to facilitate a greater awareness of the international benchmarks and what aspects of student engagement they measure. The working group also examine the focus of current computing education research and its alignment to student engagement measures on which these instruments are based. Armed with this knowledge, the computing education community can make informed decisions on how best to respond to these measures and consider ways to improve our performance in relation to other disciplines. In particular it is important to understand why certain measures of student engagement are built into these instruments, how these align to our current research practice or even to provide feedback to the designers of these instruments from a CS perspective.","PeriodicalId":174429,"journal":{"name":"Proceedings of the 2017 ACM Conference on Innovation and Technology in Computer Science Education","volume":"18 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-06-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124311191","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}
James W. Walker, Jean Mayo, Ching-Kuang Shene, S. Carr
This paper describes a pedagogical system to visualize program execution.1 The visualization is designed to help students understand how to develop more secure and robust C programs. The system provides several perspectives on the execution including: the values of registers and the logical address space, a call graph, the file descriptor and inode tables, and the handling of sensitive data like passwords and keys. These visualizations are designed to help students understand fundamental concepts such as: buffer overflows, integer overflows, proper handling of sensitive data and application of the principle of least privilege in several contexts including file operations, secure SUID programming, and use and management of the process environment.
{"title":"Visualization for Secure Coding in C","authors":"James W. Walker, Jean Mayo, Ching-Kuang Shene, S. Carr","doi":"10.1145/3059009.3072990","DOIUrl":"https://doi.org/10.1145/3059009.3072990","url":null,"abstract":"This paper describes a pedagogical system to visualize program execution.1 The visualization is designed to help students understand how to develop more secure and robust C programs. The system provides several perspectives on the execution including: the values of registers and the logical address space, a call graph, the file descriptor and inode tables, and the handling of sensitive data like passwords and keys. These visualizations are designed to help students understand fundamental concepts such as: buffer overflows, integer overflows, proper handling of sensitive data and application of the principle of least privilege in several contexts including file operations, secure SUID programming, and use and management of the process environment.","PeriodicalId":174429,"journal":{"name":"Proceedings of the 2017 ACM Conference on Innovation and Technology in Computer Science Education","volume":"39 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-06-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126408962","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}
Antti Knutas, J. Ikonen, L. Ripamonti, D. Maggiorini, J. Porras
In this paper, an approach and a rubric for measuring commitment to computer-supported collaboration in student teams is presented.
本文提出了一种测量学生团队中计算机支持协作承诺的方法和标准。
{"title":"Discovering Indicators of Commitment in Computer-Supported Collaborative Student Teams","authors":"Antti Knutas, J. Ikonen, L. Ripamonti, D. Maggiorini, J. Porras","doi":"10.1145/3059009.3072995","DOIUrl":"https://doi.org/10.1145/3059009.3072995","url":null,"abstract":"In this paper, an approach and a rubric for measuring commitment to computer-supported collaboration in student teams is presented.","PeriodicalId":174429,"journal":{"name":"Proceedings of the 2017 ACM Conference on Innovation and Technology in Computer Science Education","volume":"111 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-06-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134456945","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}
A. Vasilchenko, D. Green, Haneen Qarabash, Anne Preston, Tom Bartindale, Madeline Balaam
Understanding, promoting, and teaching media literacy is an important societal challenge. STEM educators are increasingly looking to incorporate 21st century skills such as media literacy into core subject education. In this paper we investigate how undergraduate Computer Science (CS) students can learn media literacy as a by-product of collaborative video tutorial production. The paper presents a study of 34 third-year CS undergraduates who, as part of their learning, were each asked to produce three video tutorials on Raspberry Pi programming, using a collaborative video production tool for mobile phones (Bootlegger). We provide results of both quantitative and qualitative analysis of the production process and resulting video tutorials, and conclude that the student cohort demonstrated a clear development of media literacy skills. The paper's contribution is twofold. First, we add to the understanding of how the use of mobile collaborative video production technology by non-professionals can help them learn to create meaningful media messages with little scaffolding. Second, we present an alternative pedagogical approach that can help CS students acquire 21st century skills such as media literacy.
{"title":"Media Literacy as a By-Product of Collaborative Video Production by CS Students","authors":"A. Vasilchenko, D. Green, Haneen Qarabash, Anne Preston, Tom Bartindale, Madeline Balaam","doi":"10.1145/3059009.3059047","DOIUrl":"https://doi.org/10.1145/3059009.3059047","url":null,"abstract":"Understanding, promoting, and teaching media literacy is an important societal challenge. STEM educators are increasingly looking to incorporate 21st century skills such as media literacy into core subject education. In this paper we investigate how undergraduate Computer Science (CS) students can learn media literacy as a by-product of collaborative video tutorial production. The paper presents a study of 34 third-year CS undergraduates who, as part of their learning, were each asked to produce three video tutorials on Raspberry Pi programming, using a collaborative video production tool for mobile phones (Bootlegger). We provide results of both quantitative and qualitative analysis of the production process and resulting video tutorials, and conclude that the student cohort demonstrated a clear development of media literacy skills. The paper's contribution is twofold. First, we add to the understanding of how the use of mobile collaborative video production technology by non-professionals can help them learn to create meaningful media messages with little scaffolding. Second, we present an alternative pedagogical approach that can help CS students acquire 21st century skills such as media literacy.","PeriodicalId":174429,"journal":{"name":"Proceedings of the 2017 ACM Conference on Innovation and Technology in Computer Science Education","volume":"61 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-06-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134565524","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}
We report on our experience building and implementing a robotics course for Computer Science based on the LEGO NXT. The goal of the course is to provide students with an opportunity to learn the fundamental principles involved in designing, programming, and operating mobile robots in a completely experiential setting, while abstracting away the hardware complexity of typical robotics platforms. To this end, we built the course around the LEGO NXT robot kits. We have developed a software framework that allows the NXT to be used in conjunction with a laptop computer and a webcam to enable our students to learn in the context of a robotics soccer game. We describe the process of designing the robotics soccer project so that it is tightly coupled with course learning goals, and report on our experience running the course over the past three years. The software platform is freely available, and allows anyone with a webcam-equipped laptop and an NXT set to implement their own soccer playing bot.
{"title":"Practical Robotics in Computer Science Using the LEGO NXT: An Experience Report","authors":"Francisco J. Estrada","doi":"10.1145/3059009.3059025","DOIUrl":"https://doi.org/10.1145/3059009.3059025","url":null,"abstract":"We report on our experience building and implementing a robotics course for Computer Science based on the LEGO NXT. The goal of the course is to provide students with an opportunity to learn the fundamental principles involved in designing, programming, and operating mobile robots in a completely experiential setting, while abstracting away the hardware complexity of typical robotics platforms. To this end, we built the course around the LEGO NXT robot kits. We have developed a software framework that allows the NXT to be used in conjunction with a laptop computer and a webcam to enable our students to learn in the context of a robotics soccer game. We describe the process of designing the robotics soccer project so that it is tightly coupled with course learning goals, and report on our experience running the course over the past three years. The software platform is freely available, and allows anyone with a webcam-equipped laptop and an NXT set to implement their own soccer playing bot.","PeriodicalId":174429,"journal":{"name":"Proceedings of the 2017 ACM Conference on Innovation and Technology in Computer Science Education","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-06-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127873206","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}
In this paper, we describe work to investigate the creation of engaging programming learning experiences. Background research informed the design of four fieldwork studies involving a range of age groups to explore how programming tasks could best be framed to motivate learners. Our empirical findings from these four studies, described here, contributed to the design of a set of programming "Learning Dimensions" (LDs). The LDs provide educators with insights to support key design decisions for the creation of engaging programming learning experiences. This paper describes the background to the identification of these LDs and how they could address the design and delivery of highly engaging programming learning tasks. A web application has been authored to support educators in the application of the LDs to their lesson design.
{"title":"Learning Dimensions: Lessons from Field Studies","authors":"C. Martin, J. Hughes, J. Richards","doi":"10.1145/3059009.3059046","DOIUrl":"https://doi.org/10.1145/3059009.3059046","url":null,"abstract":"In this paper, we describe work to investigate the creation of engaging programming learning experiences. Background research informed the design of four fieldwork studies involving a range of age groups to explore how programming tasks could best be framed to motivate learners. Our empirical findings from these four studies, described here, contributed to the design of a set of programming \"Learning Dimensions\" (LDs). The LDs provide educators with insights to support key design decisions for the creation of engaging programming learning experiences. This paper describes the background to the identification of these LDs and how they could address the design and delivery of highly engaging programming learning tasks. A web application has been authored to support educators in the application of the LDs to their lesson design.","PeriodicalId":174429,"journal":{"name":"Proceedings of the 2017 ACM Conference on Innovation and Technology in Computer Science Education","volume":"73 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-06-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124644046","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}
TetrisOS and BreakoutOS are projects developed for a sophomore-level computer organization course. Each project teaches a wide range of x86 assembly language topics, including iteration, function calls, data storage, segmentation, communication with devices, and polling-based and interrupt-based I/O. They run "bare-metal" and avoid system calls. Each game can run natively on any PC and boot from a USB stick. The projects were tested on six classes of students over three semesters at two universities, and though rigorous, had a high completion rate.
{"title":"TetrisOS and BreakoutOS: Assembly Language Projects for Computer Organization","authors":"M. Black","doi":"10.1145/3059009.3072976","DOIUrl":"https://doi.org/10.1145/3059009.3072976","url":null,"abstract":"TetrisOS and BreakoutOS are projects developed for a sophomore-level computer organization course. Each project teaches a wide range of x86 assembly language topics, including iteration, function calls, data storage, segmentation, communication with devices, and polling-based and interrupt-based I/O. They run \"bare-metal\" and avoid system calls. Each game can run natively on any PC and boot from a USB stick. The projects were tested on six classes of students over three semesters at two universities, and though rigorous, had a high completion rate.","PeriodicalId":174429,"journal":{"name":"Proceedings of the 2017 ACM Conference on Innovation and Technology in Computer Science Education","volume":"411 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-06-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122863247","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}
Paul Denny, E. Tempero, D. Garbett, Andrew Petersen
Students and instructors expend significant effort, respectively, preparing to be examined and preparing students for exams. This paper investigates question authoring, where students create practice questions as a preparation activity prior to an exam, in an introductory programming context. The key contribution of this study as compared to previous work is an improvement to the design of the experiment. Students were randomly assigned the topics that their questions should target, removing a selection bias that has been a limitation of earlier work. We conduct a large-scale between-subjects experiment (n = 700) and find that students exhibit superior performance on exam questions that relate to the topics they were assigned when compared to those students preparing questions on other assigned topics.
{"title":"Examining a Student-Generated Question Activity Using Random Topic Assignment","authors":"Paul Denny, E. Tempero, D. Garbett, Andrew Petersen","doi":"10.1145/3059009.3059033","DOIUrl":"https://doi.org/10.1145/3059009.3059033","url":null,"abstract":"Students and instructors expend significant effort, respectively, preparing to be examined and preparing students for exams. This paper investigates question authoring, where students create practice questions as a preparation activity prior to an exam, in an introductory programming context. The key contribution of this study as compared to previous work is an improvement to the design of the experiment. Students were randomly assigned the topics that their questions should target, removing a selection bias that has been a limitation of earlier work. We conduct a large-scale between-subjects experiment (n = 700) and find that students exhibit superior performance on exam questions that relate to the topics they were assigned when compared to those students preparing questions on other assigned topics.","PeriodicalId":174429,"journal":{"name":"Proceedings of the 2017 ACM Conference on Innovation and Technology in Computer Science Education","volume":"18 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-06-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126389153","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}
Rémy Siegfried, Severin Klingler, M. Gross, R. Sumner, F. Mondada, Stéphane Magnenat
The strong interest children show for mobile robots makes these devices potentially powerful to teach programming. Moreover, the tangibility of physical objects and the sociability of interacting with them are added benefits. A key skill that novices in programming have to acquire is the ability to mentally trace program execution. However, because of their embodied and real-time nature, robots make the mental tracing of program execution difficult. To address this difficulty, in this paper we propose an automatic program evaluation framework based on a robot simulator. We describe a real-time implementation providing feedback and gamified hints to students. In a user study, we demonstrate that our hint system increases the percentage of students writing correct programs from 50% to 96%, and decreases the average time to write a correct program by 30%. However, we could not show any correlation between the use of the system and the performance of students on a questionnaire testing concept acquisition. This suggests that programming skills and concept understanding are different abilities. Overall, the clear performance gain shows the value of our approach for programming education using robots.
{"title":"Improved Mobile Robot Programming Performance through Real-time Program Assessment","authors":"Rémy Siegfried, Severin Klingler, M. Gross, R. Sumner, F. Mondada, Stéphane Magnenat","doi":"10.1145/3059009.3059044","DOIUrl":"https://doi.org/10.1145/3059009.3059044","url":null,"abstract":"The strong interest children show for mobile robots makes these devices potentially powerful to teach programming. Moreover, the tangibility of physical objects and the sociability of interacting with them are added benefits. A key skill that novices in programming have to acquire is the ability to mentally trace program execution. However, because of their embodied and real-time nature, robots make the mental tracing of program execution difficult. To address this difficulty, in this paper we propose an automatic program evaluation framework based on a robot simulator. We describe a real-time implementation providing feedback and gamified hints to students. In a user study, we demonstrate that our hint system increases the percentage of students writing correct programs from 50% to 96%, and decreases the average time to write a correct program by 30%. However, we could not show any correlation between the use of the system and the performance of students on a questionnaire testing concept acquisition. This suggests that programming skills and concept understanding are different abilities. Overall, the clear performance gain shows the value of our approach for programming education using robots.","PeriodicalId":174429,"journal":{"name":"Proceedings of the 2017 ACM Conference on Innovation and Technology in Computer Science Education","volume":"25 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-06-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124131671","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}
In this paper we introduce hybrid labs, an alternative to open or closed labs for CS 1, in which a set of written instructions, demonstration of techniques, and code examples are provided to students in lieu of a lecture. The hybrid lab also consists of several challenges which require students to write code or answer questions based off the concepts introduced in the document. Students are presented with the lab two days prior to a class period and are given an option of submitting solutions to the challenges on their own time (similar to an open lab) or attending the class in which an instructor is available to provide additional help as needed (similar to a closed lab). We compare a section of CS 1 that utilized a combination of hybrid labs and lectures against a section that utilized only lectures. We found no statistical significance between the abilities of the students of the two sections, but surveys show that students found the hybrid labs to be more engaging and preferred the hybrid labs over lectures as means of instruction. Furthermore, instructors found that the hybrid labs allowed for more tailored, individualized instruction for a variety of student abilities.
{"title":"A Hybrid Open/Closed Lab for CS 1","authors":"T. Urness","doi":"10.1145/3059009.3059014","DOIUrl":"https://doi.org/10.1145/3059009.3059014","url":null,"abstract":"In this paper we introduce hybrid labs, an alternative to open or closed labs for CS 1, in which a set of written instructions, demonstration of techniques, and code examples are provided to students in lieu of a lecture. The hybrid lab also consists of several challenges which require students to write code or answer questions based off the concepts introduced in the document. Students are presented with the lab two days prior to a class period and are given an option of submitting solutions to the challenges on their own time (similar to an open lab) or attending the class in which an instructor is available to provide additional help as needed (similar to a closed lab). We compare a section of CS 1 that utilized a combination of hybrid labs and lectures against a section that utilized only lectures. We found no statistical significance between the abilities of the students of the two sections, but surveys show that students found the hybrid labs to be more engaging and preferred the hybrid labs over lectures as means of instruction. Furthermore, instructors found that the hybrid labs allowed for more tailored, individualized instruction for a variety of student abilities.","PeriodicalId":174429,"journal":{"name":"Proceedings of the 2017 ACM Conference on Innovation and Technology in Computer Science Education","volume":"40 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-06-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128634377","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}