Comprehending Code

Comprehending Code explores relationships between reading comprehension skills and elementary coding skills and develops meta-cognitive strategies struggling learners can use to improve their coding skills. This project is an interdisciplinary collaboration drawing upon Prof. Thomas’ expertise in reading comprehension strategies for students with disabilities and Prof. Franklin’s expertise in how upper-elementary students learn computing concepts.

Comprehending Code focuses solely on one aspect of Computational Thinking: coding. As elementary schools begin integrating computer science curriculum into their school days, it is increasingly important to find strategies for teaching a diverse set of students, including students with disabilities, English language learners, and students with a variety of ethnic, gender, and socioeconomic backgrounds. We draw on decades of research on reading comprehension to drive our exploration into computer science learning strategies. Programming relies heavily on reading comprehension at several stages in the development process - reading individual instructions (at all points), a sequence of instructions provided as an example or starting code (design), one’s own partially-complete code (implementation), or one’s complete but incorrect code (debugging). Just as in reading, it is not enough to decode the letters into words – to succeed, the student needs to make meaning of the sequences of words into instructions (like sentences) and the sequences of instructions into functions or programs (like paragraphs).