~/devreads

Alex Russell

https://infrequently.org/ · 30 posts · history since 2022 · active

3 Apr

28 min read

TL;DR: Armed with new powers to rein in the worst excesses of mobile's duopolists, antitrust bodies around the world are struggling to find their footing, and an incurious tech press is letting it pass with nary a nod. Browsers are app stores, but that perspective is almost entirely absent from the antitrust conversation. Instead of prioritising the one, narrow intervention…

20 Jan

14 min read

Twitter's descent into a gutter of the lowest order has been wrenching: Elon Musk’s Grok and the Mass Undressing Scandal As I draft this, a week later, it appears pressure from civil society, investigations by regulators, and outright bans on multiple continents have forced Musk to back down to an uncertain degree. As this scandal roiled, Twitter's apps have been…

24 Nov 2025

32 min read

The Budget, 2026 Edition Let's cut to the chase, shall we? Updated network test parameters for 2026 are: 9 Mbps downlink 3 mbps uplink 100 millisecond RTT Regarding devices, my updated recommendations are the Samsung Galaxy A24 4G (or equivalent) and the HP 14. The goal of these recommendations is to emulate a 75th percentile user experience, meaning a full…

11 Oct 2025

16 min read

Eric Prouzet And now we see it clear, like a Cupertino sunrise bathing Mt. Bielawski in amber: Apple will censor its App Store at the behest of the Trump administration without putting up a fight. It will twist words into their antipodes to serve the powerful at the expense of the weak. To better serve autocrats, it will talk out…

4 Oct 2025

14 min read

This blog really isn't just for beating up on Apple for the way it harms users, the web, standards, and society to maintain power and profits. So here's some fun stuff I've been doing in my 11ty setup to improve page performance. Contents Page-Specific Resources via Shortcodes and the 11ty Bundler Mo Pagination, Mo Problems Build Time Impact Scroll-Position Based…

25 Sept 2025

6 min read

Contents Lies by Any Other Name Great Artists Steal Dear Tech Reporters: Access Is Not A Beat This blog is failing on several levels. First, September 2025 is putting the “frequent” in “infrequently”, much to my chagrin. Second, my professional mission is to make a web that's better for everyone, not to tear Apple down. But just when I thought…

23 Sept 2025

18 min read

Update: In several recent posts, I've attempted to address how the structure of standards bodies and their adjacent incubation venues accelerates or suppresses the potential of the web as a platform. The pace of progress matters because platforms are competitions, and actors that prevent expansions of basic capabilities risk consigning the web to the dustbin. Inside that framework, there is…

21 Sept 2025

21 min read

Photo by Photo by Artan Sadiku Commentary about browsers and the features they support is sometimes pejorative towards pre-standardisation features. Given Apple's constriction of Mozilla's revenue stream and its own strategic under-funding of WebKit, this usually takes the form "Chromium just ships whatever it wants." This is true, of course, but not in the way commenters intend; and not only…

2 Sept 2025

31 min read

TL;DR: Market competition underlies the enterprise of standards. It creates the only functional test of designs and lets standards-based ecosystems route around single-vendor damage. Without competition, standards bodies have no purpose, and neither they, nor the ecosystems they support, can retain relevance. Apple has poisoned the well through a monopoly on influence, which it has parleyed into suppression of browser…

25 Aug 2025

10 min read

Photo by Claudia Raya Apple vs. Facebook is, and always was, kayfabe. In reality, Apple is Facebook's chauffeur; holding Zuck's coat while Facebook1 wantonly surveils iPhones owners.2 Facebook's gross profit over time. Facebook and Apple mugged convincingly for the cameras as "App Tracking Transparency" rolled out, talking up the impact to Facebook's business. But San Mateo's profits tell a very…

13 Aug 2025

4 min read

Anyone who has worked closely with me, or followed on social media [, ], will have seen a post or comment to the effect of: Names and dates on docs. Every time. Don't forget. This is most often tacked onto design documents lacking inline attribution, and is phrased provocatively to make it sticky. Why do I care enough about this…

11 Aug 2025

30 min read

Mel Conway's seminal paper "How Do Committees Invent?" (PDF) is commonly paraphrased as Conway's Law: Organizations which design systems are (broadly) constrained to produce designs which are copies of the communication structures of these organizations. This is deep organisational insight that engineering leaders ignore at their peril, and everyone who delivers code for a living benefits from a (re)read of…

16 Jul 2025

2 min read

Frances has urged me for years to collect resources for folks getting into performance and platform-oriented web development. The effort has always seemed daunting, but the lack of such a list came up again at work, prompting me to take on the side-quest amidst a different performance yak-shave. If that sounds like procrastination, well, you might very well think that.…

27 Jun 2025

16 min read

Before saying anything else, I'd like to thank the organisers of JSNation for inviting me to speak in Amsterdam. I particularly appreciate the folks who were brave enough to disagree at the Q&A sessions afterwards. Engaged debate about problems we can see and evidence we can measure makes our work better. The conference venue was lovely, and speakers were more…

13 Jun 2025

3 min read

At Apple's annual developer marketing conference, the Safari team announced a sizeable set of features that will be available in a few months. Substantially all of them are already shipped in leading-edge browsers. Here's the list, prefixed by the year that these features shipped to stable in Chromium: 2023: WebGPU 2020: SVG Favicons 2023: HDR Images 2024: CSS Anchor Positioning…

29 Nov 2024

42 min read

Over the past decade, my work has centred on partnering with teams to build ambitious products for the web across both desktop and mobile. This has provided a ring-side seat to a sweeping variety of teams, products, and technology stacks across more than 100 engagements. While I'd like to be spending most of this time working through improvements to web…

27 Oct 2024

18 min read

This post is an edited and expanded version of a now-mangled Mastodon thread. Contents Platforms Are Competitions ...and We're Losing Win Condition You Do It To Yourself, And That's What Really Hurts Groundhog Day Reboot Some in the JavaScript community imagine that I harbour an irrational dislike of their tools when, in fact, I want nothing more than to stop…

16 Aug 2024

9 min read

Other posts in the series: Reckoning: Part 1 — The Landscape Reckoning: Part 2 — Object Lesson Reckoning: Part 3 — Caprock Frontend took ill with a bad case of JavaScript fever at the worst possible moment. The predictable consequence is a web that feels terrible most of the time, resulting in low and falling use of the web on…

14 Aug 2024

13 min read

Other posts in the series: Reckoning: Part 1 — The Landscape Reckoning: Part 2 — Object Lesson Reckoning: Part 4 — The Way Out Contents Complexity Perplexity Carrying Capacity Should This Be An SPA? The Pits Aftermath Last time, we looked at how JavaScript-based web development compounded serving errors on US public sector service sites, slowing down access to critical…

13 Aug 2024

23 min read

Other posts in the series: Reckoning: Part 1 — The Landscape Reckoning: Part 3 — Caprock Reckoning: Part 4 — The Way Out --> Contents The Golden Wait The Truth Is In The Trace Zip It Near Peers Blimey JavaScript Masshattery Maryland Enters The Chat Chattanooga Chug Chug SNAP? In Jersey? Fuhgeddaboudit Hoosier Hospitality Deep Breaths The Golden Wait BenefitsCal…

12 Aug 2024

12 min read

Instead of an omnibus mega-post, this investigation into JavaScript-first frontend culture and how it broke US public services has been released in four parts. Other posts in the series: Reckoning: Part 2 — Object Lesson Reckoning: Part 3 — Caprock Reckoning: Part 4 — The Way Out When you live in the shadow of a slow-moving crisis, it's natural to…

30 Jul 2024

10 min read

The W3C Technical Architecture Group1 is out with a blog post and an updated Finding regarding Google's recent announcement that it will not be imminently removing third-party cookies. The current TAG members are competent technologists who have a long history of nuanced advice that looks past the shouting to get at the technical bedrock of complex situations. The TAG also…

10 Mar 2024

9 min read

There are only two-and-a-half reasons to build a browser, and they couldn't be more different in intent and outcome, even when they look superficially similar. Learning to tell the difference is helpful for browser project managers and engineers, but also working web developers who struggle to develop theories of change for affecting browser teams. Like Platform Adjacency Theory and The…

25 Feb 2024

18 min read

Update: OWA is out with an open letter appealing to Apple to do better. If you care about the future of the web, I encourage you to sign it, particularly if you live in the EU or build products for the common market. After weeks of confusion and chaos, Apple's plan to kneecap the web has crept into view, menacing…

31 Jan 2024

27 min read

The global device and network situation continues to evolve, and this series is an effort to provide an an up-to-date understanding for working web developers. So what's changed since last year? And how much HTML, CSS, and (particularly) JavaScript can a new project afford? Contents The Budget, 2024 JavaScript-Heavy Markup-Heavy Calculate Your Own Situation Report Mobile Desktop Takeaways The Great…

1 Jan 2024

19 min read

The tech news is chockablock1 with antitrust rumblings and slow-motion happenings. Eagle-eyed press coverage, regulatory reports, and legal discovery have comprehensively documented the shady dealings of Apple and Google's app stores. Pressure for change has built to an unsustainable level. Something's gotta give. This is the backdrop to the biggest app store story nobody is writing about: on pain of…

22 Feb 2023

14 min read

If you're a web developer not living under a rock, you probably saw last week's big Safari 16.4 reveal. There's much to cheer, but we need to talk about why this mega-release is happening now, and what it means for the future. Contents WebKit's Roaring Twenties Good Things Come In Sixes What Changed? Headcount Is Destiny Early Innings But first,…

4 Feb 2023

15 min read

For most of the past decade, I have spent a considerable fraction of my professional life consulting with teams building on the web. It is not going well. Not only are new services being built to a self-defeatingly low UX and performance standard, existing experiences are pervasively re-developed on unspeakably slow, JS-taxed stacks. At a business level, this is a…

19 Dec 2022

12 min read

TL;DR: To serve users at the 75th percentile (P75) of devices and networks, we can now afford ~150KiB of HTML/CSS/fonts and ~300-350KiB of JavaScript (gzipped). This is a slight improvement on last year's budgets, thanks to device and network improvements. Meanwhile, sites continue to send more script than is reasonable for 80+% of the world's users, widening the gap between…

23 Jun 2022

21 min read

Gentle reader, I made a terrible mistake. Yes, that's right: I read the comments on a MacRumors article. At my age, one knows better. And yet. As penance for this error, and for being short with Miguel, I must deconstruct the ways Apple has undermined browser engine diversity. Contrary to claims of Apple partisans, iOS engine restrictions are not preventing…