Friendly, personal approach to learning
Bloated without purpose
Major content missing, even for a beginner
Way too expensive
The gushing five-star review by "Richard O. Scherlitz"... he provided the cover design for this book. I'd take his review with a grain of salt.
I understood by looking at the title that I'd be in for some review material while reading, but that prospect did not bother me. By page 40, I was getting bored, but really eager to get into the meat of embedded PIC programming, so I skimmed ahead, passing several pages on topics I was quite familiar with. I skimmed even further, twenty more pages through almost text-less pages of screenshots on how to setup MPLAB. Some of these screenshots show nothing to select other than the "Next" button on the dialog box. Unfortunately, I soon discovered that the content never progresses, rather, the author simply elaborates on everything he's already discussed in the first part of the book. His examples are clear, but the subject ends way too quickly. No pointers or function pointers. No polling. No Interrupts. No service routines. We are talking so basic that I can't recommend it to anyone with any programming experience whatsoever - regardless of the language. These topics are dare-I-say, monumental in embedded programming and should, at the very least, be touched on.
This instructional book is written in first person. While not detracting from the technical capacity of chapters, it does bloat the content unnecessarily. I feel as if I've paid for the author's notes as he learned how to program a PIC microcontroller; a memoir on PIC programming, if you will. The reader will immediately feel less like a student, and more like a friend. At first, it's fun and new, but in some cases I feel like it's the almost-blind leading the blind. The intimidation of jumping into something new has left, but so has the book's professionalism and quality.
The fonts - Chuck, what happened? The code snippets go from Arial to Times New Roman to Courier - Serifs, no Serifs, italics and non-italics without purpose. Even font size and indentations are different from one example to the next. Again, I get the feeling that I'm looking at someone's notes, simply thrown together. Not only does this start to degrade the quality of the presentation, but it makes identifying examples of code difficult for the novice. All code should be presented in a fixed-width font (courier or the like) without exception, and indented if it pleases the author. At the very least, the novice requires consistency.
There are enough inconsistencies, programming vocabulary errors, grammatical errors, and spelling errors to cause me great frustration when considering the price tag. I did not see an editor listed.
The book has 200 pages. The last twenty pages are actually a copy and paste of header files included with the MPLAB and compiler suite. The index - I'm not sure anyone would believe me if I said it, but it is truly disastrous. There are index entries for "for-Loop" and "For-Loop". Worse yet is the index entry for the keyword "for". The entry is a numeric listing of every page in the book that uses the word "for". No, no, not just in programming context, but in actual preposition context. "For" example. "For" what it's worth. What is this index really good "for"? In other words, it lists almost every page of the book, comma separated, from 5 to 196. Other entries are similar, like the keyword "if".
You'll notice a common theme with the book, and that's bloat. First person bloat, font size bloat, screenshots that take up a full page but don't illustrate anything, copy and pasted header files in the appendix, the crazy index, and then the pages that are blank (nothing but a giant page number at the bottom). I guess the reader could put some additional content there.
Some of my points may sound petty; however, I'm reviewing a book, not a pamphlet. I'd say that Chuck had 50 pages of material, and wanted to sell a 200 page, $40 book.
If you have never programmed before, and you can get this book for $15 or less, I'd say you'd have a usable starter book. You will outgrow it before you finish it, but you won't feel like you've overpaid for the information.