#547 — July 16, 2021
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:
-
Hemanth HM shares updates from the latest TC39 meeting and the proposals discussed. He's also published ▶️ a new episode of the TC39er podcast interviewing Mozilla's Yulia Startsev about work on SpiderMonkey.
-
Want to perform a card trick with some JavaScript powered 'mind reading'? ▶️ Computerphile has you covered.
-
Did you know you can get Postgres to return JSON directly?
-
The story of how a developer bootstrapped his (paid) JavaScript image editing control to 20ドルK monthly revenue.
-
Puppy is a neat minimal experimental Web browser written in Rust that supports JavaScript via V8.
-
It's not JavaScript at all but I was still blown away to learn about the almost 100 different types of DNS record that exist.
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
🛠 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