Tomas
Tomas
@tomasklingen.nl
🎸👨💻 a Frontend Web Dev with a weird passion for performance, SSR and Core Web Vital optimalization
51 followers199 following110 posts
Wow this is pretty clever en.wikipedia.org/wiki/Cache_s...
Unironically added this to a prompt before: “how would @danabra.mov write this code?” It works 😅
A good reminder. Any process that can be done with old school mechanical static deterministic code instead of LLMs should be done like that.
I've been experimenting with different approaches to build a system where humans and agents can ship fast safely. Think I've found something that works – custom linters. swizec.com/blog/stop-bu...
Tomas reposted
This is the most important video I've ever made. In this, I explore the negative and positive mental health effects of AI coding, with data and expert commentary. www.youtube.com/watch?v=iPUn...
Tomas reposted
I’m exploring the mental health effects of AI coding. This is a super quick (blazing fast), anonymous survey. Please fill out and share so that the responses will be well rounded. forms.gle/dpD8Tk1QnXAz...
Tomas reposted
Tomas reposted
Massive props to @lubach.nl (Dutch TV) for speaking out against X, recommending @bsky.app and Mastodon. youtube.com/watch?v=u4hH...
If everyone uses a release cooldown, do comprised packages get noticed in time? Or is it like the joke you hear during a safari: “you don’t need to outrun the lion, you just need to outrun your friend”? nesbitt.io/2026/03/04/p...
The topic of skills atrophy has been running through my mind quite a bit. Delegating cognitive tasks to an AI system could mean over time you lose some of those abilities yourself. Similarly to how you need to keep training a muscle or a sport: use it or lose it. But is this always bad per se?
The idea that technology, like AI, deskills us is not a surprise. I learned cursive at school, my father learned how to use a slide rule. Neither skill is widely mourned. What is important is whether we will make deliberate choices about what skills to keep & which they will be.
Tomas reposted
But the temptations and opportunities provided by vibe coding let you go overboard as well. I choose all kinds of tech that’s kinda new to me. @nuxt.com with CloudFlare workers + D1 as db. Client-side IndexDB. It already needs simplification.
Tomas reposted
Official Agent Skills are now available for React Router github.com/remix-run/ag...
Tomas reposted
"Collision detection using style queries plus keyframes" by lee codepen.io/leemeyer/pen...
Tomas reposted
👀 Future of JS This underrated upcoming JS feature is super useful 🔥 Soon, you should be able to import JS code as a string! This is super useful, in particular for docs sites! Similar to Webpack raw loader, asset query ?raw etc, but available everywhere natively!
ECMAScript excitement 😉 Congrats to Eemeli Aro @mozilla.org on advancing Import Text to Stage 2 at TC39 today 🎉 It uses an import attribute for easy loading. import text from "path/to/file.txt" with { type: "text" }; github.com/eemeli/propo...
Tomas reposted
React Server Components: do they improve performance or make it worse? If your answer is “I’ve no idea 😅,” I wrote a deep-dive to answer that! Experiments and real numbers, CSR vs SSR vs RSC, same app + test setup. Focus: initial load + data fetching. www.developerway.com/posts/react-...
Wow I’m shocked.. I’ve watched so many hours of videos of him explaining chess with so much passion and expertise. I was literally watching one tonight. This is an extremely sad loss for the chess community.
GM Daniel Naroditsky passed away. He was a talented chess player, commentator, and educator. FIDE extends its deepest condolences to Daniel’s family and loved ones.
Tomas reposted
Firefox now supports view transitions, the command and commandfor HTML attributes, and the moveBefore() method. www.firefox.com/en-US/firefo...
It’s not explicitly required, but passing an Error object type as { cause } will display very nicely in error monitoring tools like @sentry.io. It will show the child and parent errors stacked together.
JS pro tip: Add { cause } to errors. Makes debugging and inspection way easier 🔍 developer.mozilla.org/en-US/docs/W...
Go take the State of JavaScript 2025 survey if you have a minute! survey.devographics.com/survey/state...
Every React hook has multiple levels of understanding a dev has to go through to get to most out of them. Hopefully at some point I fully understand Reacts concurrent rendering gotchas.
TIL: the "sync" in @react.dev's useSyncExternalStore isn't for "synchronise", it's for "synchronous". As: it's not for synchronising against an external store, It's for synchronously (ie: disabling concurrent features) updating against a store's changes. h/t @tkdodo.eu 🤯
Tomas reposted
Can't believe what I'm reading. Accidentally DDoS yourself because you fetch in useEffect in 2025 is so avoidable 😂 blog.cloudflare.com/deep-dive-in...
Tomas reposted
We’ve launched MDN’s new front end — and it’s just the beginning. Intentionally targeting Baseline "Widely available" features when deciding on which ones to use. This means we're able to adopt modern CSS and web components for our UI. Check it out 👇 developer.mozilla.org/en-US/blog/...
Tomas reposted
I edited my Cross-Site Request Forgery countermeasures research into a stand-alone article, including recommendations reusable by other projects. tl;dr: no need for tokens or keys, modern browsers tell you if a request is cross-origin! words.filippo.io/csrf
Of all the type-aware TS linting rules I’m really looking forward to see “No-unnecessary-condition” implemented in the Rust/Go-based linters. I almost feel like it could be a strict tsc flag. typescript-eslint.io/rules/no-unn...
Aww yeah @ematipico.xyz ! This rule has helped us caught some bugs. If you refactor a property and change the type, it can mean some conditional on the value doesn’t make sense any more. This catches it. github.com/biomejs/biom...
Tomas reposted
Saw @ThePrimeTime's video (youtu.be/ciNXbR5wvhU?...) & comments around HTTP cache & sharing across origins. Resources have long been isolated due to partitioning (2020+ in Chrome, longer in other browsers). Spreading knowledge is hard 😳: developer.chrome.com/blog/http-ca... #webperf #webdev
Tomas reposted
“The reason SPAs became the default wasn’t because they were better. It was because, for a while, they were the only way to deliver something that felt fluid – something that didn’t flash white between pages or jank the scroll position.” www.jonoalderson.com/conjecture/i...
Tomas reposted
One of the most powerful tools in my toolbox is SVG. When combined with CSS and JavaScript, we can do some truly remarkable things. ✨ 📝 I’ve just published a brand-new blog post that covers the most critical fundamentals. It’s chock full of interactive demos. 😄 Check it out: