Excerpt from book:

Intended readership

This book is primarily intended to be a text for the programming component in an introductory two semester computer science course (some materials are a little advanced and might postponed to later semesters). This intent shows in terms of references to "students", "assignments" and "later studies in computing". However, the book should be equally suited to an individual who wants to learn how to program their own personal computer. If used as a text for an introductory computer science course, the contents of this book would normally be supplemented by a variety of other materials covering everything from "ethics" to "Turing machines".
Assumed knowledge

It is assumed that you are "computer literate". In your school or college, or at work, you will have used word processing packages, and possibly other packages like spreadsheets and data bases. Although most schools do provide at a limited introduction to programming (usually in Pascal or possibly a dialect of Basic), this text does not rely on such past experience.
Programming environment

It is expected that you will use one of the modern "Integrated Development Environments" (IDE) on a personal computer. Examples of such environments include the Borland environment for Intel PCs and the Symantec environment for Macintosh/PowerPC machines. These environments are supplied with comprehensive reference manuals . These manuals give details like how to start programs; they list and explain menu options; they include illustrations showing window layouts with details of all controls. These kinds of reference material are not duplicated in this book.