INTRODUCTION
The programming model in introductory CS courses is typically based on executing a main program with a single entry point or evaluating expressions in an interpreter. Events and user interfaces are left for later. Event handling, even for simple button clicks, can be remarkably complex (e.g., specifying a listener in Java).
With MIT App Inventor, our CS0 students are immediately introduced to an event-based processing model as they build mobile apps [1]. Their first programs involve