Teaching Parallel Programming with Active Learning

Today parallel computing is essential for the success of many real-world applications and software systems. Nonetheless, most computer science undergraduate courses teach students how to think and program sequentially. Further, software professionals have complained about the computer science curric...

Full description

Saved in:
Bibliographic Details
Published in:2018 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW) pp. 369 - 376
Main Authors: Kuhail, Mohammad Amin, Cook, Spencer, Neustrom, Joshua W., Rao, Praveen
Format: Conference Proceeding
Language:English
Published: IEEE 01.05.2018
Subjects:
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:Today parallel computing is essential for the success of many real-world applications and software systems. Nonetheless, most computer science undergraduate courses teach students how to think and program sequentially. Further, software professionals have complained about the computer science curriculum's lag behind industry in their failing to cover modern programming technologies such as parallel programming. The emphasis on parallel programming has become even more important due to the increasing adoption of horizontal scaling approaches to cope with massive datasets. In order to help students coming from a serial curriculum comprehend parallel concepts, we used an innovative approach that utilized active learning, visualizations, examples, discussions, and practical exercises. Further, we conducted an experiment to examine the effect of active learning on students' understanding of parallel programming. Results indicate that the students that were actively engaged with the material performed better in terms of understanding parallel programming concepts than other students.
DOI:10.1109/IPDPSW.2018.00069