Abstract
This article reports on an investigation into the reflective thinking activities of secondary school learners in computer programming while they are involved in programming activities. With the emphasis on the role of reflection in effective learning, problem solving, and computer programming, the investigation on which this article is based, aimed at determining the extent to which high and low achievers, respectively, are engaged in reflective thinking before beginning to code a computer program, while they are busy working on it and after they have finished the program. A questionnaire on reflective thinking during these three phases of computer programming was completed by both high and low achievers after they had finished a programming task. No practical significant difference between high and low achievers in either of these phases was found. Both high and low achieving groups displayed the use of reflective strategies to a medium to large extent, though it seems as if the low achievers did not gain from the reflection.