JavaScript Absolute Beginner's Guide, 2nd Ed
Written by Ian Elliot   

Author: Kirupa Chinnathambi
Publisher: Que
Date: December 2019
Pages: 464
ISBN: 978-0136502890
Print: 013650289X
Kindle: B01HS6KUTE
Audience: Those wanting to learn JavaScript
Level: Introductory
Rating: 2
Reviewer: Ian Elliot
An introduction to the most used language on the planet - important stuff...

There are many ways to write a complete beginner's book, but the one adopted by this particular effort is the equivalent of speak very slowly and keep saying that things are simple. A really good beginner's book understands what beginners do not and finds ways to explain not only the facts of the situation, but also how to think about it. This book isn't bad, but it isn't good either. The huge problem with assuming that the reader is a complete programming beginner is that JavaScript is intimately tied up with HTML and CSS and a lot of other web technologies. To make JavaScript a good beginner's language you either have to assume that the reader knows HTML, in which case they are not absolute beginners, or try to avoid HTML as much as possible, which renders that language slightly sterile. This book doesn't really do either. It starts off by more or less ignoring HTML and then makes use of it later as if it was perfectly natural.

Banner

Part I starts off with the usual basics. It doesn't really tackle what the absolute beginner might not know or what concepts are lacking; it simply starts to explain JavaScript from the basics. So we begin by looking at variables and values and then move on, far too soon, to functions. Next we have loops and conditionals - all of them in great detail without much attempt at focusing on the essential principles. For example, why introduce the switch just after the if? A beginner struggling with the idea of a conditional is not going to be happy with a multiway choice. Next we move on to timers! Yes timers! I have no idea why these figure so early in a basic introduction, but they do. From here we have scope and closure! Really!!! I do not think any beginner is ready for these ideas by this point in any development. They are advanced ideas that can be left till they become a problem.

 

Part II is about objects - mainly using rather than creating them. The topics covered include: primitives as objects, arrays, built-in objects and so on, ending with Immediately Invoked Functions - another out of place advanced topic. Overall the approach has no sympathy for the absolute beginner as it throws in ideas that really don't help the bigger picture. Why introduce the shift method when the reader is just trying to get the idea of indexing? When finally we get to objects, the topic of the prototype chain is introduced after the first few paragraphs about creating objects. Why? You don't need to introduce any idea of the prototype chain until inheritance is involved and what beginner gets to grips with inheritance in JavaScript when they have just found out about objects?

Part III leaves pure JavaScript behind and explains the DOM and how to use it. Of course, to understand the DOM you need to know about HTML so it's not really a suitable topic for the complete beginner.

Part IV is about events - a whole part on events! This is not beginner's JavaScript.

Conclusion

If you are a complete beginner then this is probably not the book for you as it lacks any concept of what your difficulties are. It explains JavaScript syntax very slowly with stories and verbal back slapping, e.g.

The popular way all the cool kids create arrays these days is to use an open and close bracket. Below is our groceries variable that is initialized to an empty array

let groceries =[ ];

If you can cope with the style you might be able to follow, as long as you concentrate really hard.

This book has no real advantage over many other introductions to JavaScript and its haphazard ordering of topics and lack of understanding of what a beginner doesn't know makes it best to avoid. Then there is the casual style with constant asides, stories and mock familiarity - you either like it or hate it.

If you already know some programming, it might serve as a brief introduction, but again its ordering of topics is going to leave you wondering what JavaScript is all about.

For recommendations of JavaScript books see JavaScript Beginners Book Choice and Advanced JavaScript Book Choices in our Programmer's Bookshelf section.

To keep up with our coverage of books for programmers, follow @bookwatchiprog on Twitter or subscribe to I Programmer's Books RSS feed for each day's new addition to Book Watch and for new reviews.

Banner


Learn to Code by Solving Problems

Author: Dr. Daniel Zingaro
Publisher: No Starch Press
Date: June 2021
Pages: 335
ISBN: 978-1718501324
Print: 1718501323
Kindle: B08FH92YL8
Audience: People wanting to learn Python
Rating: 4
Reviewer: Mike James
Solving problems - sounds good?



Computer Graphics from Scratch (No Starch Press)

Author: Gabriel Gambetta
Publisher: No Starch Press
Pages: 248
ISBN: 978-1718500761
Print: 1718500769
Kindle: B085BVJG5B
Audience: People interested in creating 3D graphics
Rating: 5
Reviewer: Kay Ewbank

This is a well written book that explains the topic of 3D rendering, and tries its hardest to mi [ ... ]


More Reviews

Last Updated ( Wednesday, 09 December 2020 )