skip to main content
10.1145/3173574.3173970acmconferencesArticle/Chapter ViewAbstractPublication PageschiConference Proceedingsconference-collections
research-article

Non-Native English Speakers Learning Computer Programming: Barriers, Desires, and Design Opportunities

Published:21 April 2018Publication History

ABSTRACT

People from nearly every country are now learning computer programming, yet the majority of programming languages, libraries, documentation, and instructional materials are in English. What barriers do non-native English speakers face when learning from English-based resources? What desires do they have for improving instructional materials? We investigate these questions by deploying a survey to a programming education website and analyzing 840 responses spanning 86 countries and 74 native languages. We found that non-native English speakers faced barriers with reading instructional materials, technical communication, reading and writing code, and simultaneously learning English and programming. They wanted instructional materials to use simplified English without culturally-specific slang, to use more visuals and multimedia, to use more culturally-agnostic code examples, and to embed inline dictionaries. Programming also motivated some to learn English better and helped clarify logical thinking about natural languages. Based on these findings, we recommend learner-centered design improvements to programming-related instructional resources and tools to make them more accessible to people around the world.

References

  1. 2016. About Scratch. https://scratch.mit.edu/about. (2016). Accessed: 2016-09--19.Google ScholarGoogle Scholar
  2. 2017. Ethnologue: Languages of the World -- English. https://www.ethnologue.com/language/eng. (2017). Accessed: 2017-09-05.Google ScholarGoogle Scholar
  3. 2017. MOOC List -- Find MOOCs By Languages. https: //www.mooc-list.com/languages'static=true. (2017). Accessed: 2017-09-05.Google ScholarGoogle Scholar
  4. 2017. Simple English Wikipedia. https://simple.wikipedia.org/wiki/Main_Page. (2017). Accessed: 2017-09--14.Google ScholarGoogle Scholar
  5. Christine Alvarado and Zachary Dodds. 2010. Women in CS: An Evaluation of Three Promising Practices. In Proceedings of the 41st ACM Technical Symposium on Computer Science Education (SIGCSE '10). ACM, New York, NY, USA, 57--61. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Apple. 2017. Introduction to Coding Guidelines for Cocoa. https://developer.apple.com/library/ content/documentation/Cocoa/Conceptual/ CodingGuidelines/CodingGuidelines.html. (2017). Accessed: 2017-09--14.Google ScholarGoogle Scholar
  7. Computing Research Association. 2016. The Taulbee Survey. http://cra.org/resources/taulbee-survey/. (2016). Accessed: 2017-09--14.Google ScholarGoogle Scholar
  8. Jeff Atwood. 2009. Stack Overflow Blog: Non-English Question Policy. https://stackoverflow.blog/2009/ 07/23/non-english-question-policy/. (2009). Accessed: 2017-09--14.Google ScholarGoogle Scholar
  9. ISO 639--2 Registration Authority. 2017. Codes for the Representation of Names of Languages. https://www.loc.gov/standards/iso639--2/. (2017). Accessed: 2017-09--14.Google ScholarGoogle Scholar
  10. Mordechai Ben-Ari and Jorma Sajaniemi. 2004. Roles of Variables As Seen by CS Educators. In Proceedings of the 9th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education (ITiCSE '04). ACM, New York, NY, USA, 52--56. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Coursera blog. 2012. Coursera hits 1 million students across 196 countries. https://blog.coursera.org/ coursera-hits-1-million-students-across-196/. (2012). Accessed: 2017-09--14.Google ScholarGoogle Scholar
  12. Bo Brinkman and Amanda Diekman. 2016. Applying the Communal Goal Congruity Perspective to Enhance Diversity and Inclusion in Undergraduate Computing Degrees. In Proceedings of the 47th ACM Technical Symposium on Computing Science Education (SIGCSE '16). ACM, New York, NY, USA, 102--107. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Pauli Byckling, Petri Gerdt, and Jorma Sajaniemi. 2005. Roles of Variables in Object-oriented Programming. In Companion to the 20th Annual ACM SIGPLAN Conference on Object-oriented Programming, Systems, Languages, and Applications (OOPSLA '05). ACM, New York, NY, USA, 350--355. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Carrie J. Cai, Philip J. Guo, James R. Glass, and Robert C. Miller. 2015. Wait-Learning: Leveraging Wait Time for Second Language Education. In Proceedings of the 33rd Annual ACM Conference on Human Factors in Computing Systems (CHI '15). ACM, New York, NY, USA, 3701--3710. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Parmit K. Chilana, Rishabh Singh, and Philip J. Guo. 2016. Understanding Conversational Programmers: A Perspective from the Software Industry. In Proceedings of the 2016 CHI Conference on Human Factors in Computing Systems (CHI '16). ACM, New York, NY, USA, 1462--1472. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Artem Chistyakov. 2017. The language of programming. https://temochka.com/blog/posts/2017/06/28/ the-language-of-programming.html. (Jun 2017).Google ScholarGoogle Scholar
  17. Patricia H. Collins. 2015. Intersectionality's Definitional Dilemmas. Annual Review of Sociology 41, 1 (2015), 1--20.Google ScholarGoogle ScholarCross RefCross Ref
  18. Juliet M. Corbin and Anselm L. Strauss. 2008. Basics of qualitative research: techniques and procedures for developing grounded theory. SAGE Publications, Inc.Google ScholarGoogle Scholar
  19. Sayamindu Dasgupta and Benjamin Mako Hill. 2017. Learning to Code in Localized Programming Languages. In Proceedings of the Fourth (2017) ACM Conference on Learning @ Scale (L@S '17). ACM, New York, NY, USA, 33--39. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Betsy DiSalvo, Mark Guzdial, Charles Meadows, Ken Perry, Tom McKlin, and Amy Bruckman. 2013. Workifying Games: Successfully Engaging African American Gamers with Computer Science. In Proceeding of the 44th ACM Technical Symposium on Computer Science Education (SIGCSE '13). ACM, New York, NY, USA, 317--322. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Betsy DiSalvo, Sarita Yardi, Mark Guzdial, Tom McKlin, Charles Meadows, Kenneth Perry, and Amy Bruckman. 2011. African American Men Constructing Computing Identity. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (CHI '11). ACM, New York, NY, USA, 2967--2970. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Brian Dorn and Mark Guzdial. 2010. Learning on the Job: Characterizing the Programming Knowledge and Learning Strategies of Web Designers. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (CHI '10). ACM, New York, NY, USA, 703--712. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Ian Drosos, Philip J. Guo, and Chris Parnin. 2017. HappyFace: Identifying and Predicting Frustrating Obstacles for Learning Programming at Scale. In Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC) (VL/HCC '17).Google ScholarGoogle ScholarCross RefCross Ref
  24. Benedict Du Boulay. 1986. Some Difficulties of Learning to Program. Journal of Educational Computing Research 2, 1 (1986), 57--73.Google ScholarGoogle ScholarCross RefCross Ref
  25. Darren Edge, Kai-Yin Cheng, Michael Whitney, Yao Qian, Zhijie Yan, and Frank Soong. 2012. Tip Tap Tones: Mobile Microtraining of Mandarin Sounds. In Proceedings of the 14th International Conference on Human-computer Interaction with Mobile Devices and Services Companion (MobileHCI '12). ACM, New York, NY, USA, 215--216. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Darren Edge, Elly Searle, Kevin Chiu, Jing Zhao, and James A. Landay. 2011. MicroMandarin: Mobile Language Learning in Context. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (CHI '11). ACM, New York, NY, USA, 3169--3178. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Barbara Ericson, Shelly Engelman, Tom McKlin, and Ja'Quan Taylor. 2014. Project Rise Up 4 CS: Increasing the Number of Black Students Who Pass Advanced Placement CS A. In Proceedings of the 45th ACM Technical Symposium on Computer Science Education (SIGCSE '14). ACM, New York, NY, USA, 439--444. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Barbara J. Ericson, Kantwon Rogers, Miranda Parker, Briana Morrison, and Mark Guzdial. 2016. Identifying Design Principles for CS Teacher Ebooks Through Design-Based Research. In Proceedings of the 2016 ACM Conference on International Computing Education Research (ICER '16). ACM, New York, NY, USA, 191--200. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. National Science Foundation. 2017. Broadening Participation in Computing (BPC). https://www.nsf.gov/cise/bpc/. (2017). Accessed: 2017-09--14.Google ScholarGoogle Scholar
  30. Scott Freeman, Sarah L. Eddy, Miles McDonough, Michelle K. Smith, Nnadozie Okoroafor, Hannah Jordt, and Mary Pat Wenderoth. 2014. Active learning increases student performance in science, engineering, and mathematics. Proceedings of the National Academy of Sciences 111, 23 (2014), 8410--8415.Google ScholarGoogle ScholarCross RefCross Ref
  31. T. R. G. Green. 1989. Cognitive dimensions of notations. In People and Computers V. University Press, 443--460. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. J.J. Gumperz and S.C. Levinson. 1996. Rethinking Linguistic Relativity. Cambridge University Press. https://books.google.com/books?id=dPXvxgL2t1oCGoogle ScholarGoogle Scholar
  33. Philip J. Guo. 2013. Online Python Tutor: Embeddable Web-based Program Visualization for CS Education. In Proceeding of the 44th ACM Technical Symposium on Computer Science Education (SIGCSE '13). ACM, New York, NY, USA, 579--584. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Philip J. Guo. 2015. Codeopticon: Real-Time, One-To-Many Human Tutoring for Computer Programming. In Proceedings of the 28th Annual ACM Symposium on User Interface Software and Technology (UIST '15). ACM, New York, NY, USA, 599--608. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Philip J. Guo. 2017. Older Adults Learning Computer Programming: Motivations, Frustrations, and Design Opportunities. In Proceedings of the 2017 CHI Conference on Human Factors in Computing Systems (CHI '17). ACM, New York, NY, USA, 7070--7083. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Philip J. Guo, Jeffery White, and Renan Zanelatto. 2015. Codechella: Multi-user program visualizations for real-time tutoring and collaborative learning. In Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC) (VL/HCC '15). 79--87.Google ScholarGoogle ScholarCross RefCross Ref
  37. Mark Guzdial. 2015. Learner-Centered Design of Computing Education: Research on Computing for Everyone. Synthesis Lectures on Human-Centered Informatics 8, 6 (2015), 1--165.Google ScholarGoogle ScholarCross RefCross Ref
  38. Scott Hanselman. 2008. Do you have to know English to be a Programmer? http://www.hanselman.com/blog/ DoYouHaveToKnowEnglishToBeAProgrammer.aspx. (Nov 2008).Google ScholarGoogle Scholar
  39. Masayuki Igawa, Dong Ma, and Samuel de Medeiros Queiroz. 2017. Non-native English speakers in Open Source communities: A True Story. (talk at Linux.conf.au). https://youtu.be/fsn6buk-BtE. (Jan 2017).Google ScholarGoogle Scholar
  40. Andy Kirkpatrick. 2011. Internationalization or Englishization: Medium of Instruction in Today's Universities. (01 2011).Google ScholarGoogle Scholar
  41. Andrew J. Ko, Brad A. Myers, and Htet Htet Aung. 2004. Six Learning Barriers in End-User Programming Systems. In Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC) (VL/HCC '04). Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. Geza Kovacs and Robert C. Miller. 2014. Smart Subtitles for Vocabulary Learning. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (CHI '14). ACM, New York, NY, USA, 853--862. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. J. Lave and E. Wenger. 1991. Situated Learning: Legitimate Peripheral Participation. Cambridge University Press.Google ScholarGoogle ScholarCross RefCross Ref
  44. Ron Mace. 1997. What is universal design. The Center for Universal Design at North Carolina State University http://www.udinstitute.org/principles.php (1997).Google ScholarGoogle Scholar
  45. John H. Maloney, Kylie Peppler, Yasmin Kafai, Mitchel Resnick, and Natalie Rusk. 2008. Programming by Choice: Urban Youth Learning Programming with Scratch. In Proceedings of the 39th SIGCSE Technical Symposium on Computer Science Education (SIGCSE '08). ACM, New York, NY, USA, 367--371. Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. MaxMind. 2017. GeoLite2 Free Downloadable Databases. https://dev.maxmind.com/geoip/geoip2/geolite2/. (2017). Accessed: 2017-09--14.Google ScholarGoogle Scholar
  47. Charlie McDowell, Linda Werner, Heather Bullock, and Julian Fernald. 2002. The Effects of Pair-programming on Performance in an Introductory Programming Course. In Proceedings of the 33rd SIGCSE Technical Symposium on Computer Science Education (SIGCSE '02). ACM, New York, NY, USA, 38--42. Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Charlie McDowell, Linda Werner, Heather E. Bullock, and Julian Fernald. 2006. Pair Programming Improves Student Retention, Confidence, and Program Quality. Commun. ACM 49, 8 (Aug. 2006), 90--95. Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. Peeter Mehisto. 2012. Criteria for producing CLI learning material. Encuentro Journal (2012), 15--33.Google ScholarGoogle Scholar
  50. Subrata Kumar Mitra. 2010. Internationalization of Education in India: Emerging Trends and Strategies. Asian Social Science 6, 6 (2010).Google ScholarGoogle Scholar
  51. Brad A. Myers and Jeffrey Stylos. 2016. Improving API Usability. Commun. ACM 59, 6 (May 2016), 62--69. Google ScholarGoogle ScholarDigital LibraryDigital Library
  52. Jakob Nielsen. 1994. Usability Inspection Methods. John Wiley & Sons, Inc., New York, NY, USA, Chapter Heuristic Evaluation, 25--62. http://dl.acm.org/citation.cfm?id=189200.189209 Google ScholarGoogle ScholarDigital LibraryDigital Library
  53. The White House: Office of the Press Secretary. 2016. FACT SHEET: President Obama Announces Computer Science For All Initiative. (Jan 2016).Google ScholarGoogle Scholar
  54. Python official documentation. 2017a. PEP 8 -- Style Guide for Python Code. https://www.python.org/dev/peps/pep-0008/. (2017). Accessed: 2017-09--14.Google ScholarGoogle Scholar
  55. Python official documentation. 2017b. sqlite3 DB-API 2.0 interface for SQLite databases. https://docs.python.org/3/library/sqlite3.html. (2017). Accessed: 2017-09--14.Google ScholarGoogle Scholar
  56. Yogendra Pal. 2016. A Framework for Scaffolding to Teach Programming to Vernacular Medium Learners. Ph.D. Dissertation. Indian Institute of Technology Bombay.Google ScholarGoogle Scholar
  57. Yogendra Pal and Sridhar Iyer. 2012. Comparison of English Versus Hindi Medium Students for Programming Abilities Acquired Through Video-Based Instruction. In Proceedings of the 2012 IEEE Fourth International Conference on Technology for Education (T4E '12). IEEE Computer Society, Washington, DC, USA, 26--30. Google ScholarGoogle ScholarDigital LibraryDigital Library
  58. Yogendra Pal and Sridhar Iyer. 2015a. Classroom Versus Screencast for Native Language Learners: Effect of Medium of Instruction on Knowledge of Programming. In Proceedings of the 2015 ACM Conference on Innovation and Technology in Computer Science Education (ITiCSE '15). ACM, New York, NY, USA, 290--295. Google ScholarGoogle ScholarDigital LibraryDigital Library
  59. Yogendra Pal and Sridhar Iyer. 2015b. Effect of Medium of Instruction on Programming Ability Acquired through Screencast. In 2015 International Conference on Learning and Teaching in Computing and Engineering. 17--21. Google ScholarGoogle ScholarDigital LibraryDigital Library
  60. John F. Pane and Brad A. Myers. 1996. Usability Issues in the Design of Novice Programming Systems. Technical Report Carnegie Mellon University-CS-96--132. Carnegie Mellon University.Google ScholarGoogle Scholar
  61. Annie Murphy Paul. 2014. Bill Gates Is an Autodidact. You're Probably Not. Ed tech promoters need to understand how most of us learn. Slate (July 2014).Google ScholarGoogle Scholar
  62. Roy D. Pea. 1986. Language-Independent Conceptual "Bugs" in Novice Programming. Journal of Educational Computing Research 2, 1 (1986), 25--36.Google ScholarGoogle ScholarCross RefCross Ref
  63. Margaret Probyn. 2001. Teachers Voices: Teachers Reflections on Learning and Teaching through the Medium of English as an Additional Language in South Africa. International Journal of Bilingual Education and Bilingualism 4, 4 (2001), 249--266.Google ScholarGoogle ScholarCross RefCross Ref
  64. Katharina Reinecke and Abraham Bernstein. 2011. Improving Performance, Perceived Usability, and Aesthetics with Culturally Adaptive User Interfaces. ACM Trans. Comput.-Hum. Interact. 18, 2, Article 8 (July 2011), 29 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  65. Katharina Reinecke and Krzysztof Z. Gajos. 2014. Quantifying Visual Preferences Around the World. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (CHI '14). ACM, New York, NY, USA, 11--20. Google ScholarGoogle ScholarDigital LibraryDigital Library
  66. Gabriela T. Richard, Yasmin B. Kafai, Barrie Adleberg, and Orkan Telhan. 2015. StitchFest: Diversifying a College Hackathon to Broaden Participation and Perceptions in Computing. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE '15). ACM, New York, NY, USA, 114--119. Google ScholarGoogle ScholarDigital LibraryDigital Library
  67. E. Soloway and James C. Spohrer. 1988. Studying the Novice Programmer. L. Erlbaum Associates Inc., Hillsdale, NJ, USA. Google ScholarGoogle Scholar
  68. Juha Sorva. 2012. Visual program simulation in introductory programming education (PhD dissertation). (2012). http://urn.fi/URN:ISBN:978--952--60--4626--6Google ScholarGoogle Scholar
  69. Juha Sorva. 2013. Notional Machines and Introductory Programming Education. Trans. Comput. Educ. 13, 2, Article 8 (July 2013), 31 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  70. Andreas Stefik and Susanna Siebert. 2013. An Empirical Investigation into Programming Language Syntax. Trans. Comput. Educ. 13, 4, Article 19 (Nov. 2013), 40 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  71. John Sweller. 1994. Cognitive load theory, learning difficulty, and instructional design. Learning and Instruction 4, 4 (1994), 295 -- 312.Google ScholarGoogle ScholarCross RefCross Ref
  72. Josie Taylor. 1990. Analysing novices analysing Prolog: what stories do novices tell themselves about Prolog? Instructional Science 19, 4 (01 Jul 1990), 283--309.Google ScholarGoogle Scholar
  73. Kyle Thayer and Andrew J. Ko. 2017. Barriers Faced by Coding Bootcamp Students. In Proceedings of the 2017 ACM Conference on International Computing Education Research (ICER '17). ACM, New York, NY, USA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  74. J. Gregory Trafton and Brian J. Reiser. 1993. The Contributions of Studying Examples and Solving Problems to Skill Acquisition. Lawrence Erlbaum Associates, Inc., 1017--1022.Google ScholarGoogle Scholar
  75. Judith Uchidiuno, Amy Ogan, Evelyn Yarzebinski, and Jessica Hammer. 2016. Understanding ESL Students' Motivations to Increase MOOC Accessibility. In Proceedings of the Third (2016) ACM Conference on Learning @ Scale (L@S '16). ACM, New York, NY, USA, 169--172. Google ScholarGoogle ScholarDigital LibraryDigital Library
  76. Udacity. 2017. About Us. https://www.udacity.com/us. (2017). Accessed: 2017-09--14.Google ScholarGoogle Scholar
  77. Ashok Kumar Veerasamy and Anna Shillabeer. 2014. Teaching English Based Programming Courses to English Language Learners/Non-Native Speakers of English. International Proceedings of Economics Development and Research 70, 4 (2014), 17--22.Google ScholarGoogle Scholar
  78. Eric von Hippel. 1986. Lead Users: A Source of Novel Product Concepts. Manage. Sci. 32, 7 (July 1986), 791--805. Google ScholarGoogle ScholarDigital LibraryDigital Library
  79. April Wang, Ryan Mitts, Philip J. Guo, and Parmit K. Chilana. 2018. Mismatch of Expectations: How Modern Learning Resources Fail Conversational Programmers. In Proceedings of the 2018 CHI Conference on Human Factors in Computing Systems (CHI '18). ACM, New York, NY, USA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  80. Wikipedia. 2017. Non-English-based programming languages. https://en.wikipedia.org/wiki/ Non-English-based_programming_languages. (2017). Accessed: 2017-09-05.Google ScholarGoogle Scholar
  81. David Wolber, Hal Abelson, Ellen Spertus, and Liz Looney. 2011. App Inventor. O'Reilly Media, Inc.Google ScholarGoogle Scholar

Index Terms

  1. Non-Native English Speakers Learning Computer Programming: Barriers, Desires, and Design Opportunities

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        CHI '18: Proceedings of the 2018 CHI Conference on Human Factors in Computing Systems
        April 2018
        8489 pages
        ISBN:9781450356206
        DOI:10.1145/3173574

        Copyright © 2018 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 21 April 2018

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article

        Acceptance Rates

        CHI '18 Paper Acceptance Rate666of2,590submissions,26%Overall Acceptance Rate6,199of26,314submissions,24%

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader