-A A +A

ACM Transactions on Computing Education

Subscribe to ACM Transactions on Computing Education feed
Updated: 20 min 19 sec ago

How Student Centered is the Computer Science Classroom? A Survey of College Faculty

Wed, 11/29/2017 - 19:00
Scott Grissom, Renée Mccauley, Laurie Murphy

Student-centered instructional practices structure a class so that students interact with each other, engage deeply with the content, and receive formative feedback. These evidence-based practices benefit all students but are particularly effective with underrepresented learners, including women and members of other minority groups. To what extent have computer science (CS) faculty embraced these strategies? We surveyed over 700 U.S. faculty to find out. Results suggest that female faculty, associate professors, and those teaching courses with enrollment above 80 students are more likely to use these student-centered practices. Across all responses, 20% of faculty use student--student interaction on a regular basis during class.

Students’ Misconceptions and Other Difficulties in Introductory Programming: A Literature Review

Thu, 10/26/2017 - 20:00
Yizhou Qian, James Lehman

Efforts to improve computer science education are underway, and teachers of computer science are challenged in introductory programming courses to help learners develop their understanding of programming and computer science. Identifying and addressing students’ misconceptions is a key part of a computer science teacher's competence. However, relevant research on this topic is not as fully developed in the computer science education field as it is in mathematics and science education. In this article, we first review relevant literature on general definitions of misconceptions and studies about students’ misconceptions and other difficulties in introductory programming. Next, we investigate the factors that contribute to the difficulties.

Teaching Software Product Lines: A Snapshot of Current Practices and Challenges

Thu, 10/26/2017 - 20:00
Mathieu Acher, Roberto E. Lopez-Herrejon, Rick Rabiser

Software Product Line (SPL) engineering has emerged to provide the means to efficiently model, produce, and maintain multiple similar software variants, exploiting their common properties, and managing their variabilities (differences). With over two decades of existence, the community of SPL researchers and practitioners is thriving, as can be attested by the extensive research output and the numerous successful industrial projects. Education has a key role to support the next generation of practitioners to build highly complex, variability-intensive systems. Yet, it is unclear how the concepts of variability and SPLs are taught, what are the possible missing gaps and difficulties faced, what are the benefits, and what is the material available.

Comparing Block-Based and Text-Based Programming in High School Computer Science Classrooms

Thu, 10/26/2017 - 20:00
David Weintrop, Uri Wilensky

The number of students taking high school computer science classes is growing. Increasingly, these students are learning with graphical, block-based programming environments either in place of or prior to traditional text-based programming languages. Despite their growing use in formal settings, relatively little empirical work has been done to understand the impacts of using block-based programming environments in high school classrooms. In this article, we present the results of a 5-week, quasi-experimental study comparing isomorphic block-based and text-based programming environments in an introductory high school programming class. The findings from this study show students in both conditions improved their scores between pre- and postassessments; however, students in the blocks condition showed greater learning gains and a higher level of interest in future computing courses.

Developing Computational Thinking through a Virtual Robotics Programming Curriculum

Thu, 10/26/2017 - 20:00
Eben B. Witherspoon, Ross M. Higashi, Christian D. Schunn, Emily C. Baehr, Robin Shoop

Computational thinking describes key principles from computer science that are broadly generalizable. Robotics programs can be engaging learning environments for acquiring core computational thinking competencies. However, few empirical studies evaluate the effectiveness of a robotics programming curriculum for developing computational thinking knowledge and skills. This study measures pre/post gains with new computational thinking assessments given to middle school students who participated in a virtual robotics programming curriculum. Overall, participation in the virtual robotics curriculum was related to significant gains in pre- to posttest scores, with larger gains for students who made further progress through the curriculum. The success of this intervention suggests that participation in a scaffolded programming curriculum, within the context of virtual robotics, supports the development of generalizable computational thinking knowledge and skills that are associated with increased problem-solving performance on nonrobotics computing tasks.