The Joy of JavaScript (Manning)

Author: Luis Atencio
Publisher: Manning
Date: March 2021
Pages: 360
ISBN: 978-1617295867
Print: 1617295868
Audience: JavaScript developers
Rating: 4
Reviewer: Ian Elliot
Joy you say!

The Joy of JavaScript - I'd agree that there is a lot of Joy in the language, even if some don't agree. JavaScript is an idiosyncratic language in the era of strongly-typed, class-based, object-oriented languages and Java it certainly isn't. A book that promotes the language isn't likely to sell to a complete beginner who doesn't have the necessary brain modules to even conceive that a language might conceal some joy. Obviously this is for the reasonably proficient JavaScript programmer wanting to improve their knowledge and the way that they use the language.

Now here we hit a problem because this book is really only going to be joyous for you if you want to embrace the functional approach. Functional programming isn't for everyone and some think it introduces unnecessary barriers to just getting on with the job of coding. Programming is difficult enough without introducing artificial difficulties that have to be overcome. Of course, you might believe that functional programming is the only way to do things. In which case you are going to be equally disappointed because JavaScript it not a functional language. At best you can take a function-oriented approach to programming which, used in the right place, is a good thing.

So what we have is a book that is selling a programming methodology rather than a language. The JavaScript part of the joy is incidental and you could even say a bit of a damper.

Banner

Chapter One starts off with a look at JavaScript. Only it doesn't. Really it's more a look at some ideas of functional programming with an angle towards JavaScript. The book really gets going with Part 1 on Objects and we get the usual look at prototypical inheritance, constructors and class-based inheritance. The final chapter in the section is on linked and compositional approaches to objects.

Part 2 is all about Functions - as you might expect, they play a big role in functional programming. Here we learn what functional programming is - currying, closure, immutability and side effects. Later we learn about even more advanced ideas -functors and monads. This is all very high functional programming as opposed to the way a typical JavaScript programmer might make use of functional composition, chaining or mapping to get the job done.

Part 3 is called Code - which doesn't give much idea what it is about. It covers modules and metaprogramming. At least JavaScript is the star in this section and you will learn some ways to use the mysterious symbols.

Part 4, the final part, is called Data which sort of logically follows a section called Code. The main focus he is asynchronous programming - promises and async/await. You also find out about streams including generators.

Overall, this really isn't the Joy of JavaScript, it's the Joy of Functional programming using JavaScript as an example language. This is fine if you really wanted to learn about functional programming, but not so good if you really wanted to find out about JavaScript. The view of JavaScript as a functional programming language is at best only a half appreciation of the bigger picture. JavaScript is a multi-paradigm language with its own strong points which aren't particularly tied to a single, all-encompassing, approach.

JavaScript's joy is in using the parts that suit the problem in hand. If you think that functional programming is the key to the universe then you would be better of seeking joy in Haskell, say.On the other hand, if you want to find out more about functional programming and have to use JavaScript then why not read this book as it fills this slot reasonably well.

For more recommendations of books on JavaScript at this level see 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


The Art of WebAssembly

Author: Rick Battagline
Publisher: No Starch
Date: May 2021
Pages: 304
ISBN: 978-1718501447
Print: 1718501447
Kindle: B08TSYXJTS
Audience: WebAssembly developers
Rating: 5
Reviewer: Ian Elliot
WebAssembly is the coming thing - or so we are told.



Artificial Intelligence, Machine Learning, and Deep Learning (Mercury Learning)

Author: Oswald Campesato
Publisher: Mercury Learning
Date: February 2020
Pages: 300
ISBN: 978-1683924678
Print: 1683924673
Kindle: B084P1K9YP
Audience: Developers interested in machine learning
Rating: 4
Reviewer: Mike James

Another AI/ML book - is there room for another one?


More Reviews

joyjava

Last Updated ( Saturday, 19 February 2022 )