ACM Transactions on Computing Education

Subscribe to ACM Transactions on Computing Education feed
Updated: 2 hours 44 min ago

Looking Backward to Look Forward: TOCE in Transition

Tue, 09/22/2015 - 20:00
Josh Tenenberg, Robert McCartney

This editorial marks the end of our tenure as founding co-editors-in-chief of the ACM Transactions on Computing Education (TOCE). We have three goals in this editorial. First, we provide a retrospective on how we positioned TOCE, both in terms of how it embodies our conception of Computing Education Research (CER) as a field, as well as the journal's role in the larger computing education community and the ACM. We focus on the process by which we determined what constitutes publishability for a manuscript submitted to TOCE, describing what is best understood as a living process negotiated among the authors, reviewers, associate editors, and editors-in-chief in interaction with manuscripts and one another.

Teaching Mathematical Reasoning Principles for Software Correctness and Its Assessment

Tue, 08/18/2015 - 20:00
Svetlana V. Drachova, Jason O. Hallstrom, Joseph E. Hollingsworth, Joan Krone, Rich Pak, Murali Sitaraman

Undergraduate computer science students need to learn analytical reasoning skills to develop high-quality software and to understand why the software they develop works as specified. To accomplish this central educational objective, this article describes a systematic process of introducing reasoning skills into the curriculum and assessing how well students have learned those skills. To facilitate assessment, a comprehensive inventory of principles for reasoning about correctness that captures the finer details of basic skills that students need to learn has been defined and used. The principles can be taught at various levels of depth across the curriculum in a variety of courses.

Object-Oriented Design and Programming: An Investigation of Novices’ Conceptions on Objects and Classes

Mon, 07/27/2015 - 20:00
Stelios Xinogalos

The Object-Oriented Programming (OOP) technique is nowadays the most popular programming technique among tertiary education institutions. However, learning OOP is a cognitively demanding task for undergraduate students. Several difficulties and misconceptions have been recorded in the literature for both OOP concepts and languages, mainly Java. This article focuses on reviewing and advancing research on the most fundamental OOP concepts, namely, the concepts of “object” and “class” and their role during program execution. The results of a long-term investigation on the subject are presented, focusing on a study exploring undergraduate students’ conceptions on “objects” and “classes.” The study advances related research on categories of conceptions on “objects” and “classes” by providing quantitative results, in addition to qualitative results, regarding the frequency of the recorded conceptions.

Examining Interest and Grades in Computer Science 1: A Study of Pedagogy and Achievement Goals

Mon, 07/27/2015 - 20:00
Daniel Zingaro

Computer Science 1 (CS1), the first course taken by college-level computer science (CS) majors, has traditionally suffered from high failure rates. Efforts to understand this phenomenon have considered a wide range of predictors of CS success, such as prior programming experience, math ability, learning style, and gender, with findings that are suggestive but inconclusive. The current quasiexperimental study extends this research by exploring how the pedagogical approach of the course (traditional lecture vs. Peer Instruction (PI) and clickers) in combination with student achievement goals (mastery goals vs. performance goals) relates to exam grades, interest in the subject matter, and course enjoyment.