This year I started a new series on LinkedIn - "Advanced Links for Frontend". Each issue has 10 links to outstanding posts / articles. This bundle contains the links from the last 5 issues (issue 46 to issue 50).
I hope you enjoy this collection. Let me know in the comments which of these articles is your favorite (and why).
Issue 46
Garbage collection and closures (https://jakearchibald.com/2024/garbage-collection-and-closures/) by Jake Archibald
Weak references for the win. Honestly, finding memory leaks is always tricky - even you find the source fast; getting rid of it can be complex.
A Look at What's Coming to PHP 8.4 (https://laravel-news.com/php-8-4-0) by Paul Redmond
The last thing I'd do is bet against PHP.
This month in Servo: console logging, parallel tables, OpenXR, and more! (https://servo.org/blog/2024/07/31/this-month-in-servo/) by Servo
Servo is one of the main reasons Rust exists today - a browser engine that is fast and transportable. It's great to see them back and continuing to do well!
How to Get the Width/Height of Any Element in Only CSS (https://frontendmasters.com/blog/how-to-get-the-width-height-of-any-element-in-only-css/) by Temani Afif
This is getting crazy. Previously this was thought as impossible as CSS is used to compute those values, now that Chromium has full support we are most likely to see it across all browsers.
Styling Tables the Modern CSS Way (https://piccalil.li/blog/styling-tables-the-modern-css-way/) by Michelle Barker
Every once in a while somebody reminds me that tables are still a thing. They are - and styling them properly is actually required to make full use of them.
Web Styles in Native Apps (https://www.telerik.com/blogs/web-styles-native-apps) by Sam Basu
Was not really sure what to expect in here, but I got happy once I saw XAML. Quite cool article if you work in the Blazor / MAUI space.
2024 Developer Survey Results (https://survey.stackoverflow.co/2024) by StackOverflow
Pretty much no surprises here. However, that reminds me that we may be should start another micro frontend survey?! It's about time...
Battle of the Asyncs (https://www.brenelz.com/posts/battle-of-the-asyncs/) by Brenley Dueck
I missed the battle in this one, but generally a good comparison of the different philosophies behind Solid and React. There is more to it, but this is just a solid point.
Please Stop Using Barrel Files (https://tkdodo.eu/blog/please-stop-using-barrel-files) by Dominik Dorfmeister
I agree up to some degree. In general if you use barrel files you should also treat the folders / barrels like its own library; i.e., think of it as a dependency and always visualize how the dependency graph flows.
What we (Deno) got wrong about HTTP imports (https://deno.com/blog/http-imports) by Ryan Dahl
One of the longer ads for JSR. While I am still positive about the JSR I also see some drawbacks.
Issue 47
Plain Vanilla (https://plainvanillaweb.com/) by Joeri Sebrechts
A nice collection of starters and ideas for going fully vanilla. Be aware that following this you might end up with your own framework.
A different way to think about typescript (https://www.rob.directory/blog/a-different-way-to-think-about-typescript) by Robby Pruzan
TypeScript is like a strict librarian who insists on organizing infinite sets of values, just so you can avoid typos in your code!
How Google handles JavaScript throughout the indexing process (https://vercel.com/blog/how-google-handles-javascript-throughout-the-indexing-process) by Ryan Siddle and Malte Ubl
I'm glad this got out. I'm tired of telling everyone that you don't need SSR to be seen by Google.
Patterns for Memory Efficient DOM Manipulation with Modern Vanilla JavaScript (https://frontendmasters.com/blog/patterns-for-memory-efficient-dom-manipulation/) by Marc Grabanski
Spot the pattern? All vanilla. Knowing your DOM API is key.
Benchmarking AWS Lambda Cold Starts Across JavaScript Runtimes (https://deno.com/blog/aws-lambda-coldstart-benchmarks) by Andy Jiang and Igor Zinkovsky
Alright, so Deno is actually quite fast - but what's more important is that Hono is super (even more than Express) lightweight.
Nx 19.5 is here! Stackblitz, Bun, Incremental Builds for Vite, Gradle Test Atomizer (https://nx.dev/blog/nx-19-5-adds-stackblitz-new-features-and-more) by Zack DeRose
Well that's a nice feature set! Incremental builds are super slick, so very happy with this one.
CSS Spring Easing Generator (https://www.kvin.me/css-springs) by Kevin Grajeda
The missing piece for crucial CSS snippet tools collection. Wait...
Common Sense Refactoring of a Messy React Component (https://alexkondov.com/refactoring-a-messy-react-component/) by Alex Kondov
Hey, I'm still missing the final outcome! Spoiler: Instead of one large file we now have 3 new dependencies and 15 files. Just kidding!
An Alpine & Tailwind UI Library (https://devdojo.com/pines) by Tony Lea et al.
Looks quite nice, but I wonder if copying over so much code is really efficient if you want to reuse these components. For single use-cases I think this is wonderful.
React Compiler, How Does It Work? 4 - SSA Transformation (https://yongseok.me/blog/en/react_compiler_4/) by YongSeok Jang
The techniques presented in the article also play a role in many other parsers / compilers / transpilers. Super cool!
Issue 48
Announcing Official Puppeteer Support for Firefox (https://hacks.mozilla.org/2024/08/puppeteer-support-for-firefox/) by James Graham, Henrik Skupin, Julian Descottes, Alexandra Borovova
That was about time - quite happy that's here. Still, I'll keep on using Playwright.
A tiny utility to build JSON schema types (https://github.com/lukeed/tschema) by Luke Edwards
Super useful - well done! Finally I only need to define it once.
Effect Best Practices (https://ethanniser.dev/blog/effect-best-practices/) by Ethan Niser
Using the useful Effect utility lib? This post should be on your radar.
Introducing XState Store (https://tkdodo.eu/blog/introducing-x-state-store) by Dominik Dorfmeister
Dominik keeps on delivering great content! It's half the size of Zustand yet seems very comparable feature-wise.
Gradient Generator (https://www.learnui.design/tools/gradient-generator.html) by Kennedy Design
Last time we had an awesome easing generator - this time it's about gradients.
Integrating Blazor with Existing .NET Web Apps (https://visualstudiomagazine.com/Articles/2024/08/07/Integrating-Blazor-with-Existing-,-d-,NET-Web-Apps.aspx) by David Ramel
Very nice interview for the session scheduled at Live!360 conference in Orlando. Would be even better if micro frontends are mentioned ;).
It's Time To Talk About "CSS5" (https://www.smashingmagazine.com/2024/08/time-to-talk-about-css5/) by Brecht De Ruyte
I'm listening. BTW the last full spec of CSS was 2.1 - since then everything is divided into modules, which have their own level. CSS3 was the first to just be an aggregate of the module levels.
Google Angular Lead Sees Convergence in JavaScript Frameworks (https://thenewstack.io/google-angular-lead-sees-convergence-in-javascript-frameworks/) by Loraine Lawson
I think this is a bit misleading. Just because React now has a compiler does not mean it's converging to Angular...
The Great npm Garbage Patch (https://blog.phylum.io/the-great-npm-garbage-patch/) by Phylum Research Team
Being in touch with Tea protocol myself I am not surprised. It's, unfortunately, essentially crypto garbage. Happy that someone is aware of the problem and reporting the issues for improvement.
The Sneaky Costs of Scaling Serverless (https://www.zachleat.com/web/serverless-cost/) by Zach Leatherman
Spoiler: Serverless can lead to (unnecessary) massive bills if not used correctly.
Issue 49
Do Quests, Not Goals (https://www.raptitude.com/2024/08/do-quests-not-goals/) by David Cain
Right now I am not doing anything besides hiking, swimming, and enjoying the mountains.
Zen Browser (https://www.zen-browser.app/) by Zen
This is what Firefox feels to me. But maybe worth giving it a try, too?!
Tips from 8 months of TanStack/Router in production (https://swizec.com/blog/tips-from-8-months-of-tan-stack-router-in-production/) by Swizec Teller
I still miss the point of using something besides React Router, but I guess that's just a sign of me getting old.
Parallel DOM (https://www.pdom.dev/#how-it-works) by Ashish Shubham
Unfortunately the demos don't work in Firefox - but otherwise looks great if you think about distributing rendering tasks!
An approach to optimizing TypeScript type checking performance (https://www.edgedb.com/blog/an-approach-to-optimizing-typescript-type-checking-performance) by Scott Trinh
Especially check out the general advice section on how to write better performing types.
Optimizing SPA load times with async chunks preloading (https://mmazzarolo.com/blog/2024-08-13-async-chunk-preloading-on-load/) by Mazzarolo Matteo
I'd argue that bundle splitting is great, but instead of just blindly preloading everything you'd only preload parts before they become relevant, e.g., when certain areas are visible or focused.
Prerendering with Preset Vite (https://preactjs.com/blog/prerendering-preset-vite/) by Ryan Christian
This is definitely a useful plugin. Since you can mostly also just alias / replace React by Preact it could be a great way out for simpler pages to avoid requiring JavaScript.
Node.js Takes Steps Towards Removing Corepack (https://socket.dev/blog/node-js-takes-steps-towards-removing-corepack) by Sarah Gooding
Personally, I think it would be better to remove corepack and let it evolve independently.
A case for vanilla JSX (https://vanillajsx.com/) by sdegutis
There is a great debate ongoing in the WICG Web Components GitHub repository that might actually benefit from native JSX (https://github.com/WICG/webcomponents/issues/1069).
20 years since open source release, here comes Ruby on Rails 7.2 with JIT compiler and more (https://devclass.com/2024/08/13/20-years-since-open-source-release-here-comes-ruby-on-rails-7-2-with-jit-compiler-and-more/) by Tim Anderson
20 years ago I found Ruby. Two years later I started using Rails, but even though I then headed in a different direction I still think this is one of the best ecosystems out there.
Issue 50
Optimizing React Applications for Maximum Performance (https://dev.to/surajondev/optimizing-react-applications-for-maximum-performance-5epm) by @surajondev
Honestly, there is a bit more to it, but following these points will give you a great starting point.
ASPNetCore Angular SPA application with SEO friendly (SSR) Title and Meta tags updates (https://medium.com/@haykflexgrigoryan/aspnetcore-angular-spa-application-with-seo-friendly-ssr-title-and-meta-tags-updates-bcef5f75b6ad) by Hakob Grigoryan
Using AngleSharp to optimize an Angular app for SEO? Count me in!
Building Micro-frontends using Blazor and Piral Frameworkā” (https://wdevon99.medium.com/building-micro-frontends-using-blazor-and-piral-framework-c38c5426ccee) by Devon Wijesinghe
Very well written and with a great demo project that you can just use as a starting point.
Bye Bye, Try-Catch Blocks: Meet JavaScript's Safe Assignment Operator Proposalš (https://dev.to/dharamgfx/bye-bye-try-catch-blocks-meet-javascripts-safe-assignment-operator-proposal-1j7) by @dharamgfx
This is not yet finalized - but sometimes having the discussion earlier is better than later.
Regexes Got Good: The History And Future Of Regular Expressions In JavaScript (https://www.smashingmagazine.com/2024/08/history-future-regular-expressions-javascript/) by Steven Levithan
This is finalized. While regular expressions in JS will never reach the level of Perl, they are certainly quite decent.
From React to Effect (https://effect.website/blog/from-react-to-effect) by Michael Arnaldi
I was curious at the title, but then it hit me... should have rather been called "Effect for React developers".
Introducing Nuxt Scripts (https://nuxt.com/blog/nuxt-scripts) by Harlan Wilton
Sounds interesting, but I wonder if this could (or should) be extended beyond Nuxt.
spatial compute (https://sunilpai.dev/posts/spatial-compute/) by Sunil Pai
Have we already conquered temporal compute?
JS Dates Are About to Be Fixed (https://docs.timetime.in/blog/js-dates-finally-fixed/) by Iago Lastra
When did I hear that the last time?!
Good Refactoring vs Bad Refactoring (https://www.builder.io/blog/good-vs-bad-refactoring) by Steve Sewell
We've all been there... Most important part: Understand the code, and make sure previously working code can be verified to still be working.
Conclusion
These are all outstanding articles by masterful authors. I enjoyed reading them all - I hope you did find something in there, too.
š Follow me on LinkedIn, Twitter, or here for more to come.
š Thanks to all the authors and contributors for their hard work!
Top comments (2)
Thanks for mentioning my article, Florianā”
Hi Florian Rappl,
Top, very nice and helpful !
Thanks for sharing.