#376 — March 9, 2018

Read on the Web

JavaScript Weekly

Could Array.prototype.flatten Become 'smoosh'?

This week, TC39 member Michael Ficarra suggested renaming the flatten method to smoosh to avoid breaking sites using MooTools' incompatible flatten method. The dislike for 'smoosh' went viral and people rapidly suggested alternatives like squash, flat and chain, while André Staltz started a campaign to ‘prevent smoosh’!

The current state of play is the TC39 committee (who work on the standardization of ECMAScript and are actually really nice) are keeping their options (and dialogue) open while Brian Terlson reminds us "TC39's active GitHub users are not always representative of the entire committee."

How I Built a Super Fast JS Framework — The creator of Radi.js, a new tiny front-end library, shares why he’s created it when there are already tons of front-end libraries around — performance.

Mārcis Bergmanis

Power Your Apps with Angular UI Components and Spreadsheets — Build complete enterprise web applications with GrapeCity’s dependency-free, Angular JavaScript solutions. Includes Spread’s full-featured Excel-like spreadsheets and Wijmo’s collection of IntelliSense-enabled grids, charts, and input controls.

GrapeCity JavaScript Solutions sponsor

Loading Third-Party JavaScript — A jam-packed article from Google on how to find and fix issues related to loading third-party JS. How do you load third-party scripts efficiently? Learn it all here.

Addy Osmani and Arthur Evans

Beyond React 16: Time Slicing and Suspense API — Last week Dan Abramov gave his ‘Beyond React 16’ talk showing off ideas coming to React in the future, which are reflected upon here.

Prosper Otemuyiwa

Node v8.10.0 (LTS) Released — A significant LTS release for production systems with updates to V8, libuv, npm, Unicode and OpenSSL support. 9.8 is out too. Also, remember we have Node Weekly for each week’s Node news :-)

Gibson Fahnestock

Let’s Build a Custom Vue Router — A thorough walkthrough of building a custom client-side router for Vue when the official one doesn’t quite meet requirements.

Hassan Djirdeh


Lead React/Redux Engineer - Remote, SF, or Halifax, Canada — We’re an ambitious startup seeking an experienced front-end engineer to bring our React architecture forward.


Frontend Engineer for Leading Open Source Company — Love coding web apps & building reusable high-performance UI components? Help define open source web app UI for large-scale enterprises.

Liferay, Inc.

Find a Job You're Passionate About — Vettery connects you directly to hiring managers at over 4,000 top companies. Make a profile today and land your dream job.



Building a Serverless Real-Time Chat App with AWS AppSync — AppSync is AWS’s fully-managed GraphQL service and interacting with it from JavaScript is pretty straightforward.

Adrian Hall and Ed Lima

What’s New in ES2018? — Lots of code examples in this slidedeck.

Benedikt Meurer and Mathias Bynens slidedeck

10 Tips for JS Debugging Like a Pro at the ConsoleRecommended by Sarah Drasner this week.

Yotam Kadishay

Preserve Build Integrity & Prevent Problems with Deterministic Builds — The most common thing a customer will say in a support ticket is that their builds are suddenly failing even though “nothing has changed” on their end. This is almost never true.

CircleCI sponsor

The JavaScript Learning Landscape in 2018 — Books, podcasts, etc.

Jason Rodriguez

🎬 Videos, Screencasts and Talks

▶  The Fundamentals of Testing Angular Components

Jesse Palmer

▶  Evan You's 'State of Vue.js 2018' Keynote

Vue.js Amsterdam Conference

🔧 Code and Tools

SlimerJS: Script a Headless Firefox Browser from JavaScript

Laurent Jouanneau

Instantly Seeing the Results of Your Code While You Are Writing It

Wallaby.js sponsor

Create Angular Libraries in No Time with 'Schematics'

Netanel Basal

Real-Time Error Monitoring, Alerting, and Analytics for JavaScript 🚀 — Report JS errors to Rollbar with full stack trace and diagnostic data.

ROLLBAR sponsor

DoneJS 2.0 Released: A Framework for High-Perf Realtime Webapps

Matthew Phillips

TinyState: A Tiny, Powerful State Management Library for Angular

Sebastian Holstein

Awaity.js: Functional, Lightweight Alternative to Bluebird — Built with async/await in mind.

Asaf Katz

OpenPGPjs 3.0: An Open Source OpenPGP Library


Vue Tour: Simple, Customizable 'Guided Tour' Plugin for Vue


Workly: Simply Move a Function or Class to a Worker Thread

Preet Shihn


AmsterdamJS Conference 2018 (May 31-June 1)

KnowJS 2018: An Online Workshop with 4 JS Experts — Takes place April 13. Costs money but the teachers are great.

Certified Fresh Events

Seen on Twitter

Let's make everything compile-to-2017-level-JavaScript