Author: Zak Ruvalcaba & Anne Boehm
Audience: Students and educators
Reviewer: Ian Elliot
Murach's books are well known for being designed for self study or in an organized course. They have multiple exercises at the end of each chapter and try to be self contained. This one is no different and if you like Murach books you will like this one.
If you really are complete beginner than all of these topics are too much to take in from just 150 pages - each needs a book. However, if you have met the ideas before, this is a reasonable clarification and is enough to get you up to speed. If you don't master the ideas, or mostly already know them, you don't have much chance of getting far with the next part.
Section 2, the longest one of the book, is called jQuery essentials. It starts off with a look at getting jQuery up and running and how it simplifies your program. For me it doesn't really explain the joy of jQuery - a powerful way to work with DOM and browser independence. It does say this but it doesn't really convey the horror of the alternative of trying to sniff out which browser your code is running in. The chapter covers the simpler and most useful selectors and methods. They are presented as a set of tables listing each one with a short description. Then below there are a few examples. The problem is that often the examples don't illustrate the subtle points of using the selectors or methods. This is the most complicated part of using jQuery and yet it gets just six pages of explanation and then we are into a bigger example and three smaller ones.
Chapter 8 is far more down to earth and explains how to work with forms and data validation in jQuery. As with animation and effects there are better form/validation packages but jQuery has some good ways of doing things if you you are already using it.
Chapter 9 returns to core jQuery and explans DOM manipulation and traversal. Both of these are advanced topics and beginners often have trouble getting to grips with them. They really deserve a chapter each. As before the methods are introduced using tables and a few inadequate examples. For example after introducing a list of filtering methods we have the example:
This really does raise questions in the mind of the beginner - what does first pass to fadeOut, what ever it is .next() steps to the next item in it and then pass that to fadeIn. Of course this isn't how it works but the reader hasn't been taught how to think about the jQuery object that is returned with the results and how filters reduce the elements in the list but DOM traversal method move you in the DOM irrespective of the list. If you read the explanation very carefully you will find that it is correct but to understand it you need to know how next works and that was explained somewhere else.
This is where section 2 comes to an end and the book gives up trying to teach you the core of jQuery.
Most programmers regard jQuery UI as something separate from jQuery and an understanding of it isn't nearly as important as getting to grips with jQuery proper. Nevertheless Section 3, jQuery UI essentials, consists of more than 50 pages in two chapters on the topic.
Section 4 is about Ajax, JSON and APIs. It starts with a basic intro to Ajax in jQuery which is a big topic, but it gets just one chapter and no real discussion of anything other than the very basics and lists of functions and methods you could use. After this we have chapters on how to use various APIs - Google Maps, Geolocation, Storage and Web Workers and there is not much about jQuery here.
The final section is on jQuery Mobile, which again is something completely separate from jQuery - they just happen to share a first name. As with jQuery UI, not every programmer using jQuery uses jQuery Mobile.
Overall this isn't a bad book on jQuery but it doesn't spend enough time getting you to use the core jQuery features. It spends too much time on jQuery UI, jQuery Mobile and various APIs that have nothing to do with jQuery at all. Of course, this might be exactly what you are looking for but if you want to master jQuery you probably need a different book.
Author: Robert Sedgewick, Kevin Wayne, and Robert Dondero
Publisher: Addison Wesley
Audience: Students expecting an academic approach
Reviewer: Mike James Python is often the language of choice for academics so why not an academic book on Python?
Author: Bruce Tate, Ian Dees, Frederic Daoud, Jack Moffitt
Publisher: Pragmatic Bookshelf
Date: January 6, 2015
Audience: Language enthusiasts
Reviewer: Mike James Seven more languages? Do we need to look at another seven?