Linting to Ensure JavaScript Code Quality with ESLint

2 min read Michael Carroll on Mar 13, 2015

ESLint, a pluggable linting utility for JavaScript, launched in 2013 to enable developers to create their own linting rules. ESLint is designed to have all rules completely pluggable making it easier for developers to identify suspicious code.

In this talk, Jamund Ferguson discusses the history and philosophy behind ESLint, and walks through the benefits of using ESLint in a number of different situations when linting to maintain code quality.

The History of Code Linting

Code linting is the process of using static analysis to find problematic patterns or code that does not adhere to certain style guidelines. There are code linters for most programming languages, and compilers often incorporate linting into the compilation process. This process is especially useful when using dynamic languages which are more prone error (e.g. JavaScript).

JSLint was created in 2002 by Douglas Crawford, and has since been viewed negatively by many due to the tool’s strict ruleset. In 2011, the more flexible JSHint was created as a backlash against JSLint, yet the tool still faced many limitations.

Have you ever tried to modify JSLint and add a new rule? One does not simply modify JSLint. There are thousands of lines of code where the parser is mixed with the rule engine, therefore, when you need to change a rule, the rule may be in three or four places in those thousands of lines.

About Jamund Ferguson

Jamund is a UI Engineer for PayPal. In his current position, Jamund helped launch the new beta PayPal consumer website using node.js, Backbone, HTML and CSS with a focus on improved performance and mobile usability. He has also contributed to the open source Kraken node.js server project.

Find more of Jamund’s work and talks at