Abstract

This paper designs and develops a computer programming learning system for total beginners and those who have no programming experience. The traditional computer programming learning systems require prior knowledge about variables, their types, operators for arithmetic calculations and relational calculations etc., for adopting a wide range of representation of program codes, leading to the burden to them. The proposed system focuses on learning the three basic flows of control: sequential, conditional and iterative controls, for not requiring the prior knowledge, and exploits a path-finding task for confining representation of program codes to a specific task, which is a navigation task where students are asked to organize a sequence of orders for an avatar to move from a given start to a given end on a Manhattan grid map. The previous work employs the path-finding task to foster understanding of the sequence of orders by encouraging students to perform self-tracing process while our proposed system employs it to include that property of understanding for the three basic flows of control which are not covered in the previous work. To add high interactivity and tangibility for student motivation and engagement to learning, the proposed system also employs AR capability. An experiment on feasibility of our system for education is conducted and the results show that our system has the potential for improving students’ understanding of how to make program codes by decrease of the ratio of program codes’ length made by beginners to experts, which is from 2.186 to 1.267, regardless of AR capability such that the ratio decreased from 2.481 to 1.346 without AR capability and it was from 1.974 to 1.206 with it. The results also show that our system significantly leverages their motivation of learning by increase of beginners’ score from 5.00 without AR capability to 6.67 with it for interest and it is from 5.67 to 7.00 for amusement, and even if sacrificing a wide range of representation of program codes that the traditional systems take, a certain stress is significantly given on spending time thinking and building up a program code in proportion to its difficulty and complexity.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call