The main thesis is:
"If there is a feature of a language that is sometimes problematic, and if it can be replaced by another feature that is more reliable, then always use the more reliable feature."
If you accept this idea then the next is obvious - use JSLint to enforce those replacements.
Quite a lot of the talk is about ideas that apply to any language and you can't really argue with many of the general points. You can, however, take issue with some of the recommendations but if you do try to think about the general objectives before you make a final decision.
I have to admit that the arguments are put so persuasively I have changed my mind on using a particular construct that I had long ago decided was safe as long as you understood it.
Its crimes appear to be a few sloppy and potentially error-prone constructs which are very easy to avoid.
The latest version of Mathematica and the Wolfram language have been released with 555 new functions, support for 3D printing, more for machine learning and neural networks, and even data on Pokemon. [ ... ]