#409 — October 26, 2018

Read on the Web

JavaScript Weekly

Introducing React 'Hooks' — Hooks are a proposed new feature for using state and other React features without writing classes. You can try them out in an alpha build of React 16.7 and keep up with discussion in this RFC.

React

WebAssembly’s Post-MVP Future: A Cartoon Skill Tree — A fantastic guide to understanding where WebAssembly fits into the big picture, what’s yet to come, and what impact WebAssembly could have on the Web.

Mozilla Hacks

⚛️ New Course: Complete Intro to React, v4 — Learn to build real-world applications in React. Much more than an intro, you’ll start from the ground up all the way to using the latest features in React 16+ like Context and Portals. We also launched a follow up course, Intermediate React.

Frontend Masters sponsor

V8 Version 7.0 — A brief update on the latest beta of the V8 JavaScript engine. It goes stable when Chrome 70 comes out soon, but is also included in Node 11.0.

Michael Hablich

Playing Mortal Kombat with TensorFlow.js — A detailed walkthrough of what it took to building a posture classification algorithm using TensorFlow.js and MobileNet in order to play the ‘beat-em-up’ game Mortal Kombat.

Minko Gechev

▶  Discussing the State of JavaScript with Addy Osmani — A discussion with Addy Osmani about the state of JavaScript and his favorite performance tools. Just 13 minutes so ideal if you get a quick break.

Google Chrome Developers

LazyBrush: Smooth Canvas Drawing with Any Pointing Device — Uses a mechanism to allow users to create smooth lines and curves. Works with both mouse and touch. The demo is neat.

Jan Hug

💻 Jobs

Sr. Fullstack Engineer (Remote) — 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

ReactJS Developer at Komoot (Remote) — Millions get inspired and plan adventures with our apps. To help us make Komoot the place to go to plan outdoor adventures, we’re looking for an ambitious React developer to join our team.

Komoot

Join Our Career Marketplace & Get Matched With A Job You Love — Through Hired, software engineers have transparency into salary offers, competing opportunities, and job details.

Hired

📘 Tutorials and Opinions

The Intl.RelativeTimeFormat API — Enables localized formatting of relative times without sacrificing performance. Chrome 71+ only so far.

Google Developers

Airbnb's Extensive JavaScript Style Guide — Airbnb’s extremely popular guide continues to get frequent updates.

Airbnb

Understanding Currying in JavaScript — Currying is a way in functional programming for turning a function with multiple arguments into a chain of nested functions.

Chidume Nnamdi

The Importance of Readable and Reusable Tests: Why We Built Gauge — Strong design opinions can cause teams to over-engineer test suites, making maintenance hard. Gauge solves this, helping you to create easy to maintain tests.

Gauge sponsor

Property Order is Predictable in JavaScript Objects Since ES2015 — Useful to know, I hadn’t realized this.

Stefan Judis

▶  Internationalize your Web Applications with Globalize.js

Alolita Sharma

▶  Create an Engaging Native Mobile App with Vue and NativeScript

Jen Looper

How to Create Custom HTML Markers on Google Maps

Dan Ward

Top 10 Things to Avoid When Considering Low-Code

Progress Kinvey sponsor

How to Reduce the Impact of JavaScript on Page Load Times — Lessons learned from serving billions of pageviews across thousands of sites.

GoSquared Engineering

Isoline Routing in an Angular Application using the HERE Routing API — Isoline routing is used to calculate an area that can be reached within a certain travel time or distance.

Nic Raboy

🔧 Code and Tools

A Promises and async/await Cheatsheet

Frontend Armory

clean_logs: A Better console.log for the Browser — Wraps around console.log, produces nicer output and provides logging levels.

Pablo Giani

Glean: A Refactoring Tool for React Code

Wix Engineering

What Does JSBin, Nuxt, Code Sandbox, and Material-UI Have in Common? — They all use CodeFund to provide passive income for their projects. Find out if CodeFund can help you.

CodeFund sponsor

IronDB: A 'Relentless' Key-Value Store for The Browser — Relentless in the sense that it redundantly stores data in multiple browser stores (i.e. in cookies, localStorage, sessionStorage & IndexedDB) and tries to ‘self heal’ upon data loss.

Ansgar Grunseid

React v16.6.0 Released — More about this in this week’s React newsletter.

Sebastian Markbåge

Squirrelly: A Fast, Lightweight, and Simple JS Template Engine — Only 2.6KB gzipped and supports partials, helpers, filters, and native code.

Ben Gubler

face-api.js: Face Detection and Face Recognition in the Browser — Uses TensorFlow.js.

Vincent Mühler