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.
As professional programmers we are obviously interested in which languages are in demand and how they compare in terms of how much they pay. This information can be found from an analysis of job adv [ ... ]