Skip to main content

Chapter on Problem-Solving

Two members of the Computing Division of the University of Northampton have contributed a chapter to the book  Software Industry-Oriented Education Practices and Curriculum Development: Experiences and Lessons  edited by Drs. Matthew Hussey, Xiaofei Xu and Bing Wu.  ISBN: 978-1609607975 IGI Global to be published later this year.

Problems First

Gary Hill and Scott Turner


ABSTRACT


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). 

Comments

Popular posts from this blog

Problem Solving Open educational Resource

  Another new Open Education Resource (OER) has been made available by the School of Science and Technology, University of Northampton. Problem-Solving Author: Dr Scott Turner http://find.jorum.ac.uk/resources/19001 Details These mini lectures are intended for undergraduate computing students, for providing simple steps in problem solving before the students learn a programming language. Problem-Solving and Programming is a common first year undergraduate module on the BSc Computing Programme at the University of Northampton. This material was taken from the problem solving part of the module and provides an introduction to five topics in problem-solving. The resource can be found at:  http://find.jorum.ac.uk/resources/19001 After one week on JORUM  93 downloads  and  12 views  of the OER.

One of the best blogs of 2010

The blog Confessions of a mediocre programmer  by Alan Norton is one of the most interesting blogs I read in 2010. Including a great definition of a Mediocre Programmer: " Mediocre programmer  - A programmer who has a limited toolset. He knows the syntax of only the simplest commands, but he knows where to find the syntax for more complex commands. He doesn’t know how to write the most efficient code, but he knows how to rewrite and test the code for greater efficiency if he must. He runs into more roadblocks along his passage to success, but he views each as a challenge and is confident that he will find a path around each roadblock. He may take longer to get there, but he always reaches his goal. He doesn’t know how to create a DLL, but he knows he can if necessary. Like most programmers, he doesn’t particularly like documenting his work but does so anyway because he is a professional. " Alan Norton (2010) A definition which in their heart of hearts a lot of success...

Problem-solving or computational Thinking

Confession time, this has been a research interest for me, along with a number of colleagues, since around 2005. It started with undergraduate students - investigating teaching and developing problem solving skills as a first step in developing programming skills through the use of LEGO-based robots and graphics based programming for undergraduate students. The main vehicle then for developing the problem-solving skills was the LEGO RCX Mindstorms robotics kits and series of gradually more challenging robot-based tasks. Lawhead et al (2003) stated that robots “…provide entry level programming students with a physical model to visually demonstrate concepts” and “the most important benefit of using robots in teaching introductory courses is the focus provided on learning language independent, persistent truths about programming and programming techniques. Robots readily illustrate the idea of computation as interaction”. Synergies can be made with our wo...