I didn’t anticipate such high interest, and next time I’ll make some improvements to the format. Namely, I’ll put the survey up on GitHub first so that the community can collaborate on the questions and options for a couple of weeks before launching the survey. That way, I’ll be able to produce more accurate results and avoid complaints like “I am shocked you didn’t include Emacs!”.
Now, onto the survey results. I’ll remain impartial in delivering the results, so that you can come to your own unbiased conclusions.
A whooping 85% replied that they compile ES6 into ES5. Meanwhile 15% still use CoffeeScript, 15.2% use TypeScript, and a measly 1.1% reported they use Dart.
This was one of the questions I wish I’d approached more collaboratively, as it got 13.8% of “Other” responses. The vast majority of these answers were ClojureScript, elm, Flow, and JSX.
Which ES5 features do you use?
While 79.2% of respondents are on board with functional
Array methods, and 76.3% indicated they use strict mode,
Object.create sees a 30% adoption and getters and setters are only used by 28%.
Which ES6 features do you use?
Notably, arrow functions are the most used ES6 feature among those who took the poll: 79.6%. Let and const together took 77.8% of the pollsters, and promises are also strong with 74.4% adoption. Unsurprisingly, only 4% of the respondents have played around with proxies. Only 13.1% of users indicated they’ve used symbols, while over 30% say they use iterators.
Do you write tests?
While 21.7% never write any tests, most do write some tests, and 34.8% always write tests.
Do you run Continuous Integration tests?
There’s a similar story with CI, although many more people don’t use a CI server – over 40%. Almost 60% of respondents use CI at least sometimes, of which 32% always run tests on a CI serve.
How do you run tests?
59% like to run automated browser tests with PhantomJS or similar, and 51.3% also prefer to perform manual testing on a web browser. Automation in server-side tests amounts to 53.5% votes.
What unit testing libraries do you use?
What code quality tools do you use?
It would seem like respondents are divided between ESLint and JSHint, but JSLint is surprisingly strong after all these years, at almost 30%.
How do you prefer handling client-side dependencies?
npm took over as the client-side dependency management system of choice, with 60% of the votes casted their way. Bower still holds 20% of the audience, and plain old
<script> downloading and insertion managed to get 13.7% votes.
What’s your preferred build script solution?
Build tooling choices are divided, partially due to the healthy amount of different options to choose from. Gulp is the most popular, with over 40% of the votes. Using
npm run is close by, at 27.8%, and Grunt got 18.5% of the audience.
At the moment, it would seem as most people are torn between Browserify and Webpack, although the latter leads by almost 7 points. 29% of users indicated they use transpile Babel modules first, before presumably using one of the two aforementioned tools to pack their modules together.
What libraries do you use?
xhr micro library only clocked in 8% of the votes.
What frameworks do you use?
Unsurprisingly, React and Angular are leading the pack. Backbone is still in a healthy position, with 22.8% of the votes.
Do you use ES6…
Responses were quite divided in this question, with almost 20% never using ES6, over 10% using it exclusively, close to 30% using it extensively and almost 40% using it occasionally.
Do you know what’s coming in ES2016?
Roughly speaking, half of the voters don’t know what’s coming in ES2016, while the other half have an idea of what’s coming next.
Do you understand ES6?
Over 60% of respondents seem to understand the basics, while 10% have no idea about ES6 and over 25% consider they understand ES6 really well.
Would you say ES6 is an improvement?
Almost 95% of the respondents consider ES6 to be an improvement to the language. I’ll congratulate TC39 members next time I run into them!
What are your preferred text editors?
Again, very divided because of the variety of options. Over half the respondents like Sublime Text, and over 30% like to use Atom, its open-source clone. Over 25% voted for WebStorm and also for vi/vim.
What’s your preferred development OS?
Over 60% of voters use Mac, while Linux and Windows users are close to 20% each.
How do you find reusable code, libraries and tools?
Respondents seem to favor GitHub and search engines, but there’s also a healthy dose of blogs, Twitter, and the npm website being consumed.
Almost 60% have attended at least a conference, while 74% indicated they like going to meetups.
Quite divided answers, but fortunately most of respondents don’t have to deal with customers on IE6 anymore.
Which of these features have you heard about?
Over 85% of voters have heard about ServiceWorker, although I’d be curious to know how many of those have played around with it!
There’s so many languages to choose from, I was bound to forget a few, but the results speak for themselves.
Lastly, I wanted to thank everyone who took part of the poll. It was far more popular than I anticipated and I’m looking forward to holding a similar poll next year. Hopefully, it’ll be one that’s even more diverse and perhaps a bit less biased.
What are your take-aways from the survey?