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.

Watch video on YouTube


Episode InfoEpisode NotesLinksVideos

Episode Info

Episode: CW 007
Published: June 24th, 2014
Tags: nodejs, js,es6,jsconf
Duration: 38:33

Episode Notes

01:36 - Forrest explains his new position at npm Inc.
02:20 - Discussion of Forrest’s JSConf 2014 talk
03:30 - Rise of community standards, Douglas Crockford’s the Good Parts, John Resig jQuery, Promises A+ standard
05:50 - Standards committees, an inside look
08:00 - ES4, ES5, Harmony, ES7 (champion for each feature)
10:00 - test262 - conformance test suite
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.
ES6 compatibility table - ES6 compatibility table, comparing browser versions, Node.js. Links to ES6 feature descriptions.
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)
Effective JavaScript - David Herman’s book
Jeff Barczewski, Founder, CodeWinds twitter
CodeWinds twitter

Videos

JSConf 2014 Talk

Twitter Mentions