---
title: "Everything New in ES2016, 2017, and 2018"
publication: "JavaScript Weekly"
issue: 380
published_at: "2018-04-06"
canonical_url: "https://javascriptweekly.com/issues/380"
---

This week's JavaScript news       

#380 — April 6, 2018 

[Read on the Web](https://javascriptweekly.com/issues/380)   

JavaScript Weekly  

[Examples of Everything New in ES2016, 2017, and 2018](https://medium.freecodecamp.org/here-are-examples-of-everything-new-in-ecmascript-2016-2017-and-2018-d52fa3b5a70e) — This is a worthwhile roundup of all the new bits and pieces in recent ECMAScript specs, but note that `SharedBufferArray` support has been disabled in most runtimes due to Spectre, so give that a miss. 

Raja Rao DV   

[Martin Fowler Announces 2nd Edition of "Refactoring"; Switches Book from Java to JavaScript](https://martinfowler.com/articles/201803-refactoring-2nd-ed.html) — This is a big deal given the weight this book has in the field. 

Martin Fowler   

[JavaScript to Rust and Back Again: A wasm-bindgen Tale](https://hacks.mozilla.org/2018/04/javascript-to-rust-and-back-again-a-wasm-bindgen-tale/) — [wasm-bindgen](https://github.com/rustwasm/wasm-bindgen) enables interoperability between WebAssembly modules and JavaScript. 

Alex Crichton   [![\](https://copm.s3.amazonaws.com/30baadd0.png)](https://www.scrivito.com/?utm_source=newseltter&utm_medium=email&utm_campaign=cooperpress_20180406) 

[Scrivito: the World’s First JS CMS Solely Based on ReactJS](https://www.scrivito.com/?utm_source=newseltter&utm_medium=email&utm_campaign=cooperpress_20180406) — Scrivito is a user friendly, secure and serverless JavaScript CMS. Due to client-side rendering, it is 100% maintenance free and combines WYSIWYG editing with maximum flexibility for developers. Pricing starts at $4.99 - [get a 30 days free trial now](https://www.scrivito.com/?utm_source=newseltter&utm_medium=email&utm_campaign=cooperpress_201804066). 

Scrivito sponsor   

▶[Learn RxJS in 60 Minutes for Beginners](https://www.youtube.com/watch?v=PhggNGsSQyg) — RxJS is used for reactive programming using observable streams and this is a great ‘from scratch’ crash course. 

Gary Simon   

[Understanding JavaScript Proxies](https://codeburst.io/understanding-javascript-proxies-by-examining-on-change-library-f252eddf76c2) — Uses an examination of Sindre Sorhus’ [on-change](https://github.com/sindresorhus/on-change) library to dig into how [proxies](https://ponyfoo.com/articles/es6-proxies-in-depth), a feature introduced in ES6, work. 

Arfat Salman   

[A Beginner’s Guide to JavaScript Geolocation Tracking](https://hackernoon.com/the-comprehensive-beginners-guide-to-javascript-geolocation-tracking-11f7a1bba400) — A 4 part series from PubNub brought together in one place walking through bringing the Google Maps JavaScript API together with PubNub’s real-time services. 

Joe Hanson   

[webpack 4.5.0 Released](https://twitter.com/webpack/status/981620021599158272) 

webpack on Twitter   

[What's New in Aurelia? Aurelia's 2018 Q1 Report](http://aurelia.io/blog/2018/04/02/aurelia-2018-q1-report/) — Aurelia is also now [included in the RealWorld project.](http://aurelia.io/blog/2018/04/04/aurelia-realworld-app/) 

Rob Eisenberg  

💻 Jobs  

[Sr. Fullstack Engineer (Remote)](https://www.stickermule.com/careers) — Sticker Mule is looking for passionate developers to join our remote team. Come help us become the Internet’s best place to shop and work. 

Sticker Mule   

[Mobile Developer - Milan, Italy](https://www.motork.io/jobs/mobile-developer/) — MotorK is looking for passionate Junior and Senior mobile devs to join the team. Great place to work and career opportunities. 

MotorK   

[No Search, No Spam, No Hassle](http://lp.woo.io/JSW1?utm_source=jsw&utm_medium=cpc&utm_campaign=1) — SW engineer positions in SF and NY personalized to you. Discreetly create a profile on [Woo.io](http://lp.woo.io/JSW1?utm_source=jsw&utm_medium=cpc&utm_campaign=1) today. 

woo.io  

📘 Tutorials  

[Hit The Ground Running with Vue.js and Firestore](https://www.smashingmagazine.com/2018/04/vuejs-firebase-firestore/) — Firestore is a new data storage approach from Google Firebase. 

Lukas Van Driel   

[Learn Kotlin in 2 Days](https://www2.bignerdranch.com/bootcamps/courses/kotlin-weekend-intensive/) — $99 Introductory, online rate. In-person rate available to join us at the Ranch. 

Big Nerd Ranch sponsor   

[Tips to Make Your webpack Bundle Smaller When Using JS Libraries](https://github.com/GoogleChromeLabs/webpack-libs-optimizations) 

Google   

[Dr. Axel's JavaScript Array Cheatsheet](https://gist.github.com/rauschma/f7b96b8b7274f2e2d8dab899803346c3) 

Dr. Axel Rauschmayer   

[[1\] + [2\] - [3\] === 9? A Look Behind JavaScript Coercion](https://wanago.io/2018/04/02/1-2-3-9-looking-into-assembly-code-of-coercion/) 

Marcin Wanago   

[Making a Statically-Linked, Single-File Web App with React and Rust](https://anderspitman.net/2018/04/04/static-react-rust-webapp/) — Experimental but neat. 

Anders Pitman   

[A Simple Guide to Taking a Web Page Offline (with Service Workers)](https://blog.formpl.us/a-simple-guide-to-taking-a-web-page-offline-using-service-workers-f4c42e7b4ada) 

Adeyinka Adegbenro   

[A Killer Vue.js Blog Demo: Launch in 2 Hours Tops](https://snipcart.com/blog/vuejs-blog-demo) 

Snipcart sponsor   

[Write Better JavaScript With Webpack](https://forestry.io/blog/write-better-javascript-with-webpack/) 

DJ Walker   

[Using ES6 Collections: Map, Set, WeakMap, and WeakSet](https://www.sitepoint.com/es6-collections-map-set-weakmap-weakset/) 

Kyle Pennell   

[A Practical Guide to Using and Creating Angular Directives](https://www.sitepoint.com/practical-guide-angular-directives/) 

Claudio Ribeiro  

🔧 Code and Tools  

[Fly Edge Apps: Running JS at the Edge](https://fly.io/articles/fly-edge-applications-global-javascript/#jsweekly) — Imagine a CDN but more dynamic and with more control. 

Fly.io   

[gron: A Tool That Makes JSON 'greppable'](https://github.com/tomnomnom/gron) — It’s written in Go (yes, [we have the newsletter](https://golangweekly.com/)) but may prove handy to JS developers too. 

Tom Hudson   

[One API for All the Tools](https://segment.com/?utm_source=jsweekly&utm_medium=emailspn&utm_campaign=brand&utm_content=hp) — Try Segment and integrate 200+ tools with the flip of a switch. 

Segment sponsor   

[An ESLint Plugin for JSON i18n Translation Files](https://godaddy.github.io/2018/04/02/introducing-eslint-plugin-i18n-json/) 

GoDaddy Open Source   

[Sails.js 1.0: A Rails-esque MVC Framework for Node](https://sailsjs.com/) 

The Sails Company   

[Glide.js: A Dependency-Free ES6 Slider and Carousel](https://glidejs.com/) — _“Designed to slide. No less, no more”_ says the creator. 

Jędrzej Chałubek   

[vue-testing-library: A 'Low Surface Area' Testing Library for Vue](https://github.com/dfcook/vue-testing-library) — Inspired by Kent C Dodds’ [react-testing-library.](https://blog.kentcdodds.com/introducing-the-react-testing-library-e3a274307e65) 

Daniel Cook   

[casex: A Function for Transforming Word Casings](https://github.com/pedsmoreira/casex) — Based on a pattern like ‘ca_se’ or ‘CaSe’. 

Pedro Moreira   

[Nothing: A Chainable, Callable Mock Object Which Always Returns Itself](https://github.com/slmgc/Nothing) 

Vladimir Simonov         

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

[Change your email address](https://javascriptweekly.com/edit_subscription/*|UID|*) or[Stop getting this newsletter](https://javascriptweekly.com/leave/*|UID|*) 

© Cooper Press Ltd · Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom
