How Google Handles JavaScript Throughout The Indexing Process
tl;dr: “Understanding how search engines crawl, render, and index web pages is crucial for optimizing sites for search engines. Over the years, as search engines like Google change their processes, it’s tough to keep track of what works and doesn’t—especially with client-side JavaScript.” This post looks at how rendering has evolved and the real-world impact on modern web apps.featured in #538
How Fast Is Javascript? Simulating 20,000,000 Particles
- David Gerrells tl;dr: “The challenge, simulate 1,000,000 particles in plain javascript at 60 fps on a phone using only the cpu... This is not a particularly difficult challenge if you did all the work on a gpu but the rule of the challenge is to use the CPU only or as much as possible and to stay in js land so no wasm.”featured in #531
A Virtual DOM In 200 Lines Of JavaScript
- Marcelo Lazaroni tl;dr: “In this post I’ll walk through the full implementation of a Virtual DOM in a bit over 200 lines of JavaScript. The result is a full-featured and sufficiently performant virtual DOM library. The main goal is to illustrate the fundamental technique behind tools like React.”featured in #520
featured in #516
featured in #496
featured in #492
featured in #491
featured in #478
How We Reduced The Size Of Our JavaScript Bundles By 33%
- Umair Nadeem Rich Hong tl;dr: Dropbox reduced its JavaScript bundles by 33% by replacing its outdated module bundler with Rollup. The existing system led to large bundle sizes and performance issues. Rollup's features like automatic code-splitting and tree shaking optimized the bundling process. Despite challenges in implementation, the transition to Rollup significantly improved performance.featured in #441
Shrinking VS Code With Name Mangling
- Matt Bierner tl;dr: The Visual Studio Code team reduced the shipped JS size by 20% without major refactorings or code deletions. They introduced a new build step called "name mangling" to automatically shorten long identifier names in the codebase. Initially, they tried mangling private properties, but due to potential complications, they turned to mangling exported symbol names instead.featured in #435