Integrating Hands-On Data Collection Experience in an Introductory Programming Class for Non-CS Majors
Abstract
In response to the growing demand for data analysis and computational thinking skills across academic disciplines, universities are increasingly integrating programming courses into the curricula for non-computer science (non-CS) majors. A key challenge for instructors is designing instructional materials that help these students connect programming concepts to authentic disciplinary contexts and build confidence in applying programming skills to real-world tasks. This paper reports our experience designing a data analysis lab within an introductory programming course, in which hands-on data collection is integrated into the entire analytical workflow. Instead of working with predefined datasets, students use a Raspberry Pi and a thermocouple sensor to collect their own data before performing tasks in data extraction, processing, and visualization using Python. Twenty device kits were deployed for student teams in the experimental semester (Spring 2024, n = 76). Post-lab surveys were used to assess students' self-efficacy in performing data-related programming tasks, including data collection, extraction, processing, and visualization. Our findings provide insights into students' perceptions and experiences with hands-on data collection, offering implications for how authentic, end-to-end programming activities can be integrated into introductory courses for non-CS majors.
Fields of Study & Subjects
Teaching and Learning Programming
Statistics Education and Methodologies
Computational Physics and Python Applications
Publication details
- Journal / source
- ACM Technical Symposium on Computer Science Education (SIGCSE)
- Pages
- 526–532
- Publication date
- 13 February 2026
- Language
- EN