Abstract: Learning to program is difficult for many students. Although several factors that affect learning to program have been identified over the years, we are still far from a full understanding of why some students learn to program easily and quickly while others flounder. Two constructs that may affect learning to program are self-efficacy and mental models. Self-efficacy is the individual’s judgment of his or her ability to perform a task in a specific domain (Bandura 1986). A mental model is a person’s internal (mental) representation of real world objects and systems (Norman 1983). Separate research on self-efficacy and mental models has shown that both are important to knowledge acquisition and transfer. Using a path-analytic approach, this research investigates the joint effects of self-efficacy, mental model, and previous experience on learning to program in an introductory course. The results show that self-efficacy for programming is influenced by previous programming experience, and student self-efficacy increases substantially during an introductory programming course. Furthermore, students’ mental models of programming influence their self-efficacy, and both the mental model and self-efficacy have a direct effect on overall success in an introductory course.
PPIG 2004 - 16th Annual Workshop
Factors Affecting Course Outcomes in Introductory Programming