Software Engineer's Library Part 1.5

Post Image

News of this page’s demise have been greatly exaggerated. I have not written for a while due to private matters and I am happy to announce this blog will soon be invigorated with new content.

To deliver on the promise below is the review of my most recent reading:

“Understanding ECMAScript 6”

by Nicholas C. Zakas

Having had the opportunity to purchase the book cheaply via the agency of the excellent Humble Bundle I decided to give it a go.

As most likely most of the young modern programmers I have dabbled to an extent with Javascript. I have played around with React, Express, React Native and even plain old JQuery. However, it has never been my primary language of choice having prefered Python in the past and more currently Ruby. I felt obliged though in effort to remain professional to tackle a book on my less proficient language first.

The book offers gentle and detailed intoduction to the mordern state of Javascript. In its 13 chapters it covers various components and features of the language with special emphasis on elements introduced in ECMAScript 6.

The books is of mediocre length but due to its composition it is quite quick read for people knowing elementary and above JavaScript. The plentiness of content can be overwhelming though as JavaScript despite what one may believe is quite a feature rich language. For more impatient readers reading chapters out of order is possible provided one posseses elementary knowledge of the language.

The book offers insight into vital components of the language such as variable initilization in ES 6, collections and their iterations (with and without generators), destructuring, promises and much more. It even covers more advanced topics in chapter 12 where it goes into reflection API and Proxy objects in JavaScript.

It will surely be a great resource for people preparing for interviews in JS as it goes into the very nitty-gritty of the language, giving background on unusual or unintuitive behaviours (Hello variable hoisting….

I have found not all were chapters were equally insightful and entertaining, but overall the book is a solid read for brushing up on the syntax and modus operandi of modern JavaScript. Considering JavaScript is a language rarely lectured at universities, many programmers (including myself), though they are capable of delivering working JavaScript code, lack the general overview of the language. I cannot say that this book will suffice in gaining holistic knowledge of the language, but it certainly will give you more confidence when traversing modern JS code.

The book is swarming with examples detailing many of the features of ES 6 and comparing them to similar patterns in ES 5 which makes it an excellent resource for people who want to migrate their JS knowledge to the newest version.

I really like the cover of the book. It portrays aptly what this book is. It is a map of modern JavaScript. It will allow you to traverse your JavaScript codebase with more confidence, maybe will guide you on a new path when solving a problem, or give you a sneaky one liner for your trip. It won’t however make you a seasoned guide. Only practice can achieve that since to quote Korzybski “The map is not the territory”.