TY - GEN
T1 - Pedagogical content for professors of introductory programming courses
AU - Bosse, Yorah
AU - Redmiles, David
AU - Gerosa, Marco A.
N1 - Publisher Copyright:
© 2019 Association for Computing Machinery.
PY - 2019/7/2
Y1 - 2019/7/2
N2 - Teaching introductory programming requires knowledge of both content and pedagogy. Pedagogy includes understanding the typical difficulties students face as they learn, as well as recognizing didactic strategies professors can use to help students to overcome these difficulties. Our research aims to improve the pedagogical knowledge instructors have to teach introductory programming courses, especially those new in this area. We conducted 16 semi-structured interviews with instructors who teach introductory programming courses and collected diaries filled by 110 students during their studies. Qualitative analysis of this data revealed a set of difficulties students faced when learning programming basics and a set of didactic strategies professors use to mitigate them. The results were reviewed by senior instructors in order to confirm them and by junior instructors to verify the importance of this material from their perspective. The main contribution of our paper is a set of difficulties faced by students learning programming, a classification of the most harmful challenges, and the didactic strategies usually used to teach and avoid them. Thus, we provide the basis for the pedagogical content necessary to junior and senior professors planning introductory programming courses.
AB - Teaching introductory programming requires knowledge of both content and pedagogy. Pedagogy includes understanding the typical difficulties students face as they learn, as well as recognizing didactic strategies professors can use to help students to overcome these difficulties. Our research aims to improve the pedagogical knowledge instructors have to teach introductory programming courses, especially those new in this area. We conducted 16 semi-structured interviews with instructors who teach introductory programming courses and collected diaries filled by 110 students during their studies. Qualitative analysis of this data revealed a set of difficulties students faced when learning programming basics and a set of didactic strategies professors use to mitigate them. The results were reviewed by senior instructors in order to confirm them and by junior instructors to verify the importance of this material from their perspective. The main contribution of our paper is a set of difficulties faced by students learning programming, a classification of the most harmful challenges, and the didactic strategies usually used to teach and avoid them. Thus, we provide the basis for the pedagogical content necessary to junior and senior professors planning introductory programming courses.
KW - Barriers to learning
KW - Computational thinking
KW - Introductory programming
KW - Learning to program
KW - Novice learners
KW - Pedagogical content
KW - Strategies
UR - http://www.scopus.com/inward/record.url?scp=85070879888&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85070879888&partnerID=8YFLogxK
U2 - 10.1145/3304221.3319776
DO - 10.1145/3304221.3319776
M3 - Conference contribution
AN - SCOPUS:85070879888
T3 - Annual Conference on Innovation and Technology in Computer Science Education, ITiCSE
SP - 429
EP - 435
BT - ITiCSE 2019 - Proceedings of the 2019 ACM Conference on Innovation and Technology in Computer Science Education
PB - Association for Computing Machinery
T2 - 2019 ACM Conference on Innovation and Technology in Computer Science Education, ITiCSE 2019
Y2 - 15 July 2019 through 17 July 2019
ER -