Plus V8 9.2, the latest from TC39, and simpler JavaScript memoization. |

#​547 — July 16, 2021

Unsubscribe  |  Read on the Web

JavaScript Weekly

V8 v9.2 and the at Function — Every step forward the popular V8 JavaScript engine takes is news, but this is a relatively minor step with the biggest practical addition being the new 'at' method for Array, TypedArray and String. Oh, and Firefox 90 supports it too, plus a couple of other goodies.

Ingvar Stepanyan

The Road to Ember 4.0 — The Ember.js framework is ten years old this year and while it’s not often in the headlines, it’s one of the most solid, reliable and battle tested systems out there and a big update is on the way.

Matthew Beale

What If Your Project Management Tool Was Fast and Intuitive? — Imagine how much more you could get done if your project management tools didn't make you sigh. Clubhouse is the ideal solution for task management, bug tracking, iteration planning, and reporting. Delight the scrum gods and give us a try.

Clubhouse.io sponsor

HTM 3.1.0: A JSX Alternative using Standard Tagged Templates — This clever library has been around a few years but sees an update this week. Think JSX-style syntax but in plain JavaScript (using tagged templates) that requires no transpilation but still supports things like rest spread and referencing components.

Jason Miller

Deno 1.12 Released — The ‘server side JavaScript runtime that isn’t Node’ takes some more steps forward with TypeScript support in its REPL, improved Web Crypto support, and you can upgrade incoming HTTP requests on the (unstable) HTTP server to WebSocket connections.

Casonato and Iwańczuk

QUICK BITS:

RELEASES:

Node 16.5.0 – Now with experimental support for the Web Streams API.
Turf.js 6.5 – Geospatial analysis library.
node-mongodb-native 4.0 – Big release for the official MongoDB driver.
tXml 5.0 – Fast pure JavaScript XML parser.

💻 Jobs

Senior Frontend Engineer (Remote) — We're looking for a Senior Front-End Engineer to join the web team at Unsplash. Small team but big product. Strict TypeScript with plenty of functional programming.
Unsplash

Senior Back-End JavaScript Developer — We’re seeking a developer with experience in full functional programming (Lodash, Ramda & ElasticSearch) to help build the next generation of GovSpend, a civic startup disrupting government procurement. Remote, candidates must be eligible to work in the US.
Govspend

Find a Job Through Hired — Create a profile on Hired to connect with hiring managers at growing startups and Fortune 500 companies. It's free for job-seekers.
Hired

📖 Articles, Opinions & Tutorials

Building a Dynamic Header with Intersection Observer — Ever needed to have a component respond to elements as they’re scrolled to a certain threshold within the viewport? Attaching an event listener to constantly fire on scroll can be performance intensive, but there's a better way..

Michelle Barker

How to Convert Arrays to Human-Readable Lists — A pretty quick tip here, leaning on Intl.ListFormat which deftly takes care of formatting a list in a locally appropriate way.

Amit Merchant

▶  Information Foraging: Tricks Great Developers Use to Find Solutions — Professor Austin Henley explains the tactics veteran developers use to quickly find the best solutions.

Stack Overflow Podcast sponsor

The Ultimate Guide to Browser-Side Storage — Does a pretty good job of covering all the options, right from variables through localStorage and on up to non-standard browser APIs you probably don’t want to be using.

Craig Buckler

How To Migrate from jQuery to Next.js — The title put a confused expression on my face when I first saw it, but it’s broadly about going from a jQuery-based approach to a React-based one for common frontend tasks.

Facundo Giuliani

A Checklist for Freelance React Developers — Robin covers a variety of things to think about if you’re an independent React developer who needs to seamlessly get involved with existing teams and projects.

Robin Wieruch

How Debugging is Changing: Cut Debugging Time with New Approaches to Tracking/Dealing with Errors

Rollbar sponsorebook

Running a Next.js Site on Cloudflare Pages
Patrick Heneise

Notion API: Getting Started with Notion's JavaScript SDK
Rui Sousa

Vue 3 Migration Build: Safely Upgrade Your App to Vue 3
Andy Li

🛠 Code & Tools

FracturedJson: A Browser-Based JSON Formatter — Produces “human-readable but fairly compact output.” I like this. It’s not your typical linter but turns big lumps of JSON into something that it’s pleasant to look through.

J Brooke

mem 9.0: Simple Memoization Library — Memoization is an optimization technique used to speed up consecutive function calls by caching the result of calls with identical arguments.

Sindre Sorhus

devcert: Development SSL/TLS Certificates Made Easy — Need a certificate for local development when using Node? This package takes an interesting approach of creating its own root authority and issuing certificates automatically against it. It’s so slick though, I was impressed by it in my tests.

Dave Wasmer

Monitor Lighthouse Scores and Core Web Vitals — DebugBear continuously monitors site speed and provides front-end developers with the data they need to improve it.

DebugBear sponsor

new-tailwind-app: A Node-based CLI to Generate Boilerplate Code for Different Tailwind Apps — Like create-react-app, but for Tailwind. Start a plain Tailwind project or generate one with based on Next.js, React, Gatsby, or Vue, with Prettier integration.

Saad Irfan

Filesize.js 7.0: A Library to Create Human Readable File Size Strings — For example: filesize(265318) returns 259.1 KB. GitHub repo.

Jason Mulligan

LiveKit: A Go-Powered Server for Real Time Audio and Video — An open source infrastructure project for building and scaling realtime WebRTC powered audio and video experiences in apps. It’s new but there are already SDKs for iOS, JavaScript in general, React, and Android.

LiveKit Team

React Virtual 2.8.0: Hooks for Virtualizing Scrollable Elements — With a single headless hook you can work with row, column and grid level virtualization, get imperative scrolling when needed, custom scrolling function support, and more. Lots of CodeSandbox demos here too.

Tanner Linsley

o