Investigating the Role of Pseudocode in Learning Programming Language: A Language Transfer and Typological Similarity Perspective

09 November 2023, Version 1
This content is an early or alternative research output and has not been peer-reviewed by Cambridge University Press at the time of posting.

Abstract

This research examined the efficacy of Pseudocode as a tool in teaching a programming language. Fifty-nine participants with no prior programming were divided into three groups: Pseudocode, Java, and Control. The study consisted of three phases: Training, Consolidation, and Testing. During the Training session, participants were presented with segments of code written in either Java or Pseudocode, while the Control group read text passages. After each Training trial participants answered comprehension questions. Consolidation and Testing were identical for all three groups. Consolidation trials consisted of segments of code in Java. Participants were again tested for understanding. In Testing, participants were presented with Java code with three levels of difficulty, evaluating their skills learned from prior sessions. Results showed largely equivalent performance across the three groups in the Training and Consolidation sessions. In the Testing phase, participants from both Pseudocode and Java groups performed better than the Control group on easy and medium questions, confirming that they benefitted from their training. Critically however, while there was no difference between the Pseudocode and the Java groups in easy- or medium- difficulty questions, the Pseudocode group outperformed both the Java and Control groups on difficult questions, implying that Pseudocode can help mitigate the difficulty of learning more complex code. This likely reflects that Pseudocode bridges the typological distance between English and Java, thereby aiding learners in generalizing logic to more complex tasks. However, the exact mechanism requires further investigation. Future studies will also explore how Pseudocode can be optimized to further aid learning.

Keywords

Pseudocode
Psycholinguistics
Language Typology
Programming
Psychology

Comments

Comments are not moderated before they are posted, but they can be removed by the site moderators if they are found to be in contravention of our Commenting and Discussion Policy [opens in a new tab] - please read this policy before you post. Comments should be used for scholarly discussion of the content in question. You can find more information about how to use the commenting feature here [opens in a new tab] .
This site is protected by reCAPTCHA and the Google Privacy Policy [opens in a new tab] and Terms of Service [opens in a new tab] apply.