An extended case study on the introductory teaching of programming. - Michael William Jones (2010)