Teaching English Based Programming Courses to English

advertisement
DOI: 10.7763/IPEDR. 2014. V70. 4
Teaching English Based Programming Courses to English Language
Learners/Non-Native Speakers of English
Ashok Kumar Veerasamy 1 and Anna Shillabeer 2
1, 2
RMIT University, Vietnam
Abstract. Computer programming languages are designed to communicate instructions to machines. Most
programming languages are designed based on the English language, and use sequences of text including
words, numbers, and punctuation. Students who are non-native speakers of English are taught programming
courses through English as the medium of instruction. This leads to the possible problem that students' lack
of language skills could prohibit learning in computer languages. The aim of this study is to identify the
effect of students’ English comprehension on acquisition of programming ability. An overview of current
research in this area is discussed and testing methodology created to measure student’s English knowledge on
computer programming keywords and secondly to test effect of their programming skills.
Keywords: English as Second Language, English based Programming Languages, Facile Programming.
1. Introduction
This paper analyses the programming ability of students who are non-native speakers of English learning
computer programming courses in English at tertiary level. A computer programming language is used to
create sets of commands that instruct computers to perform specified tasks. Each programming language has
its own set of vocabulary (keywords) and grammatical rules (syntax) that initiate a computer to perform
several tasks. There are many programming languages in use today and they are classified by their intended
domain use. The programming languages such as, C#, C++, and Java have strong features such as strong
type systems and are used by application developers to develop different application software. The software
being used by governments, companies, educational institutions, and people have been designed by using
programming languages. For example, Java is widely used by programmers to design interactive web pages,
game software for mobile phones, and e-commerce applications. MySQL is a Structured Query Language
used to “describe and manipulate relational databases” (Widom & Jennifer, 2008). The popular websites
such as Facebook, BBC news use MySQL based database for their data management.
Most of the programming courses that are offered by educational institutions are developed based on
industry demand and those are English like programming languages or the programming languages that have
English like keywords. For example, Java or C++, which are English based programming languages are
taught in introductory programming courses in many universities (Krpan & Bilobrk, 2011). Globalization
and internalization of curriculum has influenced the instructional language of the educational institutions.
Many educational institutions in Europe, Asia and Africa adopted the English language as the medium of
instruction at higher education level (Airey, 2011).
The English language has become the “Language of Instruction for Mathematics and Science” and many
developing countries changed their educational system policy to teach mathematics and science courses in
English. For example, Malaysian educational system changed the medium of instruction to English to teach
mathematics and science courses in its schools from the year 2003 (Tan & Lan, 2011). Similarly, the Higher
Education Commission in Pakistan reformed their 18 government colleges’ medium of instruction as English.
The ministry of Education and Training, Vietnam also encouraged their pivotal tertiary institutions to teach
mathematics and science courses in English (Van, 2009).
It is identified that learning to program is difficult one and the students who are non-native speakers of
English have difficulties in understanding and remembering the keywords of a programming language. In
this context, it is important to examine students’ English language skills in understanding English based

Corresponding author. Tel.: +84-8-3776 1300; fax: +84-8-3776 1399.
E-mail address: ashok.veerasamy@rmit.edu.vn.
17
programming language’s keywords are relating to their acquiring programming skills. Hence, this study
surveys whether students’ English language proficiency in an academic, specialized context upturn their
programming ability or not. Consequently, the following research questions have been designed.
 Is there a relationship between students’ English comprehension when programming and their
programming abilities?
 Is language a barrier for a non-native speaker who learns programming languages in English?
2. Literature Review
2.1. English based programming languages
Programming languages popularity is measured based on the number of job advertisements related to
that language, books published that teach or describe the language, count of language references, languages
that are used to design custom applications for business, and languages that are used to design web
applications [6]. The top 10 programming languages such as C, C++, Objective -C, Java, JavaScript, PHP,
Perl, Visual Basic, Python, and Ruby were developed in English speaking countries except for Python being
developed in The Netherlands and Ruby in Japan (siliconindia, 2012). Another popular programming
language called Structured Query Language (SQL) was initially called “SEQUEL -Structured English Query
Language (King, 2011) and keywords of SQL are in English (siliconindia, 2012). These programming
languages however are also English based languages since their keywords are in English.
There are programming languages that are like natural languages other than English. For example,
Lukaszewicz developed a Polish programming language called SAKO (Lukaszewicz L., 1961). Youssef
Bassil developed a general purpose C-like Arabic programming language called Phoneix (PhoneixLanguage,
2007). SKT Software Company, located in India, developed a programming language in Hindi called HPL
targeting the huge base of over 100 million Hindi speaking people (Technologies, 2007). But to the best of
the author’s knowledge such attempts to develop non-English based programming languages have not
become popular and not been taught at universities as a key course.
2.2. English as instructional language
The language used as a medium of instruction in teaching is termed an instructional language. Selection
of an instructional language has been always important as it is a tool for the student to acquire knowledge
and improve their cognitive abilities (Ahemed, 2011), (Kumar, 2011). The instructional language of the
classroom must be well known for students that support them to apply “psycholinguistic guessing strategies”
(Cummins, 1984) and the students who can deduce the functional meaning of a word or sentence in an
academic, specialized context will increase their motivation for learning, and communicating skills (Johnson,
2010).
The English language has become the “global lingua Franca” and/or an international language of
communications, science, information technology, and business (Kirkpatrick, 2011). Many fields,
occupations, and professions such as medicine and computing require people who have a working
knowledge of English. In many countries, English language is adopted as the instructional language
especially in Higher Education (Tan & Lan, 2011), (Kirkpatrick, 2011), (Meganathan, 2011) and (Airey,
2011). For example, in Turkey, 26 universities adopted English as a medium of instruction however English
is not an official language or second language (Kilickaya, 2006). In Europe, around 2400 courses are offered
in English, with the great majority of those being taught in Northern Europe, Germany and the Netherlands
(Kirkpatrick, 2011). Hindi and English are official languages of India where the medium of instruction in
colleges and universities is English but few schools use other languages as medium of instruction
(Meganathan, 2011).
There are articles that attempted to explain instructional language issues. Fischer & Perez said that
students may struggle to learn the content in their second language if their academic knowledge is not
sufficiently strong in their first language (Fischer & Perez, 2008). The students whose native languages are
not English are referred to as English language learners. The student who has limited ‘English proficiency’
may struggle or cannot fully participate in conventional English instruction, and while memorizing
18
important keywords of a course may help students to do well in exams, it will prohibit the student from
linking multiple steps within a process into a coherent a whole (Tan & Lan, 2011). Many teachers struggled
to deliver their course contents to English language learners in a better way (Matthiasdottir, 2006), (Batt,
2008) and they are always looking for new methods to make it easier for them (Krpan & Bilobrk, 2011).
There have been limited research studies done on students who learn mathematics and science courses in
English. Lesser and Winsor reported that, students who have limited English knowledge will struggle to
understand the concepts and may not be able to complete the exercises (Lesser & Winsor, 2009). Tan
investigation was, simplifying both language and content for students to help them to understand
mathematics or science lessons will decrease their ability to function in the particular domain (Tan & Lan,
2011).
Programming courses have become the core of computer science curricula at educational institutions.
Programming courses are also offered to students who are from different disciplines (Elazhary, May 2012).
There has been much research done on teaching programming courses in interesting ways. Yaguan’s
research listed a few teaching techniques such as case driven teaching, observing the coding criterion, and
technique to learn, identifying and implementing teaching methods, and ability training related to industry
demand and to teach Java more interestingly and effectively (Yaguan, 2010). However, Programming
courses are generally regarded as difficult for students the often experience problems in understanding the
concepts and algorithms (Krpan & Bilobrk, 2011).
According to Elazhary, Facile programming means designing new versions of programming languages
that are similar to natural languages for students who are non-native speakers of English that have difficulties
in understanding, and remembering the keywords, and syntax of English based programming languages.
Elazhary justified that, Facile programming helps novice programmers to learn coding techniques easily as
they had to write code by using their native language character set (Elazhary, May 2012). However,
according to the author’s observation Facile programming approach makes student native language
dependent and the scope of those languages is very limited to the tertiary or country where similar natural
languages are in use.
There are different types of coding errors that student commits when he/she is not able to understand the
coding technique of the particular programming language. Research suggests that, judgment errors occur
when a student cannot understand the compiler error messages and knowledge errors occur when student
fails to understand the syntax of the language, and is not able to use keywords or commands, and rules
(P.Bringula, A.Manabat, A.Tolentino, & L.Torres, 2012). However, there is relatively little research done on
students who commit syntax or using improper keywords and judgment errors due to their lack of English
proficiency. Although English language learners problems are frequently investigated, relatively little
research done on how they learn programming languages in English or other languages.
3. Method
The objective of proposing this method is to find whether students’ English knowledge of programming
keywords and their programming abilities are related with each other. So, it is intended to apply quantitative
methods for data collection and data analysis. The quantitative data will be obtained from two tests; an
English language test and a programming language test.
 English language test (testing computer language keywords)
This test is to check the student’s ability in identifying the meaning of programming language
keywords in social context. It is expected that, students would use the correct keyword as an answer,
which they have learned in the programming languages Java and SQL.
 Computer Language Test
This test is to check the student’s ability in understanding the functional meaning of the keywords in
the computer programming context. Table 2 and describes the keywords of Java and table 3 defines
the keywords of SQL with their functional and English meaning. These keywords will be used in the
tests.
19
The tests will be conducted to students from the university, where the English is the medium of
instruction and the students from the university where the instructional language is other than English in the
end of the semester. Respondents will be asked to enter the details about them to make sure that, they have
“Basic English proficiency” and have studied Java and SQL courses.
4. Conceptual framework
Based on the review of literature on English programming languages and instructional language barrier
literatures, the following conceptual framework has been created
Fig. 1: Conceptual model for a testing system
Fig. 1 depicts the unit of analysis and types of tests that will be conducted for students who are nonnative speakers of English. Table 1contains a summary of construct definitions.
Table 1: Construct Definitions
Construct
Selection
criteria
Definition
(i) *Student A – learning programming courses at higher education where the
instructional language is other than English.
(ii) *Student B – learning programming courses at higher education where the instructional
language is English.
*Both types of students are non-native speakers of English
Independent
variables
Previous Education in English - students who have done their secondary education where the
medium of instruction is English.
Bilingual family - Students, who have the ability to speak, write in English that acquired from
their parents who are from different nationalities.
Number of years speaking in English - Students who have learned English due to education
policies / social norms/ self-interest.
Spent few years in English speaking countries - Students, who have spent a few years in
English speaking countries and acquired English language proficiency.
Control
variables
(i) English language comprehension test in using programming keywords those are from
English.
(ii) Java and SQL programming language test
20
5. Conclusion
This paper developed a methodology to identify the effect of students’ English comprehension on
acquisition of programming ability. The paper explained about the English based programming languages,
English language teaching issues, and programming courses that are offered at higher education. The
proposed methodology and construct definitions are expected to support a conclusion like students’ English
proficiency on programming keywords would affect their programming skills or students do better
programming if they understand the functional meaning of programming keywords in English. However, this
study is not focusing on the student’s ability on complex problem solving, thinking on several levels, and top
down thinking skills but basic logical skills and attention to detail.
6. References
[1] PhoneixLanguage. (2007). Retrieved 08 13, 2012, from Phoneix: http://phoenixlanguage.8k.com/
[2] Ahemed, S. I. (2011). Issue of medium of instruction in Pakistan. International jounral of Social Sciences and
Education, 1(1), 66-82.
[3] Airey, J. (2011). Talking about teaching in English: Swedish university lecturers’ experiences of changing
teaching language. European Association of languages for specific Purposes, 22, 35.
[4] Batt, E. G. (2008). Teachers' Perception of ELL Education: Potential solutions to overcome the greatest challenges.
Multicultural Education, 39-43.
[5] Cummins, J. (1984). Language Proficiency, Bilingulaism, and Academic Achievement. Bilingualism and Special
Education: Issues in Assessment and Pedagogy, 136-154.
[6] Elazhary, H. (May 2012). Facile Programming. The International Arab Journal of Information Technology, 9(3).
[7] Fischer, J., & Perez, R. (2008). Understanding English through Mathematics - A research based ELL approach to
teaching to all students. Research monogroup of TODOS, 43-58.
[8] Johnson, A. (2010). Teaching mathematics to culturally and linguistically diverse learners. Pearson.
[9] Kilickaya, F. (2006, November). Instructors; Attitudes towards English Medium Instruction in Turkey. Humanism
Language and Teaching, 8.
[10] King, R. S. (2011, October). the-top-10-programming-languages. Retrieved September 02, 2012, from IEEE
Spectrum: http://spectrum.ieee.org
[11] Kirkpatrick, A. (2011, January). Internationlization or Englishization: Medium of Instruction in Today's
Universities. CGC working paper series.
[12] Krpan, D., & Bilobrk, I. (2011). Introductory Programming Languages in Higher Education. MIPRO 2011. Opatija:
IEE.
[13] Kumar, S. (2011, November). Effect Of Change in medium of instruction and language background on the
academic achievement of the school students. Indian Streams Research Journal, 1(10).
[14] Lesser, L. M., & Winsor, M. S. (2009). English language learners in introductory statistics: Lessons learned from
an exploaratory case study of two pre-service teachers. Statistics Education Research Journal, 8(2), 5-32.
[15] Lukaszewicz L. (1961). SAKO - An Automatic Coding System. Jounral of Annual Review in Automatic
Programming, 2(8), 161-176.
[16] Matthiasdottir, A. (2006). How to teach Programming languages to novice students? Lecturing or not?
International Conference on Computer Systems and Technologies.
[17] Meganathan, R. (2011). Language policy in education and the role of English in India. In R. Meganathan,
Language policy in education and the role of English in India. The British Council.
[18] P.Bringula, R., A.Manabat, G. M., A.Tolentino, M. A., & L.Torres, E. (2012, February). Predictors of Errors of
Novice Java Programmers. World Journal of Education, 2(1).
[19] siliconindia. (2012, February 20). 10 most popular programming languages. Retrieved September 03, 2012, from
siliconindia: http://www.siliconindia.com/shownews/10_Most_Popular_Programming_Languages-nid-106520cid-2.html
21
[20] Tan, M., & Lan, O. S. (2011). Teaching mathematics and science in English in Malaysian classrooms: The impact
of teacher beliefs on classroom practices and student learning. Journal of English for Academic Purposes, 5-18.
[21] Technologies, S. n. (2007, August 29). Hindi Programming Language. Retrieved 08 12, 2012, from SKT network
Technologies: www.sktnetwork.com/portfolio/hindi-programming-language
[22] Van, H. V. (2009). The Current Situation and Issues of the Teaching of English in Vietnam. International
Symposium on the Teaching of English in Asia (2), (pp. 7-18).
[23] Widom, J. D., & Jennifer. (2008). A first cours in Database Systems. In J. D. Widom, A first cours in Database
Systems (pp. 29-30). Pearson International Edition.
[24] Yaguan, G. X. (2010). The exploration of Teaching about Java Programming. 2010 International Conference on
E-Business and E-Government. IEEE Computer Society.
22
Download