These notes were written in 1996 to provide a brief introduction to applying an example problem solving technique to Modula 3 programming. The technique is described in How to Program It and its application to Miranda programming may be found in Programmming It In Miranda. These notes formed part of a course on Problem Solving run for Part I Computing Students by the Computer Science Department at The University of Kent at Canterbury.
Computers are impinging upon our lives in more and more ways and, without finding some far off deserted island to live on, it is impossible to get away from them. They keep our names for junk mailing lists; they control the engines of our cars; they do our washing and microwave our food. They will monitor our movements as intelligent motorway tolls register our vehicles passing through, and active badges watch us move around buildings. Our very lives depend on them as they control aircraft traffic, aircraft themselves, and operate life-critical medical equipment.
The correct operation of computers is clearly of enormous importance and this responsibility lies, to a large extent, in the hands of those who design and create the software to run on computer systems. In this course you will be learning, perhaps for the first time, how to program a computer. Actually writing a program is not terribly difficult, which is why many people pick it up for themselves. What is much more difficult, and what is the challenge of this course, is learning to design and write programs that people like you and me will be able to rely on to work properly - perhaps even rely on for our lives.
© David Barnes, 1996