How students learn to program: observations of practical tasks completed | IEEE Conference Publication | IEEE Xplore