Microworlds, games, animations, mobile apps, puzzle editors and more: What is important for an introductory programming environment? - Xinogalos, Stelios (Education and Information Technologies)