Book Review : Eloquent JavaScript

Eloquent JavaScript, 3rd Edition: A Modern Introduction to Programming

Reflects the current state of JavaScript

Why I read this book?

In 2013, I started doing a lot more JavaScript based work predominantly focused around developing Node.JS, I purchased a number of JavaScript based books to get myself more familiar with the language – an event I previously discussed in JavaScript – The good parts book review

It was also around that time that I originally purchased Eloquent JavaScript: A Modern Introduction to Programming ( 2nd Edition ) , although I can’t claim I read the book cover to cover, I have certainly dipped in and out of it a number of times throughout the years. I really liked the authors ability of clearly explaining things. I also liked his clear and easy to follow examples.

So when I noticed that the author has now released a third edition to include all the new features available in JavaScript, I thought I’d get the book as another reference book for my desk.

What I liked about the book

The book is divided into the 3 parts which provides 3 different entry points for the 3 different audiences it caters for.

Part 1

Caters for the novice or student developers and provides some great detail by discussing aspects like processors and memory that developers should have an understanding of.

It then also discusses the fundamental aspects of JavaScript and programming languages in general covering details like:

  • Functions
  • Classes
  • Data Structures
  • Objects
  • Ansynchronous Programming
  • Regular Expressions

Its worth a read even for the most seasoned of developers, if like me and the memory is not as great as it used to be, its a great refresher.

The book also then digs deep into the latest ES6 Features like:

  • Arrow functions
  • Promises
  • Observables
  • async/await

All code examples have been written in ECMAScript 2015 (ES6) syntax which is ideal for programmers working with modern web application frameworks.

For the Junior developers, be warned though the book does ramp up fairly quickly in part 1, but if you have a grounding on the basics of software development you should be OK.

Part 2

Part 2 tends to focus on the early early days of JavaScript, the browser wars and the Document Object Model (DOM).

Marijn spends quite a bit of time discussing speed and performance aspects of various software development languages and what developers should be looking out for.

There is also great discussion on maintainability and debugging.

Part 3

Disussed Node a little more and goes a bit more in depth on speed and performance.

What I learned from book

I still very much enjoyed this book, and again I must admit to the fact that I haven’t read it cover to cover, but I am still dipping in and out of it.

I am still a big fan of the authors writing style and the way he explains things seems to resonate well with me.

Who should read this book

I believe this book would make a great addition to any developers reference books. In my opinion, this book would be a great book for junior to mid level developers who really want to take JavaScript seriously – I know it’s not really a language a lot of developers like to take seriously.

Why I recommend this book

I’ve said it before but I really like the authors style of writing and clarity of explanations. The sample code and exercises also work, which can be a rare feature in tech related books.

The book is written in an easy-going conversational manner. Each example builds on previous examples, each chapter builds on the previous chapters. Slowly building up your knowledge.

Gary Woodfine

Technical Director at Denizon
Gary is Technical Director at Denizon, an independent software vendor specialising in IoT, Field Service and associated managed services,enabling customers to be efficient, productive, secure and scalable in a way which helps them address and reduce their ecological impact.

Denizon's product line successfully integrate IoT, Artificial Intelligence and Blockchain technology to enable efficient, productive, secure and scalable solutions to help organisations address increasing energy demands, ecological impact and Health & Safety concerns of their staff.

Latest posts by Gary Woodfine (see all)