ABSTRACT
Most text-based programming languages found in introductory programming courses use English words. This fact alone can deter non-English speakers who wish to learn to program: how can we expect them to learn a programming language if they do not even understand the meaning of the keywords they are manipulating? In addition, the syntax and semantics of programming languages are also known causes of learners’ mistakes. In this paper, we highlight these difficulties and then present PseuToPy, a programming language which can be localized in several tongues on the one hand and produce instructions close to these natural languages on the other. PseuToPy is still a work in progress: we have developed a version in French and hope to study its use in an educational context to see whether or not programming beginners find it easier to learn programming by implementing algorithms in their native tongues.
Supplemental Material
- Amjad Altadmri and Neil C.C. Brown. 2015. 37 Million Compilations: Investigating Novice Programming Mistakes in Large-Scale Student Data. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education(SIGCSE ’15). Association for Computing Machinery, New York, NY, USA, 522–527. https://doi.org/10.1145/2676723.2677258Google ScholarDigital Library
- Yassine Gader, Charles Lefever, and Patrick Wang. 2021. PseuToPy: Vers Un Langage de Programmation Naturel. In Atelier ”Apprendre La Pensée Informatique de La Maternelle à l’Université”, Dans Le Cadre de La Conférence Environnements Informatiques Pour l’Apprentissage Humain (EIAH), Julien Broisin, Christophe Declercq, Cédric Fluckiger, Yannick Parmentier, Yvan Peter, and Yann Secq (Eds.). Fribourg, Switzerland, 87–95.Google Scholar
- Scott R. Portnoff. 2018. The Introductory Computer Programming Course Is First and Foremost a Language Course. ACM Inroads 9, 2 (April 2018), 34–52. https://doi.org/10.1145/3152433Google ScholarDigital Library
- Yizhou Qian and James Lehman. 2017. Students’ Misconceptions and Other Difficulties in Introductory Programming: A Literature Review. ACM Transactions on Computing Education 18, 1 (Oct. 2017), 1:1–1:24. https://doi.org/10.1145/3077618Google ScholarDigital Library
- Yizhou Qian and James D. Lehman. 2016. Correlates of Success in Introductory Programming: A Study with Middle School Students. Journal of Education and Learning 5, 2 (2016), 73–83.Google ScholarCross Ref
Recommendations
Interactive, Language-neutral Flowcharts and Pseudocode for Teaching Core CS0/1 Programming Concepts: (Abstract Only)
SIGCSE '18: Proceedings of the 49th ACM Technical Symposium on Computer Science EducationIntroductory programming courses often use a full-featured programming language, such as Python, Java, or C++, wherein students concurrently learn programming concepts along with language syntax. However, many instructors believe that learning ...
The Scratch Programming Language and Environment
Scratch is a visual programming environment that allows users (primarily ages 8 to 16) to learn computer programming while working on personally meaningful projects such as animated stories and games. A key design goal of Scratch is to support self-...
Comments