{"title":"App Lab: A Powerful JavaScript IDE for Rapid Prototyping of Small Data-backed Web Applications (Abstract Only)","authors":"Alice Steinglass, Baker Franke, Sarah Filman","doi":"10.1145/3017680.3022382","DOIUrl":"https://doi.org/10.1145/3017680.3022382","url":null,"abstract":"App Lab (https://code.org/applab) is Code.org's rapid-prototyping environment for creating HTML, CSS, and JavaScript-powered web applications. It was created as part of a rich set of instructional resources designed for teachers of the new AP Computer Science Principles (CSP) course. Yet, App Lab far exceeds the needs of CSP, and would be an appropriate learning environment for students in any CS0/CS1 class, even at the university level. App Lab gives novice programmers access to capabilities previously reserved for courses that require sophisticated tech setup and knowledge of both front and backend web development, server-side scripting, databases, etc. This demonstration aims to give a brief overview of App Lab and its purpose and then move quickly into demonstrating the more advanced features of App Lab that few people know are even there! The audience should come away with knowledge and access to exemplars that highlight App lab's possibilities, and see some of its richer features in action. Finally we will end with a discussion about how best to integrate App Lab into existing courses. App Lab was developed as part of collaboration between Code.org and David Bau (Google), creator of PencilCode.net.","PeriodicalId":344382,"journal":{"name":"Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education","volume":"63 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-03-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122692707","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":"Evaluating the Long-Term Impact of Pre-college Computing Activities (Abstract Only)","authors":"Adrienne Decker, Monica Mcgill, A. Peterfreund","doi":"10.1145/3017680.3022344","DOIUrl":"https://doi.org/10.1145/3017680.3022344","url":null,"abstract":"There is a critical need to increase the number of skilled technology workers in part due to the supply of workers in these fields not yet keeping up with demand. In an effort to increase the interest of students in studying within these fields, many commercial, governmental, and non-for-profit educational groups have sponsored numerous activities aimed to expose students to computing prior to college. With the advent of CS for All, there is further need to research these programs and evaluate their effectiveness. This session will gather researchers and practitioners interested in researching the impact that pre-college computing activities have on their participants. Participants will learn about a new initiative underway to make the job of collecting and tracking data easier. To be useful for the broader community, this NSF-funded IUSE initiative requires input from the community it wishes to serve. Participants will have the opportunity to provide valuable input on what their needs are for tracking such activities and what tools may be helpful for them, including methods for data collection to produce meaningful data that can be compared to data provided by other researchers and practitioners. The focus of this discussion will be the long-term impact of these activities; however, we will discuss data collection techniques researchers have used in the past to gauge short-term impact as well.","PeriodicalId":344382,"journal":{"name":"Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-03-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129646635","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":"Evaluating Neural Networks as a Method for Identifying Students in Need of Assistance","authors":"Karo Castro-Wunsch, A. Ahadi, Andrew Petersen","doi":"10.1145/3017680.3017792","DOIUrl":"https://doi.org/10.1145/3017680.3017792","url":null,"abstract":"Course instructors need to be able to identify students in need of assistance as early in the course as possible. Recent work has suggested that machine learning approaches applied to snapshots of small programming exercises may be an effective solution to this problem. However, these results have been obtained using data from a single institution, and prior work using features extracted from student code has been highly sensitive to differences in context. This work provides two contributions: first, a partial reproduction of previously published results, but in a different context, and second, an exploration of the efficacy of neural networks in solving this problem. Our findings confirm the importance of two features (the number of steps required to solve a problem and the correctness of key problems), indicate that machine learning techniques are relatively stable across contexts (both across terms in a single course and across courses), and suggest that neural network based approaches are as effective as the best Bayesian and decision tree methods. Furthermore, neural networks can be tuned to be reliably pessimistic, so they may serve a complementary role in solving the problem of identifying students who need assistance.","PeriodicalId":344382,"journal":{"name":"Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education","volume":"23 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-03-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129826865","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":"Impact of Class Size on Student Evaluations for Traditional and Peer Instruction Classrooms","authors":"Soohyun Nam Liao, W. Griswold, Leo Porter","doi":"10.1145/3017680.3017764","DOIUrl":"https://doi.org/10.1145/3017680.3017764","url":null,"abstract":"As student enrollments in computer science increase, there is a growing need for pedagogies that scale. Recent evidence has shown Peer Instruction (PI) to be an effective in-class pedagogy that reports high student satisfaction even with large classes. Yet, the question of the scalability of traditional lecture versus PI is largely unexplored. To explore this question, this work examines publicly available student evaluations of computer science courses across a wide range of class sizes (50--374 students) over a four year period. It first compares evaluations regardless of size and confirms prior work that PI classes are better appreciated by students than traditional lecture. It then examines how course evaluations change with class size and provides evidence that PI achieves a smaller decline in evaluations as class size increases.","PeriodicalId":344382,"journal":{"name":"Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education","volume":"4 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-03-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129611267","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":"Accessibility as a First-Class Concern in Teaching GUIs and Software Engineering (Abstract Only)","authors":"J. Ross, Amy J. Ko, David L. Stearns","doi":"10.1145/3017680.3022393","DOIUrl":"https://doi.org/10.1145/3017680.3022393","url":null,"abstract":"Ensuring that software systems are accessible to users with disabilities is historically neglected but increasingly important for professional software developers. It is imperative that students are familiar with accessible practices to support this often-overlooked form of diversity. We suggest that including accessibility topics when teaching user-interface development skills is a low-effort task that can directly support teaching core software development principles such as \"separation of concerns\" and \"standards compliance.\" In this lightning talk we describe our initial efforts to integrate accessibility and accessible design as \"first-class\" topics into our department's required course on web development, including specific examples of concepts covered, classroom activities, and assignments. We also discuss suggestions for how to potentially integrate accessibility topics into other computer science courses which include any kinds of front-end user interfaces. The goal of this talk is to promote awareness of accessibility concerns, demonstrate the ease by which educators can include such material, and encourage discussion about how to engage students in such diversity considerations throughout the curriculum.","PeriodicalId":344382,"journal":{"name":"Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-03-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130038983","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":"Can Undergraduate Computing Research Be Student-Driven? (Abstract Only)","authors":"Chelsea Patek, Ankur Chattopadhyay","doi":"10.1145/3017680.3022445","DOIUrl":"https://doi.org/10.1145/3017680.3022445","url":null,"abstract":"This poster presents a potential way of promoting student driven computing educational research that may provide an alternate path or option to the traditional faculty-driven computing education research. We propose a unique model of inter-class student collaboration that motivates creativity, expands the scope of collaborative research and enables handling of conceptual gaps through inter-class peer mentoring. The proposed model engages students from an upper level class with students of a lower level class so that they can connect with each other in a peer mentor-mentee relationship to overcome conceptual gaps in learning. It provides upper level students with an exclusive opportunity to reinforce their conceptual grasps and engage in research for addressing the problems faced by lower level students. This proposed model of improvised peer collaboration promotes a new kind of service-oriented learning project in computing that inspires innovation and leads to research on finding ways to handle common conceptual limitations, thereby helping student retention by assisting lower level peer mentees. It also assists upper level peer mentors in self-driving towards research oriented thinking for inventing methods to solve authentic conceptual issues. The proposed model has been currently implemented in the UWGB computing curriculum, where CS2 students have been collaborating with CS1 students and have been participating in computing educational research as part of the process. These ongoing research experiments have analyzed the performance of the proposed model through data obtained by conducting student surveys. The collected survey data represent insightful evidences from preliminary evaluations of the proposed model.","PeriodicalId":344382,"journal":{"name":"Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education","volume":"183 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-03-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129263000","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}
Matthew Peveler, Jeramey Tyler, S. Breese, B. Cutler, Ana L. Milanova
{"title":"Submitty: An Open Source, Highly-Configurable Platform for Grading of Programming Assignments (Abstract Only)","authors":"Matthew Peveler, Jeramey Tyler, S. Breese, B. Cutler, Ana L. Milanova","doi":"10.1145/3017680.3022384","DOIUrl":"https://doi.org/10.1145/3017680.3022384","url":null,"abstract":"Submitty (http://submitty.org) is an open source programming assignment submission system from the Rensselaer Center for Open Source Software (RCOS) at Rensselaer Polytechnic Institute (RPI). Students can submit their code via a web interface in a variety of ways, where it is then tested with a highly configurable and customizable automated grader. Students receive immediate feedback from the grader, and can resubmit to correct errors as needed. Through an online interface, TAs can access detailed grading results and supplement the automated scores with manual grading (numeric and written feedback) of overall program structure, good use of comments, reasonable error checking, etc. and any non-programming components of the assignment. The instructor can also configure the system to allow for a configurable late day policy on a per assignment and per student basis. We currently use Submitty in eight different courses (spanning from introductory through advanced topics) serving over 1500 students and 35+ instructors and TAs each week. We will present a range of \"case study\" assignment configurations in a hands-on demo, going from simple through complex, using a variety of different automated grading methods including per-character and per-line output difference checkers, external unit testing frameworks (such as JUnit), memory debugging tools (Valgrind and DrMemory), code coverage (e.g., Emma), static analysis tools, and custom graders. Submitty can be customized per test case as appropriate to apply resource limits (running time, number of processes, output file size, etc.) and to display or hide from students the program output, autograding results, and testing logs.","PeriodicalId":344382,"journal":{"name":"Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-03-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130231441","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":"Choosing Face-to-face or Video-based Instruction in a Mobile App Development Course","authors":"M. Boutell","doi":"10.1145/3017680.3017774","DOIUrl":"https://doi.org/10.1145/3017680.3017774","url":null,"abstract":"The face-to-face interaction in a traditional classroom on campus provides many benefits to students: the ability to ask questions and get immediate feedback, external motivation from the instructor and peers to succeed, the joy of interaction, and the ability to work face-to-face with classmates on projects. Meanwhile, video-based, online instruction offers several different benefits: convenience for students due to flexibility in time and place of learning, ease of reviewing materials for mastery, and the ability to work at one's own pace. When given the choice between these two formats, which do students choose? Students enrolled in an upper-level mobile app development course could opt to attend class with face-to-face instruction, to watch videos of the instructor, or to switch between the two formats as they saw fit. Students were given pre- and post-surveys asking them which format they preferred and why. Results indicate that slightly more than half of the students chose the video-based option and that students chose as they did for expected reasons, such as wanting to ask questions in class or wanting the flexibility to watch and re-watch video on demand. More interestingly, results also indicated that students who chose video did not suffer from the dropout and failure rates so commonly reported in the literature, that learning was equally effective using both formats, and that students' expectations of which format they would use were quite different from what they ended up using. However, with a small sample size at one institution, local factors, like scheduling the course during lunchtime, also played a role in students' choices.","PeriodicalId":344382,"journal":{"name":"Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education","volume":"11 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-03-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127495051","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}
Yerika Jimenez, Theodore Hays, Christina Gardner-Mccune
{"title":"Computational Thinking App Design Mat: Supporting the Development of Students' Computational Thinking Skills (Abstract Only)","authors":"Yerika Jimenez, Theodore Hays, Christina Gardner-Mccune","doi":"10.1145/3017680.3022412","DOIUrl":"https://doi.org/10.1145/3017680.3022412","url":null,"abstract":"Tools like MIT App Inventor and Scratch are designed to help students develop programming and computational thinking skills by allowing them to use their interest and personal experiences to create meaningful artifacts. However, students often need additional help in translating their ideas into functional programs because they lack understanding of how to map the visual aspects of their projects to programming constructs and understanding of how to develop appropriate algorithms that bring their ideas to life. To address this issue, we created a Computational Thinking App Design Mat (App Design Mat) to scaffolds students' CT skill development in the context of creating a mobile application with MIT APP Inventor 2. The App Design Mat fosters student engagement in computational thinking through four areas of the mat: Problem Decomposition, Pattern Abstraction, Pattern Recognition, and Algorithm Design. In this poster will describe the design and results from the use of the App Design Mat with 80 eighth grade students. Our results suggest that most students understood the purpose of using the App Design Mat, used the App Design Mat effectively, and used some aspects of the App Design Mat in developing their final mobile app project.","PeriodicalId":344382,"journal":{"name":"Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education","volume":"2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-03-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114265802","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":"An IoTa of IoT (Abstract Only)","authors":"Bill Siever, Michael P. Rogers","doi":"10.1145/3017680.3017820","DOIUrl":"https://doi.org/10.1145/3017680.3017820","url":null,"abstract":"Internet of Things (IoT) devices -- networked microcontrollers with attached sensors and outputs (LEDs, actuators, etc.) -- are becoming ubiquitous in the home (e.g., smart light bulbs, security systems), on the road (e.g., smart parking meters, traffic control), in industry (e.g., equipment monitoring, asset tracking) and in healthcare (e.g., fitness monitors, drug monitors). Consequently, IoT provides an opportunity to demonstrate the pervasiveness and social relevance of computing. Moreover, today's hobbyist- oriented IoT platforms empower entry-level students to create meaningful, real-world IoT applications. This allows rich computer science topics, such as event driven programming, concurrency, networking, information representation, cloud computing, etc., to be introduced earlier in the curriculum. Most importantly, IoT examples provide a compelling context for students to hone their critical thinking skills while solving engaging, real-world problems. Faculty interested in including IoT topics face several challenges: selecting a suitable set of topics, identifying an appropriate pedagogical approach, and, perhaps most daunting, choosing a cost-effective platform that lends itself to classroom use. This workshop will introduce the basic terms and technologies in IoT, discuss issues that arise when including IoT topics in classes, compare and contrast the most popular platforms for IoT, and walk participants through several classroom-tested, hands-on examples using a classroom-friendly platform (Particle's Photon) where they create both Wi-Fi-based IoT devices and corresponding web apps. Participants will need a laptop (any OS) with Internet access.","PeriodicalId":344382,"journal":{"name":"Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education","volume":"42 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-03-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123615544","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}