Abstract
This examines the history of computer language choice for both industry use and university programming courses. The study considers events in two developed countries and reveals themes that may be common in the language selection history of other developed nations. History shows a set of recurring problems for those involved in choosing languages. This study shows that those involved in the selection process can be informed by history when making those decisions.
Chapter PDF
Similar content being viewed by others
Keywords
References
Ad Hoc AP CS Committee. Round 2: Potential Principles governing language selection for CS1-CS2 (2000), http://www.cs.grinnell.edu/~walker/sigcse-ap/99-00-principles.html
Allison, I., Ortin, P., Powell, H.: A virtual learning environment forintroductory programming. In: Proceedings of the 3rd Annual Conference of the Learningand Teaching Support Network Centre for Information and Computer Sciences, Loughborough, UK (2002)
Bergin, T.J., Gibson, R.G.: History of Programming Languages-II. ACM Press, USA (1986)
Boom, H.J., de Jong, E.: A critical comparison of several programming language implementations. Software: Practice and Experience 10, 435–473 (1980)
de Raadt, M., Watson, R., Toleman, M.: Introductory programminglanguages at Australian universities at the beginning of the twenty first century. Journal of Research and Practice in Information Technology 35(3), 163–167 (2003a)
de Raadt, M., Watson, R., Toleman, M.: Language tug-Of-war: Industry demand andacademic choice. In: Australasian Computing Education Conference (ACE 2003). Australian Computer Society, Inc., Adelaide (2003b)
Dijkstra, E.W.: The humble programmer. Communications of the ACM 15(10), 859–866 (1972)
Emigh, K.L.: The impact of new programming languages on university curriculum. In: Proceedings of ISECON 2001, Cincinnati, Ohio, vol. 18, pp. 1146–1151 (2001), http://isedj.org/isecon/2001/16c/ISECON.2001.Emigh.pdf (retrieved July 10, 2005)
Friedman, F.L., Koffman, E.B.: Some pedagogic considerations in teaching elementary programming using structured FORTRAN. In: Proceedings of the ACM SIGCSE-SIGCUE Technical Symposium on Computer Science and Education, pp. 1–10 (1976)
Furugori, T., Jalics, P.: First course in computer science, a small survey. ACM SIGCSE Bulletin 9(1), 119–122 (1977)
Gee, Q.H., Wills, G., Cooke, E.: A first programming language for ITstudents. In: Proceedings of the 6th Annual Conference of the Learning and Teaching Support Network Centre for Information and Computer Sciences, York, UK (2005)
Gottliebsen, C.: Computer market results 1999. C. Gottliebsen. Bayswater, GIMA (1999)
Gottliebsen, C.: Icon index trend report 2001. Icon index Trend Report. B.Youston. Bayswater (2001)
Howatt, J.W.: A project-based approach to programming language evaluation. ACM SIGPLAN Notices 30(7), 37–40 (1995), http://academic.luther.edu/~howaja01/v/lang.pdf
Howland, J.E.: It’s all in the language: yet another look at the choice ofprogramming language for teaching computer science. Journal of Computing in Small Colleges 12(4), 58–74 (1997), http://www.cs.trinity.edu/~jhowland/ccsc97/ccsc97/
Jenkins, T.: The motivation of students of programming. In: ACM SIGCSEBulletin, Proceedings of the 6th Annual Conference on Irmovation and Technology In Computer Science Education, ITiCSE 2001, vol. 33(3) (2001)
Jenkins, T.: On the difficulty of learning to program. In: Proceedings of the 3rd Annual Conference of the Learning and Teaching Support Network Centre for Information and Computing Science, Loughborough, UK (2002)
Johnson, L.F.: C in the first course considered harmful. Communications of the ACM 38(5), 99–101 (1995)
Keet, E.E.: A personal recollection of software’s early days (1960-1979): Part1. In: IEEE Annals of the History of Computing (October-December) (2004)
Kelleher, C., Pausch, R.: Lowering the barriers to programming: Ataxonomy of programming environments and languages for novice programmers. ACM Computing Surveys 37(2), 83–137 (2005)
King, K.N.: The evolution of the programming languages course. In: Proceedingsof the Twenty-Third SIGCSE Technical Symposium on Computer Science Education, Kansas City, Missouri, pp. 213–219 (1992)
Kölling, M., Koch, B.: Requirements for a first year object-orientedteaching language. In: ACM SIGCSE Bulletin, Proceedings of the Twenty-Sixth SIGCSE Technical Symposium on Computer Science Education, vol. 27(1). Language History - A Tale of Two Countries 151 (1995)
Langley, N.: COBOL integrates with Java and .NET. Computer Weekly (2004), http://www.computerweekly.com/articles/article.asp?liArticleID=133085
Lee, P.A., Stroud, R.J.: C++ as an introductory programming language. In: Woodman, M. (ed.) Programming Language Choice: Practice and Experience. International Thomson Computer Press, London (1996), http://www.cs.ncl.ac.uk/oId/publications/books/apprentice/lnstructorsManual/C-H-_Choice.html
Levy, S.P.: Computer Language Usage In CS 1: Survey Results. SIGCSE 27(3), 21–26 (1995)
Luker, P.: Academic staff development in universities with special reference to small group teaching. (Unpublished PhD Thesis), University of Nottingham (1989)
McCauley, R., Manaris, B.: Computer science programs: what do they looklike? In: Proceedings of the 29th SIGCSE Technical Symposium on Computer Science Education, pp. 15–19 (February 1998)
Mclver, L., Conway, D.M.: Seven deadly sins of introductory programminglanguage design. In: Proceedings of Software Engineering: Education and Practice (SE:E&P 1996), Dunedin, NZ, pp. 309–316 (1996)
Merritt, S.M.: On the importance of teaching Pascal in the IS curriculum. In: ACM SIGCSE Bulletin, Proceedings of the Eleventh IGCSE Technical Symposium on Computer Science Education SIGCSE 1980, vol. 12(1) (1980)
Perlis, A.J.: The American Side of the Development of Algol. In: Wexelblat, R.L. (ed.) History of Programming Languages I, pp. 25–74. ACM (1981)
Parker, K.R., Ottaway, T.A., Chao, J.T.: Criteria for the selection of a programminglanguage for introductory courses. International Journal of Knowledge and Learning 2(1/2), 119–139 (2006a)
Parker, K.R., Chao, J.T., Ottaway, T.A., Chang, J.: A formal language selection process for introductory programming courses. Journal of Information Technology Education 5, 133–151 (2006b)
Riehle, R.: SEPR and programming language selection. CrossTalk – TheJournal of Defense Software Engineering 16(2), 13–17 (2003), http://vkfww.stsc.hill.afmil/crosstalk/2003/02/Riehle.html
Roberts, E.: Resources to support the use of java in introductory computer science. In: Proceedings of the 35th SIGCSE Technical Symposium on Computer Science Education,Norfolk, Virginia, pp. 233–234 (2004)
Sammet, J.E.: Programming languages: History and future. Communicationsofthe ACM 15(7), 601 (1972)
Sammet, J.E.: The Early History of COBOL. In: Wexelblat, R.L. (ed.) History of Programming Languages I. ACM (1981)
Schneider, G.M.: The introductory programming course in computer science: Ten principles. ACM SIGCSE Bulletin 10(1), 107–114 (1978)
Sime, M.E., Green, T.R.G., Guest, D.J.: Psychological evaluation of two conditional constructions used in computer languages. International Journal of Man-Machine Studies 5(1), 105–113 (1973)
Smillie, K.: People, languages, and computers: A short memoir. IEEE Annals ofthe History of Computing (April-June), 60–73 (2004)
Smith, C., Rickman, J.: Selecting languages for pedagogical tools in the computer sciencecurriculum. In: Proceedings of the 6th SIGCSE Technical Symposium on Computer Science Education, pp. 39–47 (1976)
Smolarski, D.C.: A first course in computer science: Languages and goals. Teaching Mathematics and Computer Science 1(1), 137–152 (2003), http://math.scu.edu/~dsmolars/smolar-e.pdf (retrieved November 10, 2005)
Soloway, E., Bonar, J., Ehrlich, K.: Cognitive strategies and looping constructs: an empirical study. In: Soloway, E., Spohrer, J.C. (eds.) Studying the Novice Programmer, pp. 853–860. Lawrence Erlbaum Associates, Hillsdale (1989)
Solntseff, N.: Programming languages for introductory computing courses: aposition paper. ACM SIGCSE Bulletin 10(1), 119–124 (1978)
Stephenson, C.: A report on high school computer science education in five USstates (2000), http://www.holtsoft.com/chris/HSSurveyArt.pdf
Tatnall, A., Davey, B.: Stream in the history of computer education in Australia. In: History of Computing in Education. J. Impagliazzo and J. A. N. Lee, Kluwer Academic Publishers (2004)
Tharp, A.L.: Selecting the ‘right’ programming language. ACM SIGCSE Bulletin 14(1), 151–155 (1982)
Watt, D.A.: Programming languages-Trends in education. In: Proceedings of Simposio Brasileiro de Linguagens de Programacao, Recife, Brazil (2000), http://www.dcs.gla.ac.uk/~daw/publications/PLTE.ps
Wile, D.S.: Programming languages. In: Marciniak, J.J. (ed.) Encyclopedia of Software Engineering, 2nd edn., pp. 1010–1023. John Wiley and Sons, Hoboken (2002)
Wirth, N.: Recollections about the development of Pascal. In: ACM SIGPLAN Notices, The Second ACM SIGPLAN Conference on History of Programming Languages HOPL-II 28(3) (1993)
Yohe, J.M.: An overview of programming practices. ACM Computing Surveys 6(4), 221–245 (1974)
Zeigler, S.F.: Comparing development costs of C and Ada. Rational SoftwareCorporation, Santa Clara, Calif, March 30 (1995)
Zelle, J.M.: Python as a first language. In: Proceedings 13th Annual Midwest Computer Conference (MCC 1999), Lisle, IL, March 18-19 (1999)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 International Federation for Information Processing
About this chapter
Cite this chapter
Parker, K.R., Davey, B. (2012). The History of Computer Language Selection. In: Tatnall, A. (eds) Reflections on the History of Computing. IFIP Advances in Information and Communication Technology, vol 387. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-33899-1_12
Download citation
DOI: https://doi.org/10.1007/978-3-642-33899-1_12
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-33898-4
Online ISBN: 978-3-642-33899-1
eBook Packages: Computer ScienceComputer Science (R0)