The Teaching and Learning of Programming by Garner Stuart