Department of Computer Science
A concurrent computing course is filled with challenges for upper-level programming students. Understanding concurrency provides deeper insight into many modern computing and programming language behaviors, but the subject matter can be difficult even for relatively proficient students. It can be a challenge to help students navigate and understand these unfamiliar topics. While there is a difference in general programming familiarity, teaching this novel material is not unlike some challenges faced when engaging introductory students with first programming concepts. In this work, we explore the use of analogy by students while learning a novel programming methodology. We investigate perceptions of the utility of analogy and creation of analogies in the concurrent course. We also examine perceptions of analogy value across students' computing education and factors which impacted their use or disuse of provided or student-generated analogies. This exploration suggests that pedagogical analogy design can be memorable and significant for student understanding. It further suggests that analogies inherent in concept naming and foundational examples may have even greater salience. While not all students create analogies, those that do share both unique examples and additions to existing examples that helped them understand core concepts. Students had mixed responses on whether analogy as a tool was used in their lower-level courses. Despite this, most found analogies to be useful, with a majority finding them even more useful in upper-level programming courses.
Annual Conference on Innovation and Technology in Computer Science Education, ITiCSE
Bettin, B. C.,
More (Sema|Meta)phors: Additional Perspectives on Analogy Use from Concurrent Programming Students.
Annual Conference on Innovation and Technology in Computer Science Education, ITiCSE,
Retrieved from: https://digitalcommons.mtu.edu/michigantech-p2/43
Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 International License.