Why and How JavaScript Developers Use Linters
Automatic static analysis tools help developers to automatically spot code issues in their software. They can be of extreme value in languages with dynamic characteristics, such as JavaScript, where developers can easily introduce mistakes which can go unnoticed for a long time, e.g., a simple syntactic or spelling mistake. Although research has already shown how developers perceive such tools for strongly-typed languages such as Java, little is known about their perceptions when it comes to dynamic languages.
In this paper, we investigate what motivates and how developers make use of such tools in JavaScript projects. To that goal, we apply a qualitative research method to conduct and analyze a series of 15 interviews with developers responsible for the linter configuration in reputable OSS JavaScript projects that apply the most commonly used linter, ESLint.
The results describe the benefits that developers obtain when using ESLint, the different ways one can configure the tool and prioritize its rules, and the existing challenges in applying linters in the real world. These results have direct implications for developers, tool makers, and researchers, such as tool improvements, and a research agenda that aims to increase our knowledge about the usefulness of such analyzers.
BibTeX:
@inproceedings{aniche-how-js-devs-use-linters, author = "Kristín Fjóla Tómasdóttir and Maurício Aniche and Arie van Deursen", title = "Why and How JavaScript Developers Use Linters", booktitle = "Proceedings of 32nd IEEE/ACM International Conference on Automated Software Engineering (ASE)", year = 2017, doi = "10.1109/ASE.2017.8115668" }