#460 — October 25, 2019

Read on the Web

JavaScript Weekly

The Problems of Shared Mutable State and How to Avoid Them — A deep dive from JavaScript maven Dr. Axel on mutable state, how it can cause problems when multiple entities wish to rely upon it, and how techniques like copying, non-destructive updates, and immutability can help. A lot to digest here, including plenty of advanced bits.

Dr. Axel Rauschmayer

Electron 7.0 Released — Another major release for the popular cross platform Chrome and JavaScript-powered desktop app platform. 7.0 brings Electron up to Chrome 78, V8 7.8, and Node 12.8.1 standards, and there’s a new nativeTheme API for working with changes to the OS’s theming/color scheme.

Electron Team

Explore the Code[ish] Podcast — A podcast from the team at Heroku, exploring code, technology, tools, tips, and the life of the developer. New episodes weekly.

Heroku sponsorpodcast

▶  27 Talks from Nordic.js 2019 — Nordic.js is a JavaScript event that took place in Stockholm two weeks ago and the talks are ready for you to enjoy. Some highlights:

NordicJS on YouTube

Node.js 13 Released; Node.js 12 Becomes Active LTS — Node 13 becomes the new ‘current’ version of Node (that gets all the new features first) and Node 12 joins 10 and 8 as an LTS (Long Term Support) release.

Node.js Foundation

Puppeteer 2.0 Released: Control Headless Chrome from Node — The popular ‘remote control’ for Chrome now uses Chromium 79, requires Node 8+, and includes new APIs for emulating timezones and media types. Screenshotting has also been improved.

Google Chrome Team

Quick bytes:

💻 Jobs

Software Engineer Frontend (f/m/d) — We are looking for an experienced Software Engineer Frontend (React) (f/m/d) to join our international team.

collect Artificial Intelligence GmbH

Senior Web Developer at Dr. Bill — Dr. Bill helps Canadian doctors save time by streamlining their billing. Help lead our team into the next phase of growth.


Have You Tried Vettery? — Vettery specializes in tech roles and is completely free for job seekers. Create a profile to get started.


📘 Articles & Tutorials

Writing Asynchronous Tasks in Modern JavaScript — A good introduction to the idea of asynchronous execution (a fundamental concept in JavaScript) working through from legacy approaches through to modern examples with promises and async/await.

Jeremias Menichelli

Building a Typing Game with MelonJS — A cute look at using melonJS, a Canvas-based game engine, to build a simple game. We used to link to a lot of fun tutorials like this in the early days but they seem less common now.

Fernando Doglio

Build Video in Just Two API Calls — Mux Video is an API-first platform, powered by data and designed by video experts to make beautiful video possible for every development team.

Mux sponsor

Formatting JavaScript Dates with Moment.js

Valeri Karpov

How to Implement Redux in 24 Lines of JavaScript — Redux itself started as a very small library so it’s reasonably trivial to recreate its basic features quickly as a way to learn more about what’s involved.

Yazeed Bzadough

How to Build a Tic Tac Toe Game with Svelte — You don’t just get one game building tutorial this week, you get two!

Akshay Kadam

Free Download: Results from Our Video Developer Survey 2019

Bitmovin sponsor

Svelte vs React: Some First Impressions

Murat Catal

Cascading Cache Invalidation

Philip Walton

🔧 Code & Tools

Peaks.js: Interact with Audio Waveforms — A client-side JavaScript component to display and interact with audio waveforms in the browser. Here’s the repo.

Indrek Lasn

μPlot.js: A Fast, Tiny Time Series Chart Library — This is for when you have a lot of data to plot quickly: “from a cold start it can create an interactive chart containing 150,000 data points in 40ms.”

Leon Sorokin

The Most Complete Spreadsheet Solution for JavaScript Apps - SpreadJS — Fast enterprise JavaScript spreadsheet for delivering true Excel-like spreadsheet experiences. Download free eval.

SpreadJS by GrapeCity sponsor

Mermaid: Generate Diagrams and Flowcharts From Text — Write out your diagrams and flowcharts in a plain text, Markdown-esque way, and get nice graphics out.

Knut Sveidqvist

RxDB: A Realtime Database for JavaScript Applications — You can query the current state but also subscribe to state changes, making it useful for UI-based apps where you want live/real-time updates. It’s not new but it’s had a solid stream of releases recently.


Mitt: A Tiny 200 Byte Functional Event Emitter / PubSub

Jason Miller

⚡️ Quick Releases