An important step in developing programming expertise is learning programming patterns. These patterns represent reusable partial solutions to common programming challenges, such as the accumulator pattern for summing values (and other sequential variable updates), or the filter pattern for operating only on values that match a condition.
Aug 15, 2023
Instructional videos are an important part of online learning that can support asynchronous courses, distance education, and – in my case – a flipped classroom, where students learn at home and then do hands-on labs in class when I can support them.
Aug 15, 2023
Snap! is a block-based programming language that lets students create expressive apps and simulations easily. This is especially powerful for non-Computer-Science majors, like those in my introductory course, who may want to apply programming to solve problems in their own domains.
Aug 15, 2023
Students learn core programming concepts while making a game with, with scaffolding to support learning.
Aug 15, 2023