---
title: "This week's JavaScript news, issue 319"
publication: "JavaScript Weekly"
issue: 319
published_at: "2017-01-26"
canonical_url: "https://javascriptweekly.com/issues/319"
---

This week's JavaScript news, issue 319

This week's JavaScript news — [Read this e-mail on the Web](http://javascriptweekly.com/issues/319)

JavaScript WeeklyIssue 319 — January 26, 2017[Making Transpiled ES Modules More Spec-Compliant](http://www.2ality.com/2017/01/babel-esm-spec-mode.html)Dr. Axel demonstrates how a proposed ‘spec mode’ for Babel will help you prepare for a world of native ES modules. Dr. Axel Rauschmayer 
[Refactoring 30,000 Lines of JS with Types](https://www.reaktor.com/blog/refactoring-30000-lines-js-types/)How to significantly change 30,000 lines of client-side JavaScript without breaking things? This team tried both Flow and TypeScript and brought some minimal typing into play. Nicholas Kariniemi 
[Ionic 2.0: Framework For Building Mobile Apps with Angular](http://blog.ionic.io/announcing-ionic-2-0-0-final/)[Ionic](http://ionicframework.com/) 2.0.0 comes with new cross-platform components with 100% Material Design support, a 'native feature' plugin system, and enhanced performance. Official Ionic Blog 
[![npm, Inc.\](https://copm.s3.amazonaws.com/ddb096d6.png)](https://medium.com/npm-inc/customer-convos-1-revin-guillen-elliemae-inc-d786f5355ea4#.kuiscy7fv?utm_source=javascriptweekly&utm_medium=email)[“Use your nice tools without jumping through unnecessary hoops”: npm on the job](https://medium.com/npm-inc/customer-convos-1-revin-guillen-elliemae-inc-d786f5355ea4#.kuiscy7fv)npm’s the obvious choice for managing JavaScript dependencies, but when Ellie Mae built a web app, they needed to keep some code private. How? “Choose tools that work with the grain of how you want to work, and work with the grain of your tools…” npm, Inc.Sponsor
[Gmail to Block .js File Attachments Soon](https://gsuiteupdates.googleblog.com/2017/01/gmail-will-restrict-js-file-attachments.html).js is to join .exe, .bat, and other file types in being blocked for security reasons. You’ll need to archive or host them instead from February. Google 
[An Introduction to Parsing Expressions with Nearley](https://medium.com/@gajus/parsing-absolutely-anything-in-javascript-using-earley-algorithm-886edcc31e5e)[Nearley](http://nearley.js.org/) is a fast and modern parser toolkit for JavaScript that uses the [Earley algorithm](https://en.wikipedia.org/wiki/Earley_parser) and this is a handy walkthrough the ideas involved. Gajus Kuizinas 
[An Introduction to Observables for Angular Developers](http://developer.telerik.com/topics/web-development/introduction-observables-angular-developers/)What are ‘observables’? Why are they helpful for asynchronous communication? And how can you use them in an Angular 2 application with RxJS? Answers here. Jen Looper 
[ES Proposal: Shared Memory and Atomics](http://www.2ality.com/2017/01/shared-array-buffer.html)ES2017 is picking up some new concepts that will help with building higher-level concurrency abstractions. Here’s Axel with the deep dive. Dr. Axel Rauschmayer 
[ECMAScript Regexes Are (Going To Be) Getting Better](https://mathiasbynens.be/notes/es-regexp-proposals)Regular expressions were added to JS 18 years ago and have only been slightly improved. Mathias looks at five new proposals under consideration to improve them further. Mathias Bynens 


Jobs

- [Senior JavaScript Developer (Seattle)](https://nordstrom.taleo.net/careersection/2/jobdetail.ftl?job=270593)Love a challenge? Help us ship the fastest retail experience on the web. We value collaboration, passion for delivery, and work life balance. Nordstrom
- [JavaScript Developer at X-Team (Remote)](https://x-team.com/javascript-developer/?utm_source=newsletter&utm_medium=email&utm_campaign=javascript-january-17)We're looking for a developer with an extensive knowledge of JavaScript and skills in different frameworks and libraries. We are 100% remote and we provide the funding needed to help you achieve your goals and grow. X-Team
- [Software Engineer, Web - Zürich, Switzerland](https://www.centralway.com/de/careers/open-positions/details#oii51fwq?utm_source=javascriptweekly&utm_medium=email)Centralway is seeking an experienced programmer to come and join the team. The right candidate will be responsible for building and maintaining high performance web applications with cutting-edge technologies. Centralway Numbrs

In Brief

[Using Redux for Managing Immutable State](https://www.toptal.com/javascript/immutability-in-javascript-using-redux) tutorial
David Xu

[JavaScript Array Methods: Mutating vs. Non-Mutating](http://lorenstewart.me/2017/01/22/javascript-array-methods-mutating-vs-non-mutating/) tutorial
Loren Stewart

[Working with HTTP Streams with Cycle.js](http://ivanjov.com/working-with-http-streams-with-cycle-js/) tutorial
Ivan Jovanovic

[New Course: ⚡️ ES6 The Right Parts with Kyle Simpson](https://frontendmasters.com/courses/es6-right-parts/) course 
Uncover new ES6 JS features like arrow functions, generators and computed properties with Kyle Simpson's book series: _"You Don't Know JS"_.
Frontend MastersSponsor

[A Look at TypeScript 2.1's Mapped Types](https://blog.mariusschulz.com/2017/01/20/typescript-2-1-mapped-types) tutorial 
Create new types from existing ones by transforming properties.
Marius Schulz

[How To Conditionally Load Modules with StealJS](https://www.bitovi.com/blog/how-to-conditionally-load-modules-with-stealjs) tutorial
Manuel Mujica

[Source Maps with webpack in Chrome](http://erikaybar.name/webpack-source-maps-in-chrome/) tutorial
Erik Aybar

[JS Library Development in ES6 with Babel, Mocha and npm Scripts](https://blog.hellojs.org/10-minute-javascript-library-development-in-es6-with-babel-mocha-and-npm-scripts-9f08b22e69c3#.ek5ci57fe) tutorial
Hugo Di Francesco

[Getting Started with Vue.js 2.0 in 2017 for Beginners](https://www.youtube.com/watch?v=NT3OxvS7McU) video 
A tidy 20 minute intro and live coding demo.
Erik Hanchett

[Code-Splitting Your Way to Better Performance with Webpack](https://www.youtube.com/watch?v=QH94CXVv3UE) video 
A quick 6 minute conversation.
Google Chrome Developers

[ES6 and Beyond Workshop at PayPal (January 2017)](https://www.youtube.com/watch?v=t3R3R7UyN2Ylist=PLV5CVI1eNcJgNqzNwcs4UKrlJdhfDjshf) video
Kent C Dodds

[JSDOW: Chart Daily/Weekly Download Numbers for npm Packages](http://www.jsdow.com/) tools 
Who wants to add a virtual stock game to this? ;-)

[Best in Class UI Components for Angular Development – Kendo UI for Angular](http://www.telerik.com/kendo-angular-ui?utm_medium=newsletter&utm_source=jsweekly&utm_campaign=dt-kendo-ang2--trial-jan17) code 
100% jQuery-free Angular components built from ground-up which deliver the business app essential building blocks.
ProgressSponsor

[BuckleScript: A JavaScript Backend for the OCaml Compiler](http://bloomberg.github.io/bucklescript/) code
Bloomberg Finance

[Tilt.js: Tiny Parallax Tilt Effect for jQuery](http://gijsroge.github.io/tilt.js/) code
Gijs Rogé

[qart.js: Merges Pictures and QR Codes for Artistic QR Codes](https://github.com/kciter/qart.js) code 
Clever, I’m surprised the output worked (I tested it!)
Lee Sun-Hyoup

Curated by [Peter Cooper](http://twitter.com/peterc) and published by [Cooperpress](https://cooperpress.com/).

Like this? You may also enjoy: [FrontEnd Focus](http://frontendfocus.co/) : [Node Weekly](http://nodeweekly.com/) : [React Status](http://react.statuscode.com/)

[Stop getting JavaScript Weekly](*|UNSUB|*) : [Change email address](*|UPDATE_PROFILE|*) : [Read this issue on the Web](http://javascriptweekly.com/issues/319)

© Cooperpress Ltd. Fairfield Enterprise Centre, Lincoln Way, Louth, LN11 0LS, UK
