Insights

Notes from a working studio.

What we learn shipping fixed-scope sprints, written down. No growth hacks, no listicles — one note at a time, when there's something worth saying.

I checked 12 Surrey businesses on Apple Maps. Eight were wrong.
FeaturedSEO · Apr 2026 · 6 min

I checked 12 Surrey businesses on Apple Maps. Eight were wrong.

I spent a Saturday auditing local businesses on Apple Maps and found a pattern most owners don't know is costing them. Here's what's broken and the 20-minute fix.

Read the note →
02

An AI agent triaged our inbox for two weeks. Three things broke.

I wired Claude into our support inbox to classify and draft replies, then watched what happened over 84 emails. Here are the three failures that taught me where AI agents shouldn't touch customer…

AIApr 2026
03

Shopify GraphQL vs REST: which one to use for a new app in 2026

Most tutorials still show REST. Shopify's docs now nudge you at GraphQL. Here's the actual decision framework, with rate-limit math and a migration path from someone who shipped both.

ShopifyApr 2026
04

Is building a Shopify app worth it in 2026? A builder's honest answer

I shipped a Shopify app. Here are the receipts — what it paid, what it cost, and the one question to answer before you write a single line of code.

ShopifyApr 2026
05

I spent 60 hours wiring Claude's API into a real product. Here's everything that broke.

The five things nobody warned me about: context rot, prompt injection via product titles, rate-limit cascades, retry-cost explosions, and MCP loops that never terminate. Each with a fix.

AIApr 2026
06

Firebase vs Supabase in 2026: I built the same app on both

Four years of Firebase in production. Two months of Supabase on the same product. The decision framework, the real trade-offs, and when I'd pick each.

EngineeringApr 2026
07

What a Shopify app actually costs to build in 2026 (with receipts)

Three tiers, three real numbers, and the hidden costs nobody quotes: review queue, revenue share, merchant support, API drift. What you're really buying at each price point.

ShopifyApr 2026
08

I compared 5 AI coding assistants for 30 days. The winner was a surprise.

Real client work, not toy benchmarks. Thirty days with Claude Code, Cursor, Copilot, Windsurf, and Gemini. The ranking, the receipts, and the metric I wish I'd tracked from day one.

AIApr 2026
09

Why your React site isn't ranking — the prerender gap nobody explains

Most React SPAs ship an empty body to Google. Here's what the crawler actually sees, why the JS-render queue can take weeks, and the three fixes ranked by effort.

EngineeringApr 2026
10

Why I stopped chasing perfect Lighthouse scores

A perfect 100 told me nothing about my real users. Here's the gap between lab and field data, the three numbers that actually matter, and the audit I run instead.

EngineeringApr 2026
11

I audited 20 Surrey small business websites. 18 had the same bug.

A Saturday audit of 20 Surrey, BC small business sites. 18 had NAP inconsistencies costing them local Maps rank. The bug, the fix, and why it keeps happening.

SEOApr 2026
12

We migrated from Hostinger to Vercel. Here's what actually broke.

The migration itself took an evening. The aftermath took two weeks. Six specific things broke that the standard migration blog posts don't mention — with the fixes for each.

EngineeringApr 2026
13

The one-line bug that hid every article from Google

For three months my Journal was invisible to Google. The cause was a single template literal in a Cloud Function. Here's how I finally caught it.

EngineeringApr 2026
The measured letter

One useful email a month.

New notes, what we shipped, and one thing we'd do differently. No launches, no fluff, unsubscribe anytime.