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.