Gap Between Computational Thinking and Coding, and How to Bridge It
摘要
Learning a foreign language usually involves mastering words and grammar to understand sentence patterns. In contrast, coding languages have fewer keywords and simpler grammar, yet they allow for diverse solutions through combinations. This complexity often leads to uncertainty about which syntax to apply in specific situations during problem-solving, making coding challenging. Computational Thinking (CT) aims to bridge this gap by suggesting when to use certain syntax, but Wing's CT concept focuses on human problem-solving, not aligning directly with coding. Meanwhile, Scratch's CT approach is effective for teaching basic computational concepts but lacks a robust theoretical framework for problem solving. This paper proposes a hybrid method combining these strengths: using block coding like Scratch for foundational learning, and applying Wing’s CT from a computer perspective for problem-solving. It showcases a developed website aimed at implementing this educational strategy. The site ( https://block4py.org ) is publicly available and aims to assist beginners in coding.