Understanding Non-CS Students' Motivations and Decision Making In A General Education Computing Course
Undergraduate students are taking computer science (CS) courses, even if they are not planning to become computer science majors. However, recommendations for post-secondary computing curriculum presume that students are learning computer science for a career goal such as software engineering. Prior work about non-majors in introductory programming courses have revealed additional reasons why students learn programming: such as to become conversational programmers or computational scientists. These purposes are not well served by programming education built around the creation of software professionals, which can lead to students with non-technological career goals feeling unwelcome or uninterested in CS courses. At my institution, we have created new computing courses designed to meet the needs of liberal arts and humanities majors by teaching discipline-specific programming skills within an elective course. I conducted an interview study of 24 undergraduate students who enrolled in these elective, general education (not CS credit bearing) courses about computing and programming. I seek to understand why students emph{not} required to study computer science are motivated to learn about computing and programming, and why they chose to learn about computing through a general education elective which could not aid CS or technical degree progress. I additionally investigate how students in this context approach programming and debugging within their open-ended assignments. My findings build upon prior work to highlight additional reasons why non-CS majors might want to study computing, and how students’ computing-related goals affect their decision making when creating and refining programs.