Two key trends are shaping the teaching of programming to the next generation of computing engineers at present. The first is ...