Strategies for improving a Java-based, first year programming course | IEEE Conference Publication | IEEE Xplore