Teaching and learning computational thinking through solving problems in Artificial Intelligence: On designing introductory engineering and computing courses | IEEE Conference Publication | IEEE Xplore