摘要:First-year computer science (CS1) university students traditionally have difficulties understanding how to program. This paper describes research introducing CS1 students to programming concepts using a Scratch programming language guided visual execution environment (VEE). The concepts addressed are those from an introductory programming course (sequences, variables, operators, conditionals, loops, and events and parallelism). The VEE guides novice students through programming concepts, explaining and guiding interactive exercises executed in Scratch by using metaphors and serious games. The objective of this study is, firstly, to investigate if a cohort of 124 CS1 students, from three distinct groups, studying at the same university, are able to improve their programming skills guided by the VEE. Secondly, is the improvement different for various programming concepts? All the CS1 students were taught the module by the same tutor in four 2-h sessions (8 h), and a qualitative research approach was adopted. The results show students significantly improved their programming knowledge, and this improvement is significant for all the programming concepts, although greater for certain concepts such as operators, conditionals, and loops than others. It also shows that students lacked initial knowledge of events and parallelism, though most had used Scratch during their high school years. The sequence concept was the most popular concept known to them. A collateral finding in this study is how the students’ previous knowledge and learning gaps affected grades they required to access and begin study at the university level.