Hey,

What’s better to start the new year with new experiments? Today I figured it was time to rethink JavaScript tooling in one of my projects. And since we wrote everything in plain ECMAScript modules already, I thought it would be easy to serve them natively now and remove all the build and transpilation steps. Until I realized that although most code was written by ourselves, we have a couple of third-party dependencies in there and, of course, not all of them are ECMAScript modules. So for now I have to give up my plans to remove all the build steps and still have to bundle and transpile things but I’ll try to figure out a better solution to modernize and simplify our tooling setup while providing a smaller bundle to our users.
And just a few weeks ago I had to build a simple “go to top of the page” button for a website and while I used requestAnimationFrame and similar stuff to optimize Event handling, today I found a way nicer and more efficient solution that uses IntersectionObserver to toggle the button on the viewport. You will find that article in the JavaScript section of the letter today but I wanted to share these stories as I believe it’s most important to review all our own habits and current solutions and see whether there are better, newer, simpler ideas that improve a product. Keep playing, keep researching, rethink existing systems from time to time.

Web Performance

JavaScript

CSS

Work & Life

Go beyond…

—Anselm