React exists as a profound perversion of the web platform. React has failed upwards to widespread adoption because it provides a “developer experience” that bypasses the hard parts. Like learning HTML, or CSS, or JavaScript. Even learning React itself is discouraged; that’s for adults, you should use meta-frameworks. React devs are burdened with multi-megabyte monstrosities before they’ve written a single line of code. You cannot fix “too much JavaScript” with more JavaScript and yet React devs are trained to
npm installuntil their problems become their users’ problems.
The online home of Jeremy Keith, an author and web developer living and working in Brighton, England.
- Managing Editor
- Jeremy Keith
- Webmaster
- Jeremy Keith
- Public lists
-
IndieWeb
I Built the Same App 10 Times: Evaluating Frameworks for Mobile Performance | Loren Stewart
A very, very deep dive into like-for-like comparison of JavaScript frameworks. The takeaway:
Nuxt demonstrates that established “big three” frameworks can achieve next-gen performance when properly configured. Vue’s architecture allows competitive mobile web performance while maintaining a mature ecosystem. React and Angular show no path to similar results.
And the real takeaway:
Mobile is the web. These measurements matter because mobile web is the primary internet for billions of people. If your app is accessible via URL, people will use it on phones with cellular connections. Optimizing for desktop and hoping mobile is good enough is backwards. The web is mobile. Build for that reality.
Cryosleep
ChatGPT’s Atlas: The Browser That’s Anti-Web - Anil Dash
I love the web, and this thing is bad for the web.
- Atlas substitutes its own AI-generated content for the web, but it looks like it’s showing you the web
- The user experience makes you guess what commands to type instead of clicking on links
- You’re the agent for the browser, it’s not being an agent for you
It’s very clear that a lot of the new AI era is about dismantling the web’s original design.
Dithering - Part 1
A clear explanation of how image dithering works, illustrated along the way.
eurollm.io
A different world is possible. Here, for example, is an open-source large language model from Europe, designed to support the 24 official languages of the European Union.
I have no idea why their top level domain is for the British Indian Ocean Territory, soon to be no more. That doesn’t instil confidence.
Measured AI | Note to Self
It’s creepy to tell people they’ll lose their jobs if they don’t use AI. It’s weird to assume AI critics hate progress and are resisting some inevitable future.
Write Code That Runs in the Browser, or Write Code the Browser Runs - Jim Nielsen’s Blog
blog.jim-nielsen.com/2025/more-control-equals-less-performance/
So instead of asking yourself, “How can I write code that does what I want?” Consider asking yourself, “Can I write code that ties together things the browser already does to accomplish what I want (or close enough to it)?”
Responses
Layoutit Terra - CSS Terrain Generator
It’s wild what you can do with CSS these days!
Coco in the sun.
Coco in the sun.
Reading Our Wives Under The Sea by Julia Armfield.
Reading Our Wives Under The Sea by Julia Armfield.
The AI Gold Rush Is Cover for a Class War
Under the guise of technological inevitability, companies are using the AI boom to rewrite the social contract — laying off employees, rehiring them at lower wages, intensifying workloads, and normalizing precarity. In short, these are political choices masquerading as technical necessities, AI is not the cause of the layoffs but their justification.
Saturday morning tunes and tea
Saturday morning tunes and tea
Most of What We Call Progress - Yusuf Aytas
Every engineer eventually overbuilds something. You think you’re being smart. You’re thinking ahead, building for growth and before you know it, you’ve created a system ten times heavier than your actual problem. That’s the trap. We keep designing for imaginary futures for scale that may never come and call it engineering. But it’s not engineering. It’s over-engineering.
The industry rewards it too. Nobody gets promoted for keeping things small and sane. You get promoted for complexity.
Quantity queries using has() selector
Here’s a handy little tool for generating CSS with :has() selectors in order to do quantity queries.
Jake Archibald is speaking at Web Day Out
“AI is inevitable” is bullshit · Eric Eggert
LLMs are useful when you need a compromise between fast and good. You will never get a good outcome fast.
I’m afraid we are settling into a status of good enough when using “AI,” which is especially hurtful for accessibility.
Frank Chimero · Beyond the Machine
The transcript of a very thoughtful talk by Frank.
Having a coffee with Mango. Confession: I can never remember the actual name of the coffee shop so in my mind it’s Mango’s.
Having a coffee with Mango.
Confession: I can never remember the actual name of the coffee shop so in my mind it’s Mango’s.
Sunday session in Cork
Sunday session in Cork
The Majority AI View - Anil Dash
Technologies like LLMs have utility, but the absurd way they’ve been over-hyped, the fact they’re being forced on everyone, and the insistence on ignoring the many valid critiques about them make it very difficult to focus on legitimate uses where they might add value.
Reading A Prayer for the Crown-Shy by Becky Chambers.
Reading A Prayer for the Crown-Shy by Becky Chambers.
Going to Cork (for real this time, I hope). brb
Going to Cork (for real this time, I hope). brb
Software can be finished - Ross Wintle
There’s quite a crossover between resilence and longevity:
- Understand the requirements
- Keep scope small and fixed
- Reduce dependencies
- Produce static output
- Increase Quality Assurance
Thursday session
Thursday session
My first months in cyberspace (Phil Gyford’s website)
This is a wonderfully evocative description of what it was like to go online 30 years ago.
The present and potential future of progressive image rendering - JakeArchibald.com
jakearchibald.com/2025/present-and-future-of-progressive-image-rendering/
When I set about writing this article, I intended it to be a strong argument for progressive rendering. But after digging into it, my feelings are less certain.
V7: Video Killed the Web Browser Star | Rob Weychert
Grrr… it turns out that browsers exhibit some very frustrating behaviour when it comes to the video element. Rob has the details…
Wednesday session
Wednesday session