// the find
bevacqua/js
:art: A JavaScript Quality Guide
A JavaScript style guide written by Nicolas Bevacqua circa 2014, targeting pre-ES6 CommonJS/AMD module patterns. It covers spacing, linting, naming, and patterns like guard clauses and named function expressions. Aimed at teams that need a written baseline to argue from, not a tool that enforces one.
The guard clause and named-function-in-callback sections are genuinely useful and hold up today. Recommending JSHint over JSLint was the right call for the era. The comment philosophy — explain why, not what — is correct and still routinely ignored. The 'avoid prototypal inheritance unless you have a perf reason' stance is honest and not the usual OOP cheerleading.
Frozen in 2014: recommends `var`, `'use strict'`, array-as-string-buffer, and `[].slice.call(arguments)` — all superseded by `let`/`const`, ES modules, template literals, and rest params. No mention of `async`/`await`, `Promise`, or any ES2015+ feature. Recommends JSHint, which is effectively dead — ESLint with a shared config does everything here automatically and the guide becomes redundant. The section on avoiding prototypal inheritance contradicts nothing in modern JS but the factory-function pattern it promotes has its own tradeoffs (no `instanceof`, higher memory per instance) that go unacknowledged.