{"title":"Standardizing Students' Programming Environments with Docker Containers: Using Visual Studio Code in the Cloud with GitHub Codespaces","authors":"D. Malan","doi":"10.1145/3502717.3532164","DOIUrl":"https://doi.org/10.1145/3502717.3532164","url":null,"abstract":"","PeriodicalId":274484,"journal":{"name":"Proceedings of the 27th ACM Conference on on Innovation and Technology in Computer Science Education Vol. 2","volume":"62 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-07-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116715919","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}
Florence Martin, Nicole Shanley, Nicole Hite, Manuel A. Pérez-Quiñones, D. Pugalee, Ellen Hart
{"title":"Developing Online Professional Development for High School Teachers to Teach Computer Science Online","authors":"Florence Martin, Nicole Shanley, Nicole Hite, Manuel A. Pérez-Quiñones, D. Pugalee, Ellen Hart","doi":"10.1145/3502717.3532174","DOIUrl":"https://doi.org/10.1145/3502717.3532174","url":null,"abstract":"Creating effective professional development is critical to support high school teachers who teach computer science (CS) online. The context of this study is based on a current Research to Practice Partnership (RPP) between the University of North Carolina at Charlotte in the United States and North Carolina Virtual Public School (NCVPS). Ten high school teachers from the NCVPS who teach CS online participated in a summer workshop and recommended design, facilitation, and evaluation strategies to be included in effective professional development (PD). The summer workshop was conducted synchronously via Zoom. It provided the opportunity to discuss teacher perceptions related to the research questions \"What design, facilitation, and assessment strategies are helpful to include in an AP Computer Science Advanced course?\" and \"What recommendations do you have for designing an online professional development course for high school teachers to teach computer science online?\" The questions were posed through an online collaborative Jamboard, and the affinity diagram method was used for data collection and document analysis was conducted. The teacher posts were qualitatively analyzed to identify common themes. Findings for professional development on content design included CS content, how to teach CS, and CS tools and activities. For assessment, they recommended content knowledge assessments, including lab assignments, single and pair programming, and coding assessments. They recommended tools for supplemental instruction, integration of discussion boards for interaction, and tools and strategies to provide feedback for professional development.","PeriodicalId":274484,"journal":{"name":"Proceedings of the 27th ACM Conference on on Innovation and Technology in Computer Science Education Vol. 2","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-07-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115528046","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}
Krista D. Glazewski, Anne T. Ottenbreit-Leftwich, Katie Jantaraweragul, Min-Kyung Jeon, C. Hmelo‐Silver, J. Scribner, Seung Y. Lee, Bradford W. Mott, James Lester
{"title":"PrimaryAI: Co-Designing Immersive Problem-Based Learning for Upper Elementary Student Learning of AI Concepts and Practices","authors":"Krista D. Glazewski, Anne T. Ottenbreit-Leftwich, Katie Jantaraweragul, Min-Kyung Jeon, C. Hmelo‐Silver, J. Scribner, Seung Y. Lee, Bradford W. Mott, James Lester","doi":"10.1145/3502717.3532142","DOIUrl":"https://doi.org/10.1145/3502717.3532142","url":null,"abstract":"There is growing awareness of the central role that artificial intelligence (AI) plays now and in children's futures. This has led to increasing interest in engaging K-12 students in AI education to promote their understanding of AI concepts and practices. Leveraging principles from problem-based pedagogies and game-based learning, our approach integrates AI education into a set of unplugged activities and a game-based learning environment. In this work, we describe outcomes from our efforts to co design problem-based AI curriculum with elementary school teachers.","PeriodicalId":274484,"journal":{"name":"Proceedings of the 27th ACM Conference on on Innovation and Technology in Computer Science Education Vol. 2","volume":"50 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-07-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126793849","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}
Ashwin Jagadeesha, Pranathi Rayavaram, Mounika Bonam, Sashank Narain, C. S. Lee
{"title":"AlgoScratch - Simplifying Data Structures and Algorithms Education using Block-based Programming","authors":"Ashwin Jagadeesha, Pranathi Rayavaram, Mounika Bonam, Sashank Narain, C. S. Lee","doi":"10.1145/3502717.3532141","DOIUrl":"https://doi.org/10.1145/3502717.3532141","url":null,"abstract":"We have implemented a novel framework called AlgoScratch as an extension to the popular Scratch programming language. AlgoScratch is designed to simplify Data Structures and Algorithms education in the K-12 curriculum through visual and intuitive Scratch blocks. The framework implements widely used data structures such as Arrays, Stacks, Queues, Sets, and Maps; and algorithms such as Binary Search and Quick Sort. This poster discusses the implementation of the AlgoScratch blocks and their ability to simplify complex computer science concepts through visual programming that employs a simple drag and drop-based interface.","PeriodicalId":274484,"journal":{"name":"Proceedings of the 27th ACM Conference on on Innovation and Technology in Computer Science Education Vol. 2","volume":"69 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-07-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123446168","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":"Designing Computing Education Courses for Liberal Arts and Science Students","authors":"M. Guzdial","doi":"10.1145/3502717.3532129","DOIUrl":"https://doi.org/10.1145/3502717.3532129","url":null,"abstract":"Computing education practitioners and researchers know a lot about how to design courses for students who are going to pursue a career in computing (e.g., professional software developer, data scientist, or computer engineer). Today, computing is a necessary part of other careers, such as scientists who create computational models and simulations, artists working in computational media, and critical computing scholars. The University of Michigan College of Literature, Science, and the Arts (LSA) charged a task force with defining the computing education needs for their students. The task force conducted a year long process involving searches of courses and programs, interviews with students and faculty, and a large survey. The task force proposed themes of Computing for Discovery, Expression, and Justice as useful in organizing computing within the liberal arts and sciences. We are now designing the introductory courses for expression and justice. We are using participatory design methods where faculty advisors engage in tasks (like card sorting) to define projects and learning goals. The expression and justice card sorts are markedly different. We are planning to use a block-based language (Snap!) for instruction and homework, but students will also engage with a purpose-built Runestone ebook in a textual language like Processing (for expression), and Python and HTML (for justice). The ebook activities are informed by purpose-first programming in order to support transfer of knowledge and to encourage a sense of self-efficacy and authenticity.","PeriodicalId":274484,"journal":{"name":"Proceedings of the 27th ACM Conference on on Innovation and Technology in Computer Science Education Vol. 2","volume":"8 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-07-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131143068","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":"Student Reactions to Bots on Course Q&A Platform","authors":"Yu-Chieh Wu, Andrew Petersen, Lisa Zhang","doi":"10.1145/3502717.3532147","DOIUrl":"https://doi.org/10.1145/3502717.3532147","url":null,"abstract":"Motivation Bots can alleviate the workload of instructors supporting students in large course Q&A platforms, but it's not clear whether students will be receptive to the use of automated assistants in this setting. Objectives We aim to observe student reactions when they encounter bot-generated follow-ups to Q&A board posts. We investigate the effect of revealing that a bot, rather than a human, is suggesting that the current post is a duplicate. Methods Our bot revealed or hid its bot identity when suggesting duplicate posts, with the condition selected randomly. We observed students' reactions in both conditions. A post-course survey was distributed to collect students' demographic data, previous experiences with bots, and attitudes toward our bot. Results We observed a slight increase in students' response rate when the bot hid its identity. We compared the positive response rate in both conditions and did not find evidence suggesting that students had less trust in bot-generated answers. From the survey, we only saw minimal direct evidence that students might mistrust the bot: 7 of 59 students reported worries about receiving an inaccurate bot-generated answer. Other students were concerned that they would not receive attention from an instructor. Discussion We did not find evidence that revealing the bot's identity has a negative impact on student reactions. However, future bot design should consider the emotional impact of deploying a bot as there may be negative emotional effects to receiving a bot-generated response.","PeriodicalId":274484,"journal":{"name":"Proceedings of the 27th ACM Conference on on Innovation and Technology in Computer Science Education Vol. 2","volume":"12 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-07-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134062595","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":"Pattern-oriented Instruction and Students' Abstraction Skills","authors":"Liat Nakar, M. Armoni","doi":"10.1145/3502717.3532140","DOIUrl":"https://doi.org/10.1145/3502717.3532140","url":null,"abstract":"Pattern-oriented instruction (POI) is an instructional computer science (CS) approach that relies on algorithmic patterns (APs). Teaching through APs has been shown to help students acknowledge APs and incorporate them into their solutions, thus demonstrating abstraction skills. In this work, we examine the connection between POI and students' abstraction performance in a wider context. We show that introducing APs by using POI, either partially or in a full manner, is an effective choice for encouraging several types of abstraction skills.","PeriodicalId":274484,"journal":{"name":"Proceedings of the 27th ACM Conference on on Innovation and Technology in Computer Science Education Vol. 2","volume":"74 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-07-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134244987","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":"First Assignment in a Scalable Computing Course","authors":"A. Rosenbloom","doi":"10.1145/3502717.3532160","DOIUrl":"https://doi.org/10.1145/3502717.3532160","url":null,"abstract":"The University of Toronto has been running CSC409 Scalable Computing, since 2018. This paper outlines the first assignment in this course. It exposes students to a large range of scalability concepts, requiring them to architect and implement solutions in plain old Java. They are exposed to orchestration, caching, load balancing, replication and partitioning, consistency, performance and reliability measures, scaling, etc., all in one assignment. They experience, first hand, the complexities and architectural solutions behind building distributed, scalable systems. This prepares them for exposure to common tools such as Docker, Redis, Cassandra, etc. having built shadows of these themselves. We discuss the assignment, its implementation and marking. The assignment can be found at http://www.cs.toronto.edu/~arnold/research/iticse2022/","PeriodicalId":274484,"journal":{"name":"Proceedings of the 27th ACM Conference on on Innovation and Technology in Computer Science Education Vol. 2","volume":"16 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-07-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133600109","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}
Steven M. Hadfield, Alexander C. Roosma, Adrian A. de Freitas, Kim A. Braun, Stephen Fulton, Joel Coffman, David T. Merritt, Kenneth R. Sample, Justin C. Wilson, Bobby D. Birrer
{"title":"Introducing Software Development Process, Software Engineering, and Artificial Intelligence in a CS0.5 Course Project","authors":"Steven M. Hadfield, Alexander C. Roosma, Adrian A. de Freitas, Kim A. Braun, Stephen Fulton, Joel Coffman, David T. Merritt, Kenneth R. Sample, Justin C. Wilson, Bobby D. Birrer","doi":"10.1145/3502717.3532135","DOIUrl":"https://doi.org/10.1145/3502717.3532135","url":null,"abstract":"Our CS0.5 course is required for all students and tasked to develop and assess the system development process proficiencies of an engineering-based institutional outcome. To achieve this tasking, we created a course-wide project that simulates NASA's Mars Ingenuity helicopter using an approach that emphasized our software system development process. With this project, our first-year college students created a 2-dimensional simulation of the Ingenuity helicopter flying through the thin Martian atmosphere with the goal of maximizing the area mapped subject to flight dynamics, available battery, landing proximity, and impact constraints. Students created their Ingenuity simulator using Python in three spirals: Spiral 1 - rendering of the simulation view with some initial movement, Spiral 2 - manual flight operations via thrust and roll keyboard inputs, and Spiral 3 - full auto-pilot. The students utilized a software system development process called \"UDIT\" (pronounced, \"U Did IT\") which stands for Understand - Design - Implement - Test. The assignment document was purposefully organized based on this process. The Understand and Design steps were presented via storyboards, enumerated requirements, a recommended structure chart, pseudocode, and suggested variables. As the Understand and Design steps address higher order objectives on Bloom's Taxonomy, we strived to model effective approaches for these steps. Most of our novice programmer's efforts involved the Implementation and Test steps emphasizing a build-a-little, test-a-little strategy. Forty percent of points come from testing via test procedures that the students created. The remaining points were earned based on code correctness and quality. The course also introduced the students to Artificial Intelligence to contribute to another proficiency of the engineering institutional outcome. For this, the project introduced students to genetic algorithms. They learned how the algorithm's parameters can be configured to train a more sophisticated version of the autopilot that needed to deal with additional Ingenuity features, including altitude-dependent mapping, as well as randomness in the form of varying winds at different altitudes. Currently being used with 450 students across 22 sections, the project is being assessed by sub-score tracking across the spirals; students' self-assessments of learning, interest, and self-efficacy; and collection of instructors' experiences and perceptions on the project.","PeriodicalId":274484,"journal":{"name":"Proceedings of the 27th ACM Conference on on Innovation and Technology in Computer Science Education Vol. 2","volume":"96 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-07-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116272476","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. Impagliazzo, Natalie Kiesler, Amruth N. Kumar, Bonnie K. MacKellar, R. Raj, Mihaela Sabin
{"title":"Perspectives on Dispositions in Computing Competencies","authors":"J. Impagliazzo, Natalie Kiesler, Amruth N. Kumar, Bonnie K. MacKellar, R. Raj, Mihaela Sabin","doi":"10.1145/3502717.3532121","DOIUrl":"https://doi.org/10.1145/3502717.3532121","url":null,"abstract":"ACM Reference Format: John Impagliazzo (Moderator), Natalie Kiesler, Amruth N. Kumar, Bonnie MacKellar, Rajendra K. Raj, and Mihaela Sabin. 2022. Perspectives on Dispositions in Computing Competencies. In Proceedings of the 27th ACM Conference on Innovation and Technology in Computer Science Education Vol 2 (ITiCSE 2022), July 8–13, 2022, Dublin, Ireland. ACM, New York, NY, USA, 2 pages. https://doi.org/10.1145/3502717.3532121","PeriodicalId":274484,"journal":{"name":"Proceedings of the 27th ACM Conference on on Innovation and Technology in Computer Science Education Vol. 2","volume":"2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-07-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123785943","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}