Impact of Bilingual CS Education on Student Learning and Engagement in a Data Structures Course

Adalbert Gerald Soosai Raj,Hanqi Zhang,Viren Abhyankar,Saswati Mukerjee,Eda Zhang,Jim Williams,Richard Halverson,Jignesh M. Patel
DOI: https://doi.org/10.1145/3364510.3364518
2019-01-01
Abstract:Learning data structures is hard when taught using a new programming language (e.g., C++), while the students had learned introductory programming in a different language (e.g., C). Learning data structures might even be harder for non-native English speakers, when it is taught in a natural language (e.g., English) that is not the students' native language. We were interested in finding the effect of an instructional design that combines the students' native language (e.g., Tamil) along with English on students' understanding of select topics in a data structures course using C++. We designed an experiment to teach a few data structures (e.g., strings, vectors, maps) in the Standard C++ Library to two groups of undergraduate students in Tamil Nadu, India. We taught the experimental group using English and Tamil (native language of students in Tamil Nadu) and the control group using only English. We conducted a pre-test and a post-test to test students' understanding of programming before and after our intervention. We also conducted an English test to assess their competence in English. We collected data on classroom interaction based on the questions that students asked in lectures during our intervention. We found that teaching data structures using native language and English is no different than teaching data structures using only English. We also found that the native language had an impact on the student engagement and classroom interaction by creating more discussion within the Tamil+English (experimental) classroom when compared to the English-only (control) classroom.
What problem does this paper attempt to address?