Measuring the Cognitive Load of Learning to Program: A Replication Study (original) (raw)
Related papers
Measuring Cognitive Load - A Solution To Ease Learning Of Programming
2007
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. T...
Applying Cognitive Load Theory to Computer Science Education
2003
Cognitive Load Theory provides a theoretical basis for understanding the learning process. It uses an information processing model to describe how the mind acquires and stores knowledge, and to provide an explanation for the limitations imposed by working memory. This paper describes Cognitive Load Theory, discusses its application in a number of areas, and explores its potential uses in understanding and improving novice programming and computer science education. A number of research directions are suggested.
Predicting cognitive load in acquisition of programming abilities
International Journal of Electrical and Computer Engineering (IJECE), 2019
In this paper, we propose a method to predict cognitive load and its factors affecting the learning efficiency in programming learning from the learning behavior of learners. Generally, since the concepts of programming are difficult for learners, some of them suffer inappropriate cognitive load to understand them. Although teachers must keep cognitive load of such learners appropriate, it is difficult for them to find learners who has inappropriate cognitive load from a large number of learners. To find learners with inappropriate cognitive load, we construct models with the random forest algorithm, using learning behavior collected from learners solving fill-in-the-blank tests. An experiment shows the models can detect cognitive load for IL and GL along with their factors. Teachers must address adjustment of cognitive load of learners. This result clarifies the learning factors affecting cognitive load of learners, which enables teachers to address the adjustment with small burdens.
Cognitive Load Theory in Computing Education Research: A Review
ACM Transactions on Computing Education
One of the most commonly cited theories in computing education research is cognitive load theory (CLT), which explains how learning is affected by the bottleneck of human working memory and how teaching may work around that limitation. The theory has evolved over a number of decades, addressing shortcomings in earlier versions; other issues remain and are being debated by the CLT community. We conduct a systematic mapping review of how CLT has been used across a number of leading computing education research (CER) forums since 2010. We find that: the most common reason to cite CLT is to mention it briefly as a design influence; authors predominantly cite old versions of the theory; hypotheses phrased in terms of cognitive load components are rare; and only a small selection of cognitive load measures have been applied, sparsely. Overall, the theory’s evolution and recent themes in CLT appear to have had limited impact on CER so far. We recommend that studies in CER explain which ver...
Mapping the Cognitive Demands of Learning to Program
Thinking: The Second …, 1987
Defining programming and assessing its cognitive demands is problematic because programming is a complex configuration of activities that vary according to what is being programmed, the style of programming, and how rich and supportive the surrounding programming cnvironment is (Kurland et al., 1984; Pea & Kurland, 1983). One consequence of the fact that programming refers to a configuration of activities is that different combinations of activities may be involved in any specific programming project. These activities include, at a general level. problem definition, design development and organization, code writing. and debugging (Pea & Kurland, 1983). Different combinations of activities will entail different cognitive demands. For example, a large memory span may facilitate the mental simulations required in designing and comprehending programs. Or an;dogical reasoning skill may he important for recognizing the similarity of different programming tasks and for transferring programming methods or procedures from one context to another. An adequate assessment of the cognitive demands of programming will depend on analyses of the programming activity and examination of the demands of different component processes.
Exploring perceived cognitive load in learning programming via Scratch
Research in Learning Technology
The purpose of this study is to investigate the perceived cognitive load and its effects on the academic performance in Scratch-based programming. The four main concepts of programming (sequences, operators, conditions and loop) were delivered in the instructional package. Participants were 12 sixth-grade students enrolled at a public secondary school. The results from quantitative and qualitative instruments indicated that students' perceived cognitive loads were close to each other among four programming concepts. The attractive interface of Scratch was somewhat useful but some parts of the interface were problematic for achieving the programming tasks. This study concludes with suggestions for Scratch practitioners and researchers to pay attention to the sources of cognitive load effects.
Turkish Online Journal of Distance Education, 2013
Teaching object-oriented programming (OOP) is a difficult task, especially to the beginners. First-time learners also find it difficult to understand. Although there is a considerable amount of study on the cognitive dimension, a few study points out its physiological meaning. Moreover, it has been suggested that neuroscientific studies and methods can enable educational researchers gain an insight into brain and cognitive processes as well. Therefore, this experimental study explored the previously learned OOP skills in terms of cognitive load. By using the functional near-infrared spectroscopy (fNIRS) method, we measured the cognitive load of participants when executing OOP tasks. The average oxygenation changes in prefrontal cortex of the brain represented their total cognitive response to a set of OOP tasks. There were two research questions investigated by this study. The first research question explored whether the average oxygenation changed according to the participants’ academic achievements and task completion status. The second research question was for identifying the instant changes in the oxygenations to find out which programming tasks were more contributing to the oxygenation. Later, we compared the findings with experts’ judgments. We observed that the fNIRS system was an effective and promising technology for monitoring cognitive tasks both in classrooms and in experimental environments.
A Cognitive model to enhance learning outcomes in Computing
2013
Cognitive Load Theory (CLT) provides a basis for the development of teaching and learning materials which are more effective than conventional approaches. CLT suggests that learning happens best under conditions that are aligned with human cognitive architecture. The structure of human cognitive architecture, while not known precisely, is discernible through the results of experimental research. Recognizing George Miller's information processing research showing that short term memory is limited in the number of elements it can contain simultaneously, Sweller builds a theory that treats schemas, or combinations of elements, as the cognitive structures that make up an individual's knowledge base. The paper the highlights the application of CLT, and its potential uses in understanding and improving novice programming skills and enhancing computer science education.
Scaffolding Model for Efficient Programming Learning Based on Cognitive Load Theory
2018
Programming learning for beginners requires tremendous amount of exposure to understand the logic in each programming solution using the basic concepts despite the overwhelming syntax it might carries. Learning programming through examples with careful walkthrough builds learners’ confidence to embark with problems of any designs, avoids frustration due to syntax error and unintentional bugs. Scaffolding involves meta-programming approach of building software applications using supported materials that provides some inspiration of how the program could be developed. This research identifies important attributes in programming and proposes a scaffold model to enhance programming learning efficiency especially among novice programmers. The study applies cognitive load theory by providing users with two types of instructional design as learning support to reduce mental effort applied in the working memory i.e. worked-example and goal free programming problem solutions. The model is exp...
Reducing cognitive load in learning computer programming
2006
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.