Wirth, M. (2004) “Mechanisms for teaching introductory programming using active learning”, Teaching Mathematics and Computer Science, 2(2), pp. 407–421. doi:10.5485/TMCS.2004.0068.