An application-based learning approach to C programming concepts and methods for engineers Conference

Lawson, W, Secules, SD, Bhattacharyya, S et al. (2016). An application-based learning approach to C programming concepts and methods for engineers . 2016-June

cited authors

  • Lawson, W; Secules, SD; Bhattacharyya, S; Gupta, A


  • This paper documents an innovative approach to teaching a 3-credit introductory C programming course to freshman electrical engineering students that has been funded by an NSF DUE grant. The innovation stems from the use of electrical engineering applications and projects to motivate students to master language syntax and implement key programming concepts and best practices. Weekly three-hour laboratory sessions center around writing C code on a Raspberry Pi computer to interact with a variety of sensors, actuators, and electronic components and achieve laboratory goals. The laboratory experience culminates with a multi-week group project designed to challenge the students' new knowledge and skills. The new course has been taught three times from Spring 2014 through Fall 2015 with a total enrollment of about 60 students. The new course has been run in parallel with a traditional 2-credit introductory C class that typically had about twice as many students. Program evaluation was conducted by a research team which operated separately from but advised the team of instructors about course improvements. Mixed research methods included student surveys, classroom observation, and student interviews. Surveys comparing between students in the alternative and the traditional courses were conducted at the beginning and end of each semester, and in the subsequent semester after students took the class. Results show that students found the alternative class more collaborative, less competitive, and having a greater sense of community than the traditional class.

publication date

  • June 26, 2016


  • 2016-June