Elsewhere
Things we find interesting we think you might too. Grab the RSS feed for your newsreader of choice.
Shallow clones versus structured clones
January 14, 2025
There have been many ways in JavaScript over the years to make deep clones of objects, examples include Lodash’s cloneDeep and using JSON to stringify and then parse an object. However it turned out...
Read MoreTight Mode: Why Browsers Produce Different Performance Results
January 13, 2025
We know that browsers do all sorts of different things under the hood. One of those things is the way they not only fetch resources like images and scripts from the server but how they prioritize thos...
Read MoreECMAScript feature: import attributes
January 13, 2025
The ECMAScript feature “Import Attributes” (by Sven Sauleau, Daniel Ehrenberg, Myles Borins, Dan Clark and Nicolò Ribaudo) helps with importing artifacts other than JavaScript modules. In this bl...
Read MoreDouble-keyed Caching: How Browser Cache Partitioning Changed the Web
January 13, 2025
The web’s caching model served us well for over two decades. Recently, in the name of privacy, it’s undergone a fundamental shift that challenges many of our performance optimization assumptions. ...
Read MoreLesser Known Uses Of Better Known Attributes — Smashing Magazine
January 10, 2025
HTML attributes are like little instructions that we add to the markup of elements to make them do certain things or behave in certain ways. For example, most of us know that the target attribute with...
Read MoreCSS Selectors
January 10, 2025
CSS selectors Advent Calendar 2024 Source: CSS Selectors...
Read Morecrawshaw – 2025-01-06
January 9, 2025
This document is a summary of my personal experiences using generative models while programming over the past year. It has not been a passive process. I have intentionally sought ways to use LLMs whil...
Read MoreHTML Is Actually a Programming Language. Fight Me
January 8, 2025
Because HTML looks easy and lacks features like formal conditional logic and Turing-completeness, it’s often dismissed as not a programming language. “That’s not real code; it’s just markup”...
Read MoreDeclarative Shadow DOM
January 7, 2025
In this article, I will first highlight the challenge that has made using web components, specifically the shadow DOM, a non-starter for many projects. But then, we will explore an evolution of shadow...
Read MoreCognitive load is what matters
January 7, 2025
Sometimes we feel confusion going through the code. Confusion costs time and money. Confusion is caused by high cognitive load. It’s not some fancy abstract concept, but rather a fundamental hum...
Read MoreRelatively New Things You Should Know about HTML Heading Into 2025
January 7, 2025
Not all of this is like absolutely brand spanking new just-dropped-in-2024 stuff. Some of it is, but generally it’s relatively new stuff that’s all pretty great. I’m pointing things out that I t...
Read MoreBalancing Text In CSS
January 6, 2025
Almost two years ago, I published an article about text-wrap: balance and how useful it is. I thought about revisiting the topic with a more solid exploration and examples that include different value...
Read MoreNew Front-End Features For Designers In 2025
January 6, 2025
As we are moving towards 2025, it’s a good time to revisit some of the incredible new technologies that are broadly available and supported in modern browsers today. Let’s dive right in and explor...
Read MoreYour App Should Have Been A Website (And Probably Your Game Too)
January 6, 2025
The smartphone boom changed everything. Suddenly, apps were everywhere, connecting people, solving problems, and entertaining us. But for a while now, they’ve started to feel more like a burden than...
Read MoreWeb Performance Calendar » Getting Real (small) With Compression Dictionaries
December 31, 2024
Compression dictionary transport is a relatively new feature in HTTP that allows for using custom compression dictionaries to improve the compression of HTTP responses. The results can be pretty drama...
Read MoreTuring Machines
December 23, 2024
By the end of this post, you will know: What a Turing machine is. What can and cannot be computed. What it means to be Turing complete. How modern computers relate to Turing machines. How to write and...
Read MoreThe death of the stubborn developer
December 23, 2024
Here’s the rub: As of about May, LLMs can now execute most of the leaf tasks and even some higher-level interior tasks, even on large software projects. Which is great. But what’s left over for hu...
Read MoreBringing AI to the Browser – On-Device AI with the Web AI Toolkit
December 20, 2024
Welcome! Today we will be covering On-Device AI for Web Apps. Yes, you can run AI models on the users device, accelerated by a GPU or even NPU all from your web app, no hybrid framework or plugins nee...
Read MoreSpeculative loading and the Speculation Rules API
December 19, 2024
Speculative loading, or navigation speculation, is the concept of predicting (speculating about) which page a user might visit next and doing some or all of the work to load that page before they visi...
Read MoreTop 5 AI Engineering Trends of 2024 – The New Stack
December 17, 2024
This time last year, I wrote that AI engineering in 2023 was defined by a proliferation of LLMs and an expansion of AI dev tooling. In 2024, those trends continued — but also the market for both LLM...
Read MoreCentury-Scale Storage
December 17, 2024
This piece looks at a single question. If you, right now, had the goal of digitally storing something for 100 years, how should you even begin to think about making that happen? How should the bits in...
Read MoreEthical Web Principles
December 17, 2024
The web should be a platform that helps people and provides a positive social benefit. As we continue to evolve the web platform, we must therefore consider the consequences of our work. The following...
Read MoreUsing Transformers.js for AI in the Browser
December 16, 2024
Using Transformers.js makes use of what they call a ‘pipeline’ API. You will import the general API into your code and then select a pipeline based on your use case. The docs list a set of...
Read More