🤖 AI Summary
This study investigates how design-level code smells in novice Scratch programs impede the development of computational thinking (CT) skills. Focusing on fine-grained associations between nine CT constructs and forty code smell categories, we employ an open-source linter to extract program features, then apply robust correlation analysis, hierarchical cross-validation, and exploratory machine learning modeling—while accounting for task context as a moderating factor. To our knowledge, this is the first large-scale study in block-based programming to establish interpretable, empirically grounded mappings between specific design defects and CT competencies, revealing mechanistic pathways through which novice programming habits hinder skill acquisition. We release a publicly available, de-identified benchmark dataset and a fully reproducible analytical pipeline, providing effect-size evidence to inform targeted pedagogical interventions, curriculum design, and optimization of automated feedback systems.
📝 Abstract
Context. Code smells, which are recurring anomalies in design or style, have been extensively researched in professional code. However, their significance in block-based projects created by novices is still largely unknown. Block-based environments such as Scratch offer a unique, data-rich setting to examine how emergent design problems intersect with the cultivation of computational-thinking (CT) skills. Objective. This research explores the connection between CT proficiency and design-level code smells--issues that may hinder software maintenance and evolution--in programs created by Scratch developers. We seek to identify which CT dimensions align most strongly with which code smells and whether task context moderates those associations. Method. A random sample of aprox. 2 million public Scratch projects is mined. Using open-source linters, we extract nine CT scores and 40 code smell indicators from these projects. After rigorous pre-processing, we apply descriptive analytics, robust correlation tests, stratified cross-validation, and exploratory machine-learning models; qualitative spot-checks contextualize quantitative patterns. Impact. The study will deliver the first large-scale, fine-grained map linking specific CT competencies to concrete design flaws and antipatterns. Results are poised to (i) inform evidence-based curricula and automated feedback systems, (ii) provide effect-size benchmarks for future educational interventions, and (iii) supply an open, pseudonymized dataset and reproducible analysis pipeline for the research community. By clarifying how programming habits influence early skill acquisition, the work advances both computing-education theory and practical tooling for sustainable software maintenance and evolution.