DEVELOPING CRITICAL THINKING THROUGH PROGRAMMING INSTRUCTION: COGNITIVE FOUNDATIONS AND DIDACTIC STRATEGIES
Abstract
The article examines the development of critical thinking through programming education in the context of the digital transformation of education. The relevance of the study is determined by the growing need to prepare students who are able not only to apply algorithms and programming tools but also to analyze information, evaluate alternative problem-solving approaches, and make well-reasoned decisions. The aim of the study is to investigate the impact of cognitively oriented instructional strategies on the development of school students' critical thinking. The research employed a pedagogical experiment, classroom observation, questionnaires, and a comparative analysis of the results obtained before and after the implementation of the proposed methodology. The theoretical framework is based on studies of cognitive load theory, computational thinking, and critical thinking, which explain the organization of students' cognitive activity in programming education. The study involved 20 eighth-grade students. The instructional process incorporated Parsons problems, Socratic questioning, pair programming, code refactoring, and the use of generative artificial intelligence as a cognitive scaffolding tool. The findings demonstrated a significant improvement in students' ability to analyze code, identify logical errors, justify their solutions, and solve programming tasks independently, with performance gains ranging from 24% to 27%. The obtained results confirm the effectiveness of the proposed instructional strategies in fostering critical thinking and indicate the positive impact of cognitively oriented programming instruction on the development of metacognitive skills. The study confirms that programming provides an effective environment for developing both critical and metacognitive thinking. The findings highlight the need to move beyond teaching programming syntax toward fostering a culture of mindful programming based on analysis, reflection, evidence-based reasoning, and independent decision-making.
Keywords
- critical thinking
- programming education
- cognitive load theory
- metacognition
- computational thinking
- pair programming
- artificial intelligence.