JavaScript Weekly Issue 575: February 4, 2022
source link: https://javascriptweekly.com/issues/575
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
JavaScript Weekly Issue 575
JavaScript Weekly
Writing a Printer Driver in JavaScript — “Writing a printer driver in JavaScript sounds ridiculous,” starts the author, and while the definition of ‘driver’ is arguable here (it's more a filter?), this is nonetheless an interesting story and solution to the author's problem.
Dan Pastusek
Babel 7.17.0 Released — Now that the decorators proposal has stabilized, Babel includes parse and transform support for them, if you want to get playing. The ‘v
’ flag proposal for regexes has also been implemented.
Babel Team
ButterCMS Melts into Your JS App:$ butter.post.list()
— ButterCMS is your content backend. Enable your marketing team to update website + app content without needing you. Try the #1 rated Headless CMS for your JS app today. Free for 30 days.
ButterCMS sponsor
The Fetch API is Coming to Node Core (and Why to Care) — Support for the Fetch API (as commonly used browser-side for fetching resources) has been merged into Node.js and will be available behind a --experimental-fetch
flag until, hopefully, being enabled by default in Node 18+.
Yavor Georgiev
Memory Leaks: The Forgotten Side of Web Performance — An even-handed take on the importance of memory leaks, even though the “effort-to-payoff ratio” is often seen as “disappointingly high”.
Nolan Lawson
IN BRIEF:
-
V8 v9.9 is on the way, with a focus on improvements to
Intl
. -
A big new monthly update for VS Code with a JS debugging improvement that lets you exclude certain callers from pausing at breakpoints.
-
The npm registry is now requiring maintainers of the top 100 npm packages to use 2FA. This policy will extend to more maintainers over time.
-
Using
[].join(', ')
to join lists of strings? Eric Clemmons has a nifty alternative to consider. -
Dan Abramov tries to sell us on Sublime Text versus VS Code.
-
Jest is a very popular JS testing framework associated with Facebook yet allegedly no-one at Facebook has worked on Jest for years.
RELEASES:
MDX 2.0 – Markdown + JSX = ❤️
Partytown 0.3 – Take third party scripts off the main thread.
Mongoose 6.2.0 – MongoDB object modelling library.
Recoil 0.6 – Alternative React state management.
Commander.js 9.0 – Node CLI framework.
CKEditor 5 v32.0 – Rich text editor framework.
ESLint 8.8.0
💻 Jobs
Senior Web Developer (Node/ReactJS) - Remote — Millions get inspired and plan adventures with our apps. To help us make komoot.com the place to go to plan outdoor adventures, we’re looking for a one of a kind Web Developer to join our team.
Komoot
Senior JavaScript Engineer — Join our dev team and help develop, test, document and maintain our JS driven web applications.
Civey
Toptal: The World’s Top Companies at Your Fingertips — We connect developers like you with exclusive clients that include Fortune 500 companies and Silicon Valley startups. Apply now.
Toptal
📒 Articles & Tutorials
Speeding Up VS Code Extensions in 2022 — One of those ‘niche but interesting’ posts that digs into the underlying architecture of VS Code and a must-read for anyone considering making their own extension.
Jason Williams
▶ Your Weekly Source for Conversations on the Art & Practice of Software — Ben Popper, Cassidy Williams & Ceora Ford explore what it means to work in software, and how code is reshaping our world.
The Stack Overflow Podcast sponsor
Improving JavaScript Bundle Performance With Code-Splitting — Looks at the benefits and caveats of code-splitting and how page performance and load times can be improved by dynamically loading expensive, non-critical JavaScript bundles.
Adrian Bece
What Web Frameworks Solve And How To Do Without Them — Dives deep into a few technical features that are common across frameworks, and explains how some of the different frameworks implement them and what they cost.
Noam Rosenthal
Use Streams to Build High-Performing Node Apps — Using the stream
module in Node.js to your advantage.
Deepal Jayasekara
Connect a Chatbot to Popular Messaging Channels — Learn the easy way to connect a chatbot to Telegram, Messenger, Twilio, Smooch, Vonage, Slack, and Microsoft Teams.
Botpress sponsor
How To Create, Test and Deploy a SPA with Vue 3, Vite and Pinia
Andrei Rusu
▶ The Story of React (in 10 Minutes)
ui·dev
Preventing Smooth Scrolling with JavaScript
Kilian Valkhof
🛠 Code & Tools
Sigma 2.2: A Graph Drawing Library — A mature library (we first linked it in 2015!) aimed at use cases where you have giant graphs containing thousands of nodes and edges that you need to render quickly. Some good examples here. GitHub repo.
Alexis Jacomy
A-Frame 1.3: A Framework for Building WebVR Experiences — A web framework for building virtual reality experiences that work on Vive, Rift, Quest, as well as desktop and mobile platforms, including in the browser (as the demos here show).
A-Frame VR Team
Electron 17 Released — The popular cross-platform desktop app framework gets key dependency bumps with Chromium 98 support, Node 16.13.0, and V8 9.8.
Michaela Laurencin and Keeley Hammond
Pulumi: Developer-First Infrastructure with JavaScript
Pulumi sponsor
Hotkey 2.0: Trigger an Action on an Element When a 'Hotkey' is Pressed — Use Hotkey, set the data-hotkey
attribute on your elements, and you get keyboard shortcuts. v2.0 just dropped. If it's good enough for GitHub, it's good enough for us!
GitHub
imask.js 6.4.0: A Vanilla JavaScript Input Mask — Rather than validate the syntax of input fields, how about preventing users from even entering invalid values?
imaskjs
lite-youtube: A Web Component That Renders YouTube Embeds Faster — It’s the Shadow DOM web component version of Paul Irish’s lite-youtube-embed, with keyboard accessibility and some other nice features.
Justin Ribeiro
😍 And finally..
WebVM.io takes you straight to a Web-based 'server-less' virtual Linux environment running directly in your browser. It's powered by the JavaScript and WebAssembly-based CheerpX x86 virtualization engine. While it's not a JavaScript project exactly, it's a neat demonstration of how far Web technology has come. It has Node v10.24.0 'installed' if you want to try that, but beware it takes a good 20 seconds to load on my machine.
Here's a write-up about how it works, if you want to learn more.
Note: Probably one for desktop users only due to the resources and performance needed.
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK