Learning programming with peer support, games, challenges and scratch | IEEE Conference Publication | IEEE Xplore