The discussion about integrating computing into curricula of non-computer science engineering majors remains open. Such integration is desirable, as computing is an essential tool for engineering practice. In addition, computing can enhance engineering education through simulation and visualization, facilitating deeper understanding and learning. Integration of computing using high-level programming languages into courses presents challenges including achieving alignment with traditional disciplinary learning objectives, the potential need to shift from a traditional constructivist approach to a more student-driven model, and the necessity for faculty transition into using new tools and pedagogies which requires career-long training. This paper originates from a department-wide effort to integrate computing throughout the curriculum. The success of such an effort depends primarily on coordinated faculty involvement and student engagement. Focusing on the latter, in this paper, we report on our approach for integrating coding for data analysis and problem solving, and on surveyed student attitudes toward the integration of Python or R in undergraduate civil and environmental engineering courses. We report data from one required first-year course (serving as a reference point), one required second-year course and two required third-year courses within a four-year civil and environmental engineering undergraduate program. These courses are representative of the efforts to scaffold the integration of computing throughout the curriculum.
In the beginning of the effort to integrate Python and R coding into courses, student resistance and lack of engagement seemed to be major obstacles based on the signals we received from the student body. Therefore, we began with straightforward, guided coding assignments in the early weeks of a semester, gradually integrating coding into redesigned assignments on the core material of the courses. Our goal was to integrate coding without altering a course’s learning objectives. At the same time, we surveyed student attitudes, as we implemented these changes in each participating course twice, once in the beginning and once at the end of a semester. In the beginning-of-semester surveys, many students identify coding as a major challenge. In the end-of-semester self-assessment responses, overall and over time, we see an increasing level of acceptance of computing as part of the civil and environmental engineering learning culture and experience. The responses indicate a moderately increasing trend for student willingness to independently choose Python or R for future courses and projects. The survey responses suggest that as computing becomes normalized, negative feelings among students become less of an impediment. Comparisons of grades among classes in semesters before and after the computing integration do not generally show statistically significant differences. Given the lack of relevant data available, both in our department and in the literature, these survey responses provide valuable insights into civil engineering students' attitudes toward coding for data analysis and problem-solving, which could assist others considering similar curricular changes.
The full paper will be available to logged in and registered conference attendees once the conference starts on June 22, 2025, and to all visitors after the conference ends on June 25, 2025