Review: JavaScript: The Good Parts by Douglas Crockford

  • April 29, 2011
  • James Skemp
  • review

The following is a review of JavaScript: The Good Parts, written by Douglas Crockford.

Focused discussion on the parts of JavaScript to learn more about

At the beginning of last month Scott Hanselman had a Hanselminutes episode titled "JavaScript and jQuery: Moving beyond Alert()." During this episode he spoke with two JavaScript ... (experts? gurus?) users, and this book was mentioned as one to read if you wanted to get a better understanding of JavaScript. I primarily use jQuery, but since advanced JavaScript users recommend you go beyond that, I figured it was worth looking into what the author had to say.

Douglas Crockford also has videos available on Yahoo!, so I started there, where he talks about some of the items brought up in this book. However, since I couldn't focus long enough on the videos, and find reading to be a better experience, I picked up a copy of his book.

There were two things I wanted to get out of this book. First, I wanted to understand the best way to write my code, to have the least impact on others. Second, I wanted to gain at least a couple good tips about how JavaScript works 'under the hood.'

Having read the book I now have a better idea of what avenue to pursue for the first, to make my JavaScript code much more object-orientated (Closures). I also gained more than a dozen helpful tidbits reading the book, that did indeed further my knowledge of JavaScript, that will result in better code, no matter whether I use a library/framework or not.

The book is indeed short, and I was able to sit down with it and read it over the course of a handful of hours, although I expect to go back and read at least one of the chapters again (and keep the book around as a reference, since I purchased an electronic copy).

There are a handful of sections that are stepping stones to the functionality that should actually be used, and if you have no plans to use his JSLint analyzer, then one chapter will be unnecessary. However, while I was on the fence about passing code through it before, having now read his book, and the chapter where he details, again, the specifics on why JSLint flags certain JavaScript code, I believe I'll now actually run some code through it, once I implement his other recommendations.

But, as noted above, I did indeed learn a number of new things about JavaScript, that will help me write better code.

As already mentioned, I purchased an electronic copy of the book, and therefore can't speak to the quality of physical copies. However, I've generally found O'Reilly books to be well made.

Four of five stars, since I believe the free videos he did will help a number of people that learn that way, thereby making the purchase of this book unnecessary, as well as that he could have trimmed some of the extraneous material from this book to make it that much more concise.