Hill, G. and Turner, S. J. (2011) Problems first. In: Hussey, M., Wu, B. and Xiaofei, X. (eds.) Software Industry-Oriented Education Practices and Curriculum Development: Experiences and Lessons. Hershey, Pa.: IGI Global. pp. 110-126.
This chapter considers the need to focus initial programming education on problem-solving, in advance of programming syntax and software design methodology. The main vehicle for this approach is simple Lego based robots programmed in Java, followed by the programming of a graphical representation/simulation to develop programming skills. Problem solving is not trivial (Beaumont & Fox, 2003) and is an important skill, central to computing and engineering. An approach will be considered, illustrated with a series of problem-solving tasks that increase in complexity at each stage and give the students practice in attempting problem-solving approaches, as well as assisting them to learn from their mistakes. Some of the problems include ambiguities or are purposely ill-defined, to enable the student to resolve these as part of the process. The benefits to students will be discussed including students’ statements that this approach, using robots, provides a method to visually and physically see the outcome of a problem. In addition, students report that the method improves their satisfaction with the course. The importance of linking the problem-solving robot activity and the programming assignment, whilst maintaining the visual nature of the problem, will be discussed, together with the comparison of this work with similar work reported by other authors relating to teaching programming using robots (Williams, 2003)