Putting video back where it belongs
The problem with putting video in a git repo. The repo kept getting heavier, sprint after sprint. We were committing big MP4s next to the code, builds were slowing down, and deploys with them. Case studies lead with video, so every new client made it worse. We needed the media to live somewhere else, and to turn up in a size that suited whatever screen it landed on. But where? The CMS was out:...
The problem with putting video in a git repo. The repo kept getting heavier, sprint after sprint. We were committing big MP4s next to the code, builds were slowing down, and deploys with them. Case...
Twenty-four modules, one wrapper
Every case study was its own Astro page. That was the first problem. Each page had its own layout logic, its own spacing decisions, its own way of handling full-bleed sections versus contained text. Some used inline styles. Some used one-off SCSS files. None of them agreed on what "default spacing" meant. Adding a new case study meant copying an old one, deleting most of it and hoping the parts...
Every case study was its own Astro page. That was the first problem. Each page had its own layout logic, its own spacing decisions, its own way of handling full-bleed sections versus contained text....
We test the revenue path
The contact form is the only page on this site that generates leads. So that's where the tests live. We don't chase coverage numbers. What we have is a targeted set of tests aimed at the things that would hurt if they broke: the forms, the pipeline that processes submissions and the CI that catches problems before production. Dependency injection as a testing technique. Our submission pipeline...
The contact form is the only page on this site that generates leads. So that's where the tests live. We don't chase coverage numbers. What we have is a targeted set of tests aimed at the things that...
The testbed nobody will see
Every case study was a standalone Astro page with its own layout, its own component imports and its own way of breaking on mobile. Twenty-two of them. Each one built at a different time by a different combination of people, with whatever patterns felt right that week. Changing shared behavior (a hero transition, a spacing value, a navigation pattern) meant touching every file individually. The...
Every case study was a standalone Astro page with its own layout, its own component imports and its own way of breaking on mobile. Twenty-two of them. Each one built at a different time by a...
We haven’t missed a Thursday in 28 weeks
We ship every week. Nobody outside the team could tell. The work was real (features, fixes, infrastructure changes) but invisible. Clients saw results on their pages. Visitors saw a polished site. Nobody saw the pace. We wanted a way to make the cadence obvious without turning it into a marketing exercise. The format we chose. Plain `.txt` files in a folder. That's it. `public/release-notes/`...
We ship every week. Nobody outside the team could tell. The work was real (features, fixes, infrastructure changes) but invisible. Clients saw results on their pages. Visitors saw a polished site....