from/prod
← All companies

THE COMPANY INDEX TRACKED BLOG

Alex Russell

Ideas, decisions, and lessons from the team.

infrequently.org (opens on the source site)
26Posts tracked
3 weeks agoLatest publication
0.6Posts / month over the last 12 months

Latest writing

20 of 26 posts

From PrismJS to Better PrismJS to MicroLighter in Three Painless* Steps (opens on the source site)

An excellent feature of Eleventy1 is the @11ty/eleventy-plugin-syntaxhighlight plugin, which adds build-time syntax highlighting support via PrismJS. Official support keeps 11ty sites from worrying about client-side bloat from JS-based highlighters and the common failure mode of over-including language definitions.2 But nothing's perfect. ContentsLilliputian Adventures In Line NumberingGreener Pastures The official plugin integrates naturally, and I took to using it via the usual triple-backtick markdown syntax: # The Usual Markdown Nonsense { #the-usual-nonsense } And now for something…

Read at the source

The Wicked Reason Removing Code Beats Better Scheduling (opens on the source site)

My colleague Marko Ilić has published an insightful piece on how to schedule work on the critical path, and I recommend reading it before proceeding here. ContentsElimination vs. Scheduling: An Organisational PerspectiveWhat's Good for the Goose..."Preloading" as SchedulingScheduling Is For ClosersGeneral-Purpose Advice ...and welcome back. As you likely anticipated, Marko's beautifully presented post kicked off healthy discussions around the office. Since we almost always see eye-to-eye, it seemed interesting to surface some of that discussion here. With his permission, what follows are…

Read at the source

The Absolute State of Management (opens on the source site)

It is by no means the gravest linguistic crime of the React epoch,1 but "state management" grates like nails on chalkboard. A Socratic dialogue I keep having about it goes something like this: me: This UI is far too heavyweight for what it does, have you considered not using React? them: But how will we do state management without React? me: What do you mean? are reactive. them: React manages state in our app. me: It does? Then what are for? them: Oh, those manage state. me: The libraries that trigger this "Who's on First?" routine include: MobX, which promises "simple, scalable state…

Read at the source

Abject Praise (opens on the source site)

It's perilous to disagree with someone as wise and thoughtful as Jeremy, but for the past fortnight his post in response to Apple's iOS 27 marketing invades my quiet moments like a cricket in the attic. "Why", I ruminate, "should someone who understands the state of play give Apple credit for doing less than the minimum while rubbishing those who have consistently done more?" ContentsReduxFeatures Over TestsFocus AreasConsequencesYou Do Not Have To Hand It To ThemEverywhere You TurnQuality Has A Quality All Its Own Redux Like Apple's previous marketing of Safari 16.4 and Safari 26, the…

Read at the source

The Web Is An Antitrust Wedge (opens on the source site)

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 that can safely unlock maximal competition, regulators are gripped by alt store fever dreams; driving down cul-de-sacs that will leave the duopolists' power intact even if new native app stores materialise. Worse,…

Read at the source

Naked Power (opens on the source site)

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 continuously available in Google's Play and Apple's App Store, marking new lows in moral cowardice and non-enforcement of the duopolist's own policies. Now we sit on tenterhooks, wondering if the worst has actually passed. What…

Read at the source

The Performance Inequality Gap, 2026 (opens on the source site)

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 quarter of devices and networks will perform worse than this baseline. Plugging these parameters into the updated budget calculator, we can derive critical-path resource thresholds for three and five second page load targets. Per usual, we…

Read at the source

The App Store Was Always Authoritarian (opens on the source site)

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 both sides of its mouth in ways it had previously reserved for dissembling arguments against threats to profits, like right-to-repair and browser choice. They are, of course, linked. ContentsWho's Afraid of the Big Bad Web?Dots Unconnected"Who should rule?"The Price…

Read at the source

11ty Hacks for Fun and Performance (opens on the source site)

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. ContentsPage-Specific Resources via Shortcodes and the 11ty BundlerMo Pagination, Mo ProblemsBuild Time ImpactScroll-Position Based Delayed Code LoadingFaster CSS Selectors for 11ty Syntax HighlightingLean Rada's CSS-only Low-Quality Image PreviewsBonus Hack: Global Acronyms for Better AbbreviationsDoes It Work? Page-Specific Resources via Shortcodes and the 11ty…

Read at the source

Apple's Antitrust Playbook (opens on the source site)

ContentsLies by Any Other NameGreat Artists StealDear 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 I was out, they pull me back in. Over the past 24 hours, Cupertino has played the hits from its iPhone-era anti-user, anti-business, anti-rule-of-law power trip. To recap: Apple sent a demand that the EU give up on DMA enforcement in a petulant and utterly…

Read at the source

Comforting Myths (opens on the source site)

Update: The charts below were inappropriately snapped, compressing the range of values. This has been corrected. Feature availability numbers also changed since drafting and have been updated. 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 much to argue over…

Read at the source

Web Standards and the Fall of the House of Iamus (opens on the source site)

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 because Blink's rigorous launch process frequently prevents unvalidated designs from shipping. Except for iOS, where Apple attempts to hide its role in undermining the competitive foundation of web…

Read at the source

Apple's Assault on Standards (opens on the source site)

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 choice. This is an existential threat to the web, but also renders web and internet standards moot. Internet standards bodies should recognise the threat and respond.…

Read at the source

Apple vs. Facebook is Kayfabe (opens on the source site)

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 different story. Net income dipped between late 2021 and early 2023 thanks to accelerating capital expenditures, not reductions in revenue. Despite strenuous efforts to sell the move, it's hard to…

Read at the source

Put Names and Dates On Documents (opens on the source site)

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 to be prescriptive — bordering on pushy — when colleagues accuse me of being Socratic to a fault about everything else? Because not only is unattributed writing a reliable time-waster, the careers of authors hang in the balance. ContentsWeighing Up Inline…

Read at the source

How Do Committees Fail To Invent? (opens on the source site)

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 "The Mythical Man-Month", available at fine retailers everywhere. Conway's Law is generally invoked to describe organisations working to solve well-defined problems, in which everyone is…

Read at the source

Links? Links! (opens on the source site)

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. I couldn't possibly comment. The result is a new links and resources page page which you can find over in the navigation rail. It's part list-of-things-I-keep-sending-people, part background reading, and part blogroll. The…

Read at the source

Conferences, Clarity, and Smokescreens (opens on the source site)

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 than well looked after. Many of the JSNation talks were of exactly the sort I'd hope to see as our discipline belatedly confronts a lost decade, particularly Jeremias Menichelli's lighting talk. It masterfully outlined how many of the…

Read at the source

Safari at WWDC '25: The Ghost of Christmas Past (opens on the source site)

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 2023: CSS text-wrap: pretty 2025: CSS progress() function 2023: Scroll-driven Animations (finally!!!) 2020: Trusted Types 2021: URL Pattern API early 2025: WebAuthN Signal API 2020: WritableStreams for the File System…

Read at the source

If Not React, Then What? (opens on the source site)

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 APIs, the majority of time spent with partners goes to remediating performance and accessibility issues caused by “modern” frontend frameworks and the culture surrounding them. Today, these issues are most pronounced in React-based stacks.…

Read at the source

Privacy choices

Reading never requires analytics. These choices last 90 days on this browser.

Essential sign-in and security storage always stays on. Read the privacy notice.