JavaScript Developer Survey 2011 Results

15 Dec 2011 | By Alex Young | Tags community surveys

Note: Send feedback about our surveys by using the contact form or @dailyjs.

The results are in! Thanks to everyone who took part, your answers are now the property of the community.

The raw result set is here: JavaScript Developer Survey 2011, Data.
A summary of the results generated by Google Docs can be downloaded here: JavaScript Developer Survey 2011, PDF.

I got the feeling that client-side developers felt a little underrepresented by the survey, so in future I can run additional client-side, server-side, or even Node-specific surveys if enough people are interested.

The purpose of this survey is purely to gather information that will help people develop software and services for JavaScript developers. For example, if you’re looking to develop an open source project and want to see what areas are lacking, then maybe this data might be useful. Download the data, and use it!

Environment

Almost everyone who took part said they do browser development (98%). Server-side web app development is also popular, at 45%. This is up 10% from last year. I find it encouraging to see an strong interesting in Unix scripting (14%).

The preferred server-side interpreter was Node, at 71%. 12% selected Other, and there were some strongly-worded comments about including more environments. Also, clarification will be applied in future surveys to state whether the question relates to browser, server, or both, and in this case it wasn’t clear to some people.

Testing, Static Analysis, Benchmarks

58% of people don’t write tests. This is actually down from 68% last year. I appreciate that testing might seem awkward for client-side development, but it’s not uncommon to find open source client-side code bundled with tests, so I’d encourage both browser-based and server-side developers to at least write basic tests if possible.

JSLint is still the king of static analysis (67%), but Google Closure Compiler and YUI Compressor are close by at 25% and 21% respectively.

Now the shocking news: Jasmine (44%) has edged out QUnit (41%)! Vows is also doing well with 13%. Express/Mocha scored 11%, slightly ahead of Nodeunit at 8%.

Another surprising trend is YUI Compressor is beating Google’s Closure Compiler for minifying code, at 41% vs. 31%. JSMIN is down in popularity again, from 25% last year to 20% this year.

The well-known cabal of Node developers with prominent packages on NPM are known for writing benchmarks. However, this survey showed that 81% of respondents use client-side tools for debugging. I suspect the Node benchmark fetishists (and I mean that in the nicest possible way) were represented by the 20% that answered “benchmark using my own code”.

Project Discovery and Hosting

Most people find JavaScript libraries and tools through GitHub (81%). Search engines are the next most popular method (51%). NPM seemed a little bit low to me, at 20% — the website isn’t actually too bad for discovering projects, it supports keywords and has links to dependent projects. When I’m working on a Node project I often find useful libraries through search.npmjs.org.

GitHub is the champion of hosting for personal JavaScript projects (90%). Bitbucket is the second most popular at 10%. I wonder if Bitbucket will grow next year given the generous deal they have on private project hosting?

Google’s CDN is the most popular third-party hosting service (83%).

Debugging

WebKit inspector has edged out Firefox with 66%, compared to 58%. Surprisingly, 525 people (51%) use node --debug, which interested me because a lot of people ask me about Node debugging without even realising it has the --debug option.

131 people said they use the Cloud 9 IDE as part of the debugging question. I’ve tried this service out myself and it does seem like an interesting way to work on client-side code (technically any code, but the debugging for client-side code is impressive).

Languages

PHP remains the most popular language amongst our readers, with 46%, which is the same as last year. I expected (wanted) more people to be interested in Clojure (2%) or Lisp in general (2%), but Ruby, Java, Python, and C#/.Net were the other most popular languages, which is again unchanged from last year.

“Other”

I promised people in the comments that I’d mention some of the “Other” field data. This is by no means an exhaustive look at this data, but some interesting observations.

Some people said they had “no preference” when it came to interpreter. Others seemed upset that I didn’t include ‘V8’, but I meant the question to be purely about server-side JavaScript, so I should have clarified that and just included Node, Ringo, etc.

In terms of unit testing, I found the following mentioned:

  • Ringo’s test module
  • Sinon.JS
  • Evidence.js
  • Around 10 custom or homegrown unit testing frameworks
  • “I must start doing this”, “I CODE EVERYTHING PERFECT ON THE FIRST TRY

Previous Surveys


blog comments powered by Disqus