Two key trends are shaping the teaching of programming to the next generation of computing engineers at present. The first is the proliferation of artificial intelligence (AI) tools capable of ...