Book Review of JavaScript: Novice to Ninja by Darren Jones

JavaScript Reviews This post may contain affiliate links. If you buy something we get a small commission at no extra charge to you. (read more)

JavaScript is a tricky language that has proven immeasurably powerful over the past decade. This book published by SitePoint offers inexperienced developers a chance to truly understand how JavaScript works and what makes it tick.

JavaScript: Novice to Ninja is one of the best JS books you can get to teach yourself everything you need to know.

This book is targeted at beginners who want to dive right into JavaScript after picking up the fundamentals of HTML/CSS. And for that purpose I’d argue this book fits perfectly. It doesn’t get into ES2015, but it does cover enough that right after reading this book you’ll be able to dive into ES2015 on your own.

Book Contents

It should be noted this book comes in at 500 pages long. This is super lengthy!

The intro is very long and kind of boring. Since I already understand a lot about JavaScript there wasn’t much for me in this part. But moving through each chapter just felt right, and that’s a good sign. The writing style makes JavaScript accessible and understandable to a beginner.

Chapters break down like so:

  1. Hello JavaScript
  2. Programming Basics
  3. Arrays, Logic, and Loops
  4. Functions
  5. Objects
  6. The Document Object Model
  7. Events
  8. Forms
  9. The Window Object
  10. Testing and Debugging
  11. Functional JavaScript
  12. Object-oriented Programming in JavaScript
  13. Ajax
  14. HTML5 APIs
  15. Organizing Your Code
  16. Next Steps

Right off the bat you should notice a very detailed flow moving from absolute basics to more modern advanced concepts.

If you already know a programming language then you’ll understand arrays, functions, and maybe even objects(and thus object notation).

And yet by the end you’ll be practicing OOP for JavaScript, AJAX, and HTML5 APIs. These are fairly advanced topics or at least intermediate-level JS concepts.

One of the best things about this book is how it makes you feel comfortable at each stage. The concepts do get progressively more difficult, but I don’t think it’s easy to notice. I actually haven’t done much work in OOP JavaScript so this book was a great primer for me to understand the concepts behind that.

The early chapters can be skipped if you already understand the basics. But somewhere around chapters 6-8 you’ll start getting into much more advanced topics of the DOM, window object, and response events.

Each chapter leads into the next so you rarely need to jump back or skip ahead.

Exercises in the book teach you practical examples of JavaScript in action. The superhero quiz is very fun to build and in the end there’s a sense of pride in completing something so simple with a language that’s often considered very confusing.

This is one of the few books that clarifies all the confusing junk. You can enter this book with zero programming knowledge and still walk away with expert skills writing top-tier JavaScript.

Pros & Cons

The best thing about this book is the easy-to-read explanatory writing style. The author covers JavaScript in a light tone that just makes sense.

You’ll move gracefully from intro topics into more intermediate & advanced subjects. This happens gradually so you could study one chapter per day and have the fundamentals down within a few weeks.

For me personally I felt the introductory material was too verbose. However I do have experience with JavaScript, and this book is undeniably targeted at beginners.

Where it gets awesome is later in the book with debugging code and manipulating page elements in the DOM. If you’re reading this right now and don’t even know what that means, I guarantee you will understand it from this book.

Each chapter ends with an exercise and some carry over from the last. You’ll always be building on top of lessons learned so you’ll constantly be putting the previous chapters into action. This is what makes the book so great.

The one downside here is that SitePoint did not publish this book with an index.

Beginners might not care as much because they don’t even know what to look for. But you can basically forget using this as a reference guide. It is 500 pages long so there is a lot of great info, but without an index it’ll be impossible to reference anything without leafing through pages.

I’m personally willing to completely overlook the lack of an index. Especially in the context of this review I’m trying to think in terms of a beginner just starting out with JavaScript.

The book was written to be followed chapter by chapter. If you take that approach you likely won’t need or worry about an index. If you do need a real JS desk reference I’d recommend JavaScript: The Definitive Guide or just browse through the MDN JavaScript docs online.

Final Summary

I cannot express enough enthusiasm and gratitude for this book. I’ve seen a lot of JS intro books and very few(if any) can compete with Darren Jones’ title.

JavaScript: Novice to Ninja is the best book for any developer hoping to learn JavaScript. It covers the absolute basics and tips for real-world scenarios. It’ll cover JavaScript like a functional programming language while also explaining the basics of working in a browser.

Learning JavaScript can feel weird because it’s not quite a full programming language, but it does have many programming concepts. I do think in many regards it can act like a full programming language but it’s not necessarily designed this way. So this means logic and reasoning skills are necessary to master JS scripting.

But just because you have a logical thought process doesn’t mean you’ll intuitively get JavaScript. It can be hard to self-teach yourself a language like this. With JavaScript: Novice to Ninja you’ll be guided every step of the way, and by the end you really will be a JS ninja.

Review Rating: 5/5
Tags:

Author:

Alex is a fullstack developer with years of experience working in digital agencies and as a freelancer. He writes about educational resources and tools for programmers building the future of the web.