After observing the JS “community” for a while and its various skirmishes I have come to the conclusion that, due to their capacity in attracting loud voices, these are the areas that JavaScript developers seem to care most about:

  • Automatic Semi-colon Insertion
  • eval is evil
  • ES5 shimming (e.g. partial/incomplete shims)
  • Browser support
  • JSLint, JSHint, i.e. anything that judges your JS
  • JavaScript vs. CoffeeScript
  • JavaScript vs. Dart
  • ES5/6 features (e.g. the fat arrow)
  • Coding conventions (white-space, curly-braces)
  • MV* frameworks (Backbone, AngularJS, Knockout, Ember, etc.*1000)
  • Node.js
  • Millisecond performance differences
  • OLD: jQuery vs. Dojo vs. YUI vs. Prototype vs. Mootools vs. ExtJS
  • OLD: Native prototype augmentation

To clarify, there are a lot of really valuable discussions that occur surrounding the above topics, but there is also a lot of passionate rhetoric defending various sides with little basis in fact or pragmatism.

On the other side of the coin we have areas that are still cared about but are rarely fought over with such passion and rhetoric:

  • Minification tools
  • JavaScript engines
  • Build tools
  • Web inspectors / profilers
  • API naming conventions

Somewhere in between these two extremities lies AMD.

This is just an obvervation… and I thought it worth posting. Did I miss anything?