Computing Reviews

Introduction to computer science using Python :a computational problem-solving focus
Dierbach C., Wiley Publishing,Hoboken, NJ,2013. 612 pp.Type:Book
Date Reviewed: 08/21/14

This book is intended as a textbook for an introductory course in programming with Python. Chapter 1, “Introduction,” presents a broad, multi-faceted overview of computer science, problem solving, algorithms, hardware, the binary numbering system, software, programming concepts, and Python. Chapter 12, “Computing and Its Developments,” contains a collection of short essays about the highlights of the computer field and the people involved from the 1800s to 1995, from Charles Babbage to James Gosling. Between them are chapters dealing with Python. The book concludes with an appendix that includes instructions to install Python, a very detailed tutorial on using IDLE, Python’s own integrated development environment, and a quick Python reference summary. No instructions are given on how to use Python from the command line. The book does not contain any references or suggestions for further reading.

Chapters dealing with Python begin with a restatement of the contents of the chapter and expected learning outcomes. These chapters also contain motivational material; instructional material that includes code shown line-numbered and highlighted with a gray background; boxes that repeat and summarize important concepts; “Let’s Try It” sections that include code to be run to observe the results; problems that are analyzed, coded, and reviewed in detail; self-assessment questions; program modification problems; and program development problems. Some programs contain intentional mistakes; Dierbach points out the incorrect results, analyzes their causes, and describes their solutions. Many of these mistakes are similar to the ones that beginning programmers frequently make, so seeing them resolved can be very helpful to the novice reader.

The book contains all the material expected in an introduction to Python: data expressions, control structures, functions, lists, tuples, dictionaries, sets, object-oriented programming, turtle graphics, and recursion. Modular design and incremental development are thoroughly illustrated. Surprisingly, three very useful flow-control statements, break, continue, and pass, are not mentioned.

The abundance of programming exercises is one of the best features of this book. Most are simple enough that an instructor can assign several at a time without fear of overload. The more coding the reader does, of course, the better he will learn Python.

Although the book has a lot going for it, there is room for improvement. The writing, to put it charitably, is less than graceful. By far the worst defect is this: Dierbach uses parentheses, and to a lesser extent quotation marks, to the point of excess, and mostly incorrectly. This book almost certainly contains the highest ratio of parentheses to sentences of any book I have ever read. I found that extremely annoying. If the text is updated for a second edition, I would strongly recommend rewriting it and eliminating parentheses and quotation marks entirely. It would also be beneficial to have the entire book independently edited for proper English usage.

More reviews about this item: Amazon

Reviewer:  Edgar R. Chavez Review #: CR142636 (1411-0917)

Reproduction in whole or in part without permission is prohibited.   Copyright 2024 ComputingReviews.com™
Terms of Use
| Privacy Policy