Good JavaScript Reading, Part 2: JavaScript Gardens and Interventions

JavaScript Garden

js garden

JavaScript, a.k.a. ECMAScript, but originally named Mocha, then LiveScript, is many things at once, making it a confusing, messy beast. It’s ubiquitous, useful, powerful and even after all this time, has some goodies in its bag of tricks that will surprise you. It’s also clunky and confusing; and to make matters worse, misinformation in the form of dead-wrong documentation and bad JavaScript code examples abound. I’m going to borrow a backhanded compliment from my friend and former co-worker Adam “Adam Bomb” Carter and call JavaScript a “hot mess”. And I do mean it in the nicest sense of the phrase.

One of the attempts to help alleviate the confusion is JavaScript Garden, a site created by Ivo Wetzel and Zhang Yi Jiang. Written for the benefit of both new JavaScript developers who want to get it right the first time as well as long-time JavaScripters who are wondering if there are better ways to do things.

javascript garden

Devon Govett of Badass JavaScript has this to say about JavaScript Garden:

…it covers common misconceptions and bugs related to objects, prototypes, functions, this, closures, the arguments object, scoping, equality and comparisons, typeof and instanceof, and much more. The site is very nicely written and designed, and I recommend that you check it out!

It’s awesome to have great JavaScript documentation, and to have a community that takes the time to write it. If you are interested in contributing, or you find errors, JS Garden is hosted on Github, so just file issues and send them pull requests to help make this resource even better.

JavaScript is the most important programming language today, and JavaScript Garden is one of the most important JavaScript sites today. Make sure it’s in your bookmarks!

W3Fools: A W3Schools Intervention


When searching for information about HTML, CSS and JavaScript, W3Schools (no link, let’s not give them any more search engine juice) often shows up in the results, thanks to its longevity and some good hard SEO work on their part. The problem is that the site is all kinds of wrong, from its inaccurate and out-of-date information, to its name that falsely implies an association with the W3C to the certifications of dubious value that they offer. Among the erroneous or outdated info on this site is their JavaScript reference material.

W3Fools, a site created by “members of the front-end dev community”, explains why W3Schools is best avoided. Give it a read, and after that, you’ll know why you should generally avoid W3Schools.

This article also appears in the Shopify Technology Blog.