The automated tutoring of introductory computer programming