Research into the cognitive aspects of programming originated in the study of professional programmers (whether experts or students). Even “end-user” programmers in previous studies have often worked in organizations where programming is recognized to be demanding professional work – the term “power-user” recognizes this technical kudos. But as personal computers become widespread, and most new domestic appliances incorporate microprocessors, many people are engaging in programming-like activities in domestic or non-professional contexts. Such users often have less motivation and more obstacles to programming, meaning that they may be unlikely even to take the first steps. This paper analyses the generic nature of those first steps, and identifies the cognitive demands that characterize them. On the basis of this analysis we propose the Attention Investment model, a cognitive model of programming that offers a consistent account of all programming behaviour, from professiona...
Alan F. Blackwell