9 min

Shopify collection limits

A row of six related products came out one card short on about a third of a client's catalog, and the thing eating the missing card was a limit I'd never read about, being spent by a block I hadn't written.

Shopify Ecommerce
6 min

It got slower while I optimized it

I added lazy loading to every image on a site in about 20 minutes, felt pleased with myself, and then measured it and found the pages were taking longer to show their main content than before I started.

Performance Images
8 min

Cumulative Layout Shift

A client stopped in the middle of a status call to say their own site had done the thing where it jumps, which is the behavior I'd been writing into audit documents for them since 2018 with nothing to show for it.

Performance SEO
11 min

I had to type my own address

A five-month redesign went out in one drop, conversion came down about 8%, and the thing doing it was a checkout field that had quietly stopped telling the browser what it was for.

Culture Forms
7 min

The big file was dead

I spent my first full day on an inherited store reading the file everybody had warned me about, and the git log said nobody had changed a line of it since 2018.

Git Culture
9 min

Blank on purpose

A client's homepage sat blank for a second and a half before it painted anything, and the code holding it there came from the tool they had bought to make the site convert better.

Performance Tooling
7 min

What a performance budget is for

A designer asked in March whether we could add a semibold for the card headings. I said yes inside a minute, on a project where I had written the performance budget myself in January.

Performance Agency
9 min

Six kinds of white

A client asked what it would take for their site to go dark along with their laptop, I said half a day, and then I searched the stylesheet for white and got 61 results.

CSS Accessibility
7 min

One letter behind

I rewrote a staff directory with hooks the week they landed, and the search box started returning the results for whatever I'd typed a keystroke earlier.

React JavaScript
9 min

A week became a day

I said about a week on a call and meant it, and two days later the word about was gone and there was a date in the plan with my name next to it.

Agency Culture
8 min

Can I delete this?

I ran git blame on a line I could not explain and got back a one-word message with my own name on it, and the word was fix.

Git Documentation