This paper compares an innovative approach to teaching a required introductory C programming course to a traditional C programming course for electrical engineering (EE) students. The novel course utilizes hardware-based projects to motivate students to master language syntax and implement key programming concepts and best practices. In a mixed methods research evaluation, we compare the attitudes and self-perceptions of the students in each of the introductory courses, as well as success rates for each cohort in their subsequent intermediate programming class and progress toward their degrees. Performance and retention outcomes were similar for the two courses. After students took the novel course, they were more likely to feel that they fit in as electrical engineers and less likely to believe that programming was “not real engineering.” Qualitative data and pedagogical descriptions of the two courses help connect these quantitative findings to key features of the courses.