There are two big holy war questions about code style in JavaScript: tabs vs. spaces and semicolons vs. no semicolons. Of course there are more, like where to put a comma in a multiline array declaration, but these two are causing the most casualties.
I was wondering if it’s worth our time. Can we all just adopt the most popular style if there is one, and stop arguing? So I’ve analyzed 100 most depended-upon npm packages and ran a survey with the same questions that ended up with 1169 respondents.
npm results:
Survey results:
npm results:
Survey results:
I was expecting to see numbers closer to 50% for the first two questions. But I was surprised by actual popularity of spaces for indentation in JavaScript: tabs are almost non-existent. Same for semicolons: not as many people aren’t using them as you can imagine reading Twitter.
The results show less diversity in code style of popular open source projects: more than half use 2 spaces with semicolons. Many still don’t use any tooling to validate code style.
It could also be because many popular open source projects are old but in the survey people described what they used on their latest project.
So if you’re starting a new JavaScript project AirBnb preset (2 spaces, semicolons, etc.) will be a good choice: your code style will be familiar for many developers.
Note: two projects of 100 are written in CoffeeScript. CoffeeScript itself is one of them. They and one with only native code were excluded from the results.
Data and chart sources. Follow me on Twitter if you like this article.
Subscribe to my newsletter: https://tinyletter.com/sapegin