Teaching Programming with Gamified Semantics
Frame-Based Editing: Easing the Transition from Blocks to Text-Based Programming