Understanding the Transfer of Knowledge in Introductory Programming Classes

Computing has become an essential field of study, with programming as its core component. However, pedagogical aspects of teaching programming remain under-explored and poorly understood. The selection of a student's first programming language has sparked considerable debate within the community, often referred to as a “culture war”, and presents curricular challenges that extend to subsequent language choices. This research full paper investigates the transitions between different programming languages and measures students' learning experiences as they progress through a single language. We utilize Mindshift Learning Theory (MLT) to examine the transfer of knowledge across programming languages as students go through courses in a pre-requisite chain in our curriculum. Our study focuses on three aspects: novelty (encountering new, unique concepts), change (differently applying previously exposed topics), and carryover (directly transferring concepts to new contexts). Our methodology includes an online survey of current and past students transitioning through these courses. We aim to understand how perceived transitions impact mastery and confidence in programming languages. We designed the survey questions, identified target classes, and implemented incentive mechanisms to ensure a statistically significant response rate. Our results are partially aligned with earlier findings in the literature, which correlated carryover, changed, and novel concepts with knowledge scores of object oriented (OO) developers, despite a totally different demographic. Namely, our student participants transitioning to C/C++ (procedural programming) and OO C++ mostly have high, moderate, and low knowledge scores on the programming concepts they perceive as carryover, novel, and changed respectively. On the other hand, those transitioning to OO Java have higher scores for the changed concepts.

Authors

Institutions

Publication Details

Published
2024-10-13
DOI
https://doi.org/10.1109/fie61694.2024.10893318
Primary Topic
Teaching and Learning Programming
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Understanding the Transfer of Knowledge in Introductory Programming Classes

Michael E. Knox, Murali Mani, Suleyman Uludag, Halil Bişğin et al.
Teaching and Learning Programming
article

Understanding the Transfer of Knowledge in Introductory Programming Classes

Michael E. Knox, Murali Mani, Suleyman Uludag, Halil Bişğin, Charlotte Tang
article en

Abstract

Computing has become an essential field of study, with programming as its core component. However, pedagogical aspects of teaching programming remain under-explored and poorly understood. The selection of a student's first programming language has sparked considerable debate within the community, often referred to as a “culture war”, and presents curricular challenges that extend to subsequent language choices. This research full paper investigates the transitions between different programming languages and measures students' learning experiences as they progress through a single language. We utilize Mindshift Learning Theory (MLT) to examine the transfer of knowledge across programming languages as students go through courses in a pre-requisite chain in our curriculum. Our study focuses on three aspects: novelty (encountering new, unique concepts), change (differently applying previously exposed topics), and carryover (directly transferring concepts to new contexts). Our methodology includes an online survey of current and past students transitioning through these courses. We aim to understand how perceived transitions impact mastery and confidence in programming languages. We designed the survey questions, identified target classes, and implemented incentive mechanisms to ensure a statistically significant response rate. Our results are partially aligned with earlier findings in the literature, which correlated carryover, changed, and novel concepts with knowledge scores of object oriented (OO) developers, despite a totally different demographic. Namely, our student participants transitioning to C/C++ (procedural programming) and OO C++ mostly have high, moderate, and low knowledge scores on the programming concepts they perceive as carryover, novel, and changed respectively. On the other hand, those transitioning to OO Java have higher scores for the changed concepts.

University of Michigan–Flint (US)
Quality Education
Openalex Percentile: Top 70%
Teaching and Learning Programming
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.