Measuring Cognitive Load - A Solution to Ease Learning of Programming

Learning programming is difficult for many learners. Some researches have found that the main difficulty relates to cognitive load. Cognitive overload happens in programming due to the nature of the subject which is intrinisicly over-bearing on the working memory. It happens due to the complexity of the subject itself. The problem is made worse by the poor instructional design methodology used in the teaching and learning process. Various efforts have been proposed to reduce the cognitive load, e.g. visualization softwares, part-program method etc. Use of many computer based systems have also been tried to tackle the problem. However, little success has been made to alleviate the problem. More has to be done to overcome this hurdle. This research attempts at understanding how cognitive load can be managed so as to reduce the problem of overloading. We propose a mechanism to measure the cognitive load during pre instruction, post instruction and in instructional stages of learning. This mechanism is used to help the instruction. As the load changes the instruction is made to adapt itself to ensure cognitive viability. This mechanism could be incorporated as a sub domain in the student model of various computer based instructional systems to facilitate the learning of programming.

A Proposed Framework for Visualization to Teach Computer Science

Computer programming is considered a very difficult course by many computer science students. The reasons for the difficulties include cognitive load involved in programming, different learning styles of students, instructional methodology and the choice of the programming languages. To reduce the difficulties the following have been tried: pair programming, program visualization, different learning styles etc. However, these efforts have produced limited success. This paper reviews the problem and proposes a framework to help students overcome the difficulties involved.

Reducing Cognitive Load in Learning Computer Programming

Many difficulties are faced in the process of learning computer programming. This paper will propose a system framework intended to reduce cognitive load in learning programming. In first section focus is given on the process of learning and the shortcomings of the current approaches to learning programming. Finally the proposed prototype is suggested along with the justification of the prototype. In the proposed prototype the concept map is used as visualization metaphor. Concept maps are similar to the mental schema in long term memory and hence it can reduce cognitive load well. In addition other method such as part code method is also proposed in this framework to can reduce cognitive load.