#540 — May 28, 2021
JavaScript Weekly
Sparkplug: V8's Non-Optimizing JavaScript Compiler — When you wonder just where the V8 team will pull out a few more % of performance improvements, they come up with something :-). Their new ‘super-fast non-optimizing compiler’ in V8 v9.1 sits in between the existing interpreter and TurboFan compiler engines and brings another 5-15% boost to benchmarks. Firefox has had a similar concept in the shape of the baseline interpreter.
Leszek Swirski (V8 Team)
Locate Front-End Issues Like JavaScript or Network Errors Instantly — Get proactively alerted on any client-side issues such as JavaScript and network errors, optimize the load time of your front-end resources, and detect any UI issues that affect critical user journeys. Try it free with Datadog Synthetics.
Datadog sponsor
TypeScript 4.3 Released — Just a couple of weeks after the beta comes the real deal with a rather long feature list:
- An
overridekeyword to explicitly define overriding methods. - A
--noImplicitOverrideflag to make it an error to override methods in superclasses without using the aforementionedoverride. - Template string type improvements.
- Methods and accessors can now be given private names, e.g.
get #someValue(). -
staticindex signatures. - And, yes, a lot more.
Daniel Rosenwasser (Microsoft)
Jest 27 Released, Complete with Some New Defaults — Jest has ‘flipped some switches’ and introduced some new defaults you’ll want to be aware of if you use the popular testing framework. You can now also interactively step through failed tests one at a time, get inline snapshots without using Prettier, and you get much faster initialization times than Jest 26 too.
Tim Seckinger
Quick Bits
- The Angular project has unveiled an improved process for managing feature requests.
- 🎉 Node.js has turned 12 years old. You can still grab v0.0.1.
- Flow is a JavaScript static type checker out of Facebook that saw a lot of growth before TypeScript ate everyone's lunch. The project has issued a post clarifying Flow's future direction which is basically "Flow is staying open source but is going to focus even more on Facebook's own use cases."
Releases
fabric.js 4.5 — JS Canvas framework (and SVG to Canvas parser).
Chart.js 3.3 — Simple, flexible JS charting.
xstyled 3.0 — CSS-in-JS framework built for React.
Cypress 7.4.0 — Testing system.
ESLint 7.27.0 — Find and fix problems in your JavaScript.
💻 Jobs
Senior Frontend Engineer - Remote — Looking for a JS enthusiast who loves TypeScript, Next.js, and SSR. Let's build the future of finance together.
Kikoff
JavaScript Developer at X-Team (Remote) — Join the most energizing community for developers and work on long-term projects for Riot Games, FOX, Sony, Coinbase, and more.
X-Team
Find Software Engineering Jobs with Hired — Take 5 minutes to build your free profile & start getting interviews for your next job. Companies on Hired are actively hiring right now.
Hired
📖 Articles, Opinions & Tutorials
▶ How To Create Your First Flow in Node-RED — Node-RED is a browser-based ‘flow’ programming environment that uses Node.js under the hood. An interesting alternative way to build JavaScript powered systems.
Bleeding Code
A Thorough Analysis of CSS-in-JS — I feel too old-fashioned to fully buy into writing CSS alongside my JavaScript (sorry!) but Andrei does a good job at selling the benefits and compares some approaches.
Andrei Pfeiffer
Build a Node.js App with CockroachDB and the Node.js pg Driver — In this tutorial you’ll learn how to build a simple Node.js application with CockroachDB and the Node.js pg driver.
Cockroach Labs sponsor
Building a Rich WYSIWYG Text Editor From Scratch — Learn how to build a rich text editor into an app with Slate doing the heavy lifting.
Shalabh Vyas
The Modern Guide to React State Patterns — At one stage, you could basically just say ‘use Redux’ but there are so many options now, and this guide flies through a few approaches.
Fredrik Strand Oseberg
New Standards to Access User Device Hardware from JavaScript — WebHID, WebNFC, and Web Serial have opened up new avenues to interact with user’s device hardware for web apps. Device and browser support is kinda patchy, however.
Viduni Wickramarachchi
Using Pinia, an Alternative Vue.js Store — If you want to just go straight to the library, here’s its homepage (cute logo!)
Daniel Kelly
[Free Download] Guide to Effective Feature Management — Learn feature management practices to accelerate release cycles and deploy every 6 hours, instead of every 6 weeks.
LaunchDarkly sponsor
Get Started with React by Building a 'Whac-a-Mole' Game — This is truly aimed at beginners keen to strike some ‘aha!’ moments while learning React. Using it to create a simple game certainly could take you out of your comfort zone.
Jhey Tompkins
Where's The Best Place to Host a Next.js Site? — A detailed look at deploying a Next.js app to Vercel, Netlify, Layer0 and Heroku and rating them based upon a variety of factors.
Ondrej Polesny
A Beginner's Guide to Vue 3
Catalin Pit
🛠 Code & Tools
supported by Okta
Boring Avatars: React Library to Generate Custom Avatars — Ranging from generic gradients to face-like creations, this library (GitHub repo) generates custom, SVG-based, round avatars from any username and color palette.
Boring Designers
CandyGraph: A Fast, Flexible 2D Plotting Library — A flexible and fast-by-default 2D plotting library tuned for rendering huge datasets on the GPU at interactive speeds. And if that sounds like a boast, hit up the examples (the animated ones lower down are the most interesting).
Rye Terrell
Drag-n-Drop Email Editor for React, Angular and Vue
Unlayer sponsor
threads.js: Web Workers Meet Worker Threads — Threads is both a terrifying nuclear apocalypse movie and also this library for making using both Web Workers and worker threads (as implemented in Node) as simple as possible. Outsourcing intensive code to other threads can really help in some cases.
Andy Wermke
NocoDB: An Open Source Airtable-a-Like — Airtable is a popular commercial spreadsheet-database service that we even use here at Cooperpress to help put the newsletters together. This is a flexible and surprisingly good looking open source pastiche with a Vue powered frontend.
nocodb team
eslint-plugin-tailwindcss: ESLint Plugin for Tailwind CSS Usage
Francois Massart
Velociraptor 1.0: npm-Style Script Runner for Deno
JurassiScripts