The authors explain that the inspiration for writing this was their belief that computer science courses gave an insufficient picture of the discipline. To remedy this, they have gathered an immense cache of knowledge, which is less an introduction to the field and more a comprehensive companion to study.
Invitation to Computer Science is painted as a handbook for a module in the first six months of a degree. But it ranges over such ground that it works more as a handbook to the first two years, and would do sterling work as a reference text for the third. The difficulty of examples and problems within the text is variable; some are quite simple, others extremely hard.
Michael Schneider and Judith Gersting have outdone themselves in introducing and explaining substantial foundations of almost every area of modern computer science. Downloadable chapters and programming exercises keep coverage of current popular programming languages up to date and relevant, and an excellent ethics chapter contributed by Keith Miller rounds off with a worthwhile look at tackling problems of professional ethics.
It is laid out in a methodical, structured fashion, beginning with a foundation in algorithms as the core of computer science, and then building up from hardware, through increasingly sophisticated programming languages, to complex applications and operating systems. Although the structure is logical, if it had begun with high-level programs and languages that readers may be familiar with and descended into more fundamental systems, this might have eased the learning process.
Prospective students may feel discouraged by the depth and complexity of the text. They shouldn't be. A read through before the first and the second year will pay dividends, and students should refer to the book per module as necessary, and not be afraid to skip to different sections rather than reading it as a whole.
The book's scale and range can be intimidating, but by the same token it is uniquely useful for different modules encountered throughout the course of an undergraduate degree in computer science. Many specialist texts are useful for a single module alone and then shelved indefinitely; Invitation to Computer Science escapes this fate and remains consistently relevant to the course.
Who is it for? Computer science undergraduates and applicants.
Presentation: Well structured. Would you recommend it? Yes, with a warning not to be intimidated by it.
Invitation to Computer Science
Authors: G. Michael Schneider and Judith L. Gersting
Edition: Fourth international
Publisher: Course Technology