S.B. Kim, H.J. Jeong, K.S. Song

Korea National University of Education (KOREA, REPUBLIC OF)
Programming education requires a high level of cognitive processing related to the steps of problem analysis, comprehension, algorithm design, coding, and debugging. Therefore, coding education at all levels, from elementary students to non-major university students, is considered as an essential to provide future generations with the skills required in the technology-intensive 21st century, especially focusing on Computation Thinking (CT).

Due to the nature of the various problem-solving steps involved in programming, it may be difficult for novice programmers to learn programming. To overcome this, teaching method that reduces the cognitive load for novice programmers and non-major students in computer-related subject is required. One possible approach is to develop a teaching method that supports learners by observing their thinking process while attempting to solve programming task.

Few studies have focused on the thinking process of the learners doing programming. In addition to that, previous studies relied on indirect methods, such as think-aloud method, interviews, and observations, to examine the thinking process. With advancements of big data and data analysis technologies, there is an opportunity to identify the steps related with programming task through periodic analysis of incomplete programs during the programming activities, i.e., prior to the completion of the programming task.

With this rationale, we analyzed the thinking process during a block-based programming task using an eye-tracking technique. This technique allows objective, direct, and immediate recognition of thinking processes according to the learner’s gaze based on the eye–mind hypothesis, which states that the position and duration of the learner’s gaze indicates the learner’s thought process.

For this study, six pre-service teachers who took the ‘CT and problem-solving’ class for 15 weeks were asked to participate. The participants’ eye movements were tracked as they performed the block-based programming tasks at various levels of difficulty and analyzed according to the CT-based problem-solving steps, problem analysis, algorithm design, and automation (coding and debugging) processes. The results demonstrated that the pre-service teachers showed different gaze movements according to each step in the task execution process. Consequently, it was concluded that it is possible to grasp the learner’s programming progress and diagnose the difficulty in the learning process based on learner’s gaze movements. In the future, we intend to perform this experiment with more participants to establish the statistical significance of our results. We anticipate that our findings could be used as base data to diagnose and identify the state and progress of a learner.