Abstract
The writing of programs is one of the central activities in computer science education, yet frequently it is poorly taught. In this paper we argue that some of the most recent principles emerging from research into and the successful teaching of second natural languages might be applied to the teaching of programming languages.The paper begins by reviewing the historical development of the teaching of both second natural languages and programming languages. It continues with a manifesto for potential research areas, in order to test these ideas further.
- Bloomfield, L. (1942) "Outline guide for the practical study of foreign languages" Special publication of the Linguistics Society of America, Baltimore.Google Scholar
- Canale, M. & Swain, M. (1980) "Theoretical bases of communicative approaches to second language teaching and testing" Applied Linguistics, 1, 1- 47.Google Scholar
Cross Ref
- Carroll, J. M. (1982) "Creative names for personal files in an interactive computing environment" Int. J. Man-Machine Studies, 16, 405-438.Google Scholar
Cross Ref
- Celce-Murcia, M. (1985) (ed.) "Beyond basics - issues and research" TESOL, Newbury House.Google Scholar
- Chomsky, N. (1980) "Rules and Representations" The Behavioral & Brain Sciences, 3.Google Scholar
- Crosby, M. E. & Stelovsky, J. (1990) "How do we read algorithms? A case study" IEEE Computer, 23, 1, 24-35. Google Scholar
Digital Library
- Deimel, L. E. & Moffat, D. V. (1982) "More on natural language and programming skills" Communications of the A.C.M., 25, 7, 501.Google Scholar
- Ellis, T. (1992) "English language tuition in teaching programming" Unpublished BSc dissertation, Royal Military College of Science.Google Scholar
- Hymes, D. (1972) "On Communicative Competence" in "Sociolinguistics, Selected Readings", Pride & Holmes (eds.)Google Scholar
- Krashen, S et al (1977) "Age, rate and eventual attainment in second language acquisition" TESOL Quarterly, 13, 4, 573-582.Google Scholar
Cross Ref
- Ledgard, H., Whiteside, J. A., Singer, A. & Seymour, W. (1980) "The natural language of interactive systems" Communications of the A.C.M., 23, 10, 556-563. Google Scholar
Digital Library
- Lee, M. P., Peacock, D. & Jeffreys, S. (1989) "dBASE as a first programming language" Collegiate Microcomputer, VII, 2, 111-116. Google Scholar
Digital Library
- Lee, M. P., Harrison, A. & Kent, A. E. (1991) "Group projects for the software engineering of knowledge based systems" pp. 95-107 IN King, G. A. (ed.) "Software engineering in higher education" Southampton Institute, 1-874011-00-1.Google Scholar
- Lee, M. P., Pryce, J.D. & Harrison, A. (1994) "Prolog as a first programming language" pp. 275-281 IN King, G. A. et alia (eds.) "Software engineering in higher education" Computational Mechnics Publications, 1-85312-289-0.Google Scholar
- Peacock, D., Ralhan, V. K., Jeffreys, S. & Lee, M. P. (1988) "The use of a structured project to teach program development" ACM SIGCSE Bulletin, 19, 4, 10-18. Google Scholar
Digital Library
- Peacock, D., Ralhan, V. K. & Lee, M. P. (1988) "A first year course in software design and use" ACM SIGCSE Bulletin, 20, 4, 2-8. Google Scholar
Digital Library
- Schank, P. K., Linn, M. C. & Clancy, M. J. (1993) "Supporting Pascal programming with an on-line template library and case studies" Int. J. Man-Machine Studies, 38, 1031-1048. Google Scholar
Digital Library
- Shaw, Guise & Reddy (1989) "What a software engineer needs to know: program vocabulary" Software Engineering Institute Technical Report 30, Carnegie-Mellon University, Pittsburgh.Google Scholar
Cross Ref
- Stern, H. H., (1986) "Fundamental Concepts of Language Teaching" OUP.Google Scholar
- Thomas, E. J. & Oman, P. W. (1990) "A bibliography of programming style" ACM SIGPLAN Notices, 25, 2, 7-16. Google Scholar
Digital Library
Index Terms
The application of second natural language acquisition pedagogy to the teaching of programming languages—a research agenda
Recommendations
Teaching how to teach computational thinking
ITiCSE 2018: Proceedings of the 23rd Annual ACM Conference on Innovation and Technology in Computer Science EducationComputational Thinking is argued to be an essential skill for the workforce of the 21st century. As a skill, Computational Thinking should be taught in all schools, employing computational ideas integrated into other disciplines. Up until now, questions ...
The New Mexico Tech Master of Science teaching program: an exemplary model of inquiry-based learning
FIE '01: Proceedings of the Frontiers in Education Conference, 2001. on 31st Annual - Volume 01The Master of Science Teaching Program offered by New Mexico Tech provides high quality science, mathematics, engineering, and technology (SMET) content-based, hands-on, experiential learning for practicing K-12 educators and is taught by graduate ...
A review of an engineering teaching apprenticeship program
FIE '11: Proceedings of the 2011 Frontiers in Education ConferenceA teaching apprentice program was implemented for senior-level engineering graduate students at the University of Notre Dame during the spring of 2009. The goal of the program was to offer a mentored teaching experience to graduate students that would ...






Comments