"Visual, block-based programming environments present an
alternative way of teaching programming to novices and
have proven successful in classrooms and informal learning
settings. However, few studies have been able to attribute
this success to specific features of the environment. In this
study, we isolate the most fundamental feature of these environments,
the block interface, and compare it directly to
its textual counterpart. We present analysis from a study
of two groups of novice programmers, one assigned to each
interface, as they completed a simple programming activity.
We found that while the interface did not seem to affect
users’ attitudes or perceived difficulty, students using the
block interface spent less time off task and completed more
of the activity’s goals in less time."
"Scratch is also notable for its use of executable program fragments. Scratch programs can be built in small chunks, and any piece of Scratch code can be individually executed, with its effects immediately visible."