{{{ #!html
This article reported on one aspect of the first author’s doctoral research which investigated why learning to write computer programs is so hard. I conducted a qualitative research study using ethnographic techniques to gain insight into what it is like for a college student with no prior programming experience to learn how to program within the context of an introductory programming class. I followed 10 Pre-Computer Science or Pre-Engineering students into the various learning contexts associated with taking introductory programming: lecture, recitation sessions, the on-campus computer laboratory, the online newsgroup, and review sessions. In addition, these students participated in weekly semi-structured interviews to discuss their programming assignments. The part of the study discussed in this article was a comparison of the questions asked in and the resources provided by the in-class lecture versus on the online newsgroup.
What challenges do students encounter as they work on their programming assignments and what resources do they draw upon to complete these assignments? The data collected consisted of field notes from 75 hours of lecture observations, 1200 newsgroup posts, and transcripts of weekly interviews with 10 Pre-Computer Science or Pre-Engineering students. Using these various sources of data, I focused on the questions students asked and the answers they received. I performed 3 phases of analysis (one for each data source); each phase required the corpus of data to be examined multiple times to refine the categorization schemes. Questions were initially categorized as cognitive (relating to the student’s understanding), pedagogical (relating to the instructor’s actions), or social (relating to the classroom environment). These categories were then subdivided as more specific themes emerged.
Based upon my analysis, the newsgroup emerged as an invaluable, personal, just-in-time resource that many students used to help them complete their programming assignments. Although students learned terminology and the basic programming concepts during lecture, they rarely asked questions. When they did, the questions focused on the actions of the instructor. Students never asked questions about their programming assignments during lecture. In contrast, the online newsgroup focused on questions related to the programming assignments. Students accessed the newsgroup as they worked on their assignments outside of class time from their dorm rooms, homes, and the computer laboratories. Students posted their questions and waited for answers to their specific problems. Students received many types of help ranging from proper syntax to providing other resources to algorithmic help to emotional support. Students often received multiple responses that supplied different types of help. Based upon student posts and the interview data collected, students found the newsgroup provided help which allowed them to move forward with their programs. As one student stated, “I’ve been watching the newsgroup … It’s a pretty good resource.” This article provides numerous examples of the types of questions students asked and the various types of help they received.
Support: University of Washington’s Program on Educational Transformation through Technology.
Author 1: Lori Postner postnel@ncc.edu