Understanding natural programs using proper decomposition
ICSE '91 Proceedings of the 13th international conference on Software engineering
An Adaptive, Collaborative Environment to Develop Good Habits in Programming
ITS '00 Proceedings of the 5th International Conference on Intelligent Tutoring Systems
Mindstorms: children, computers, and powerful ideas
Mindstorms: children, computers, and powerful ideas
Scratch for budding computer scientists
Proceedings of the 38th SIGCSE technical symposium on Computer science education
Programming by choice: urban youth learning programming with scratch
Proceedings of the 39th SIGCSE technical symposium on Computer science education
Communications of the ACM - Scratch Programming for All
Learning computer science concepts with scratch
Proceedings of the Sixth international workshop on Computing education research
What do students learn about programming from game, music video, and storytelling projects?
Proceedings of the 43rd ACM technical symposium on Computer Science Education
Spaghetti for the main course?: observations on the naturalness of scenario-based programming
Proceedings of the 17th ACM annual conference on Innovation and technology in computer science education
A decentralized approach for programming interactive applications with JavaScript and blockly
Proceedings of the 2nd edition on Programming systems, languages and applications based on actors, agents, and decentralized control abstractions
Assessment of computer science learning in a scratch-based outreach program
Proceeding of the 44th ACM technical symposium on Computer science education
Challenge and creativity: using .NET gadgeteer in schools
Proceedings of the 7th Workshop in Primary and Secondary Computing Education
Proceedings of the 12th International Conference on Interaction Design and Children
Hi-index | 0.00 |
Visual programming environments are widely used to introduce young people to computer science and programming; in particular, they encourage learning by exploration. During our research on teaching and learning computer science concepts with Scratch, we discovered that Scratch engenders certain habits of programming: (a) a totally bottom-up development process that starts with the individual Scratch blocks, and (b) a tendency to extremely fine-grained programming. Both these behaviors are at odds with accepted practice in computer science that encourages one: (a) to start by designing an algorithm to solve a problem, and (b) to use programming constructs to cleanly structure programs. Our results raise the question of whether exploratory learning with a visual programming environment might actually be detrimental to more advanced study.