Forrest Norvell discusses ES6, the standards process, and his ideas on how the community can get started now to shape the language and adoption of ES6.
11:58 - Our community has the power to figure out what features in ES6 are useful. Sort out the parts that are genuinely useful. Figure out the good parts now.
14:48 - Module proposal benefited from critical discussions from the community
16:00 - Tools for using ES6 features now
17:26 - Development community needs to get on top of things and teach how we use the features with emphasis on the compelling parts.
18:50 - Forrest no longer recommends Crockford’s Good Parts to new developers because half is scar tissue and dogma, instead Dave Herman’s Effective JavaScript which gives them a mental toolkit to determine their own style
20:55 - Don’t concentrate on what’s cool, but concentrate on what’s stable and effective. As an educator be conservative.
21:29 - Warnings from Java, Perl history
24:00 - Typescript and Coffeescript bring things to the table but they could fragment the community
24:40 - ES timeline
26:30 - Features need enough examination to ensure they are finished
28:00 - Keeping some things in user land to see what community comes up with. Developers as leaders in this transition.
29:00 - npm growth, npm Inc dev ops, addressing pain points in npm CLI
34:30 - All software languages have something that is terrible. Community is something that makes Node.js special.
35:45 - Node.js in the enterprise is happening very rapidly. A very interesting time to be in the middle of this evolution.
Links
Forrest Norvell, npm product maker at npm Inc. twitter
npm Inc. - npm, Inc. supports the JavaScript community by providing the registry where developers publish and share packaged open-source modules.
traceur - Traceur is a JavaScript.next-to-JavaScript-of-today compiler. Compile ES6 code into JS which can be used by today’s browsers.
es6-shim - Provides compatibility shims so that legacy JavaScript engines behave as closely as possible to ECMAScript 6 (Harmony).
es6-module-transpiler - ES6 Module Transpiler is a JavaScript library for converting JavaScript files written using the ES6 draft specification module syntax to existing library-based module systems such as AMD, CommonJS, or simply globals.
sweet.js - Macros for javascript which can be used to add in ES6 features.
es6ify - browserify v2 transform to compile JavaScript.next (ES6) to JavaScript.current (ES5) on the fly.
Spider Monkey - Firefox JS engine written in C++. Currently Spider Monkey is leading in the number of ES6 features that are implemented. (56/66 according to Kangax)