Shopify
Migrating a Shopify Store to Online Store 2.0 Without Breaking Everything
A practical migration order, the things that silently break, and how to verify you did not lose content along the way.
Shopify
A practical migration order, the things that silently break, and how to verify you did not lose content along the way.
Shopify
The storefront cached availability, the customer added to cart, and checkout disagreed. Here is where the state diverges and what to do about it.
Debugging
An error message is read by a person under stress who needs to make a decision. Almost nobody designs them that way.
Bug Hunt
The classic heisenbug. Here is why observation changed the outcome, and the three techniques that found it anyway.
Bug Hunt
Every replica restarted at once during a brief database blip. The health check was working exactly as designed, and the design was wrong.
Shopify
Everyone says apps slow your store down. Almost nobody says by how much. Here are measurements from real stores and a method for auditing your own.
Shopify
The proxy path, the subpath prefix, and the actual route all have to line up. Here is the checklist and how to verify the signature properly.
PostgreSQL
Two transactions each hold what the other wants. Here is how to read the deadlock report, find both statements, and restructure so it cannot happen again.
Docker
Your image builds on a Mac and dies in production. What the error means, how to check an image's architecture, and how to build multi arch properly.
Engineering Culture
A document nobody reads, listing action items nobody does, produced to satisfy a process. Here is the version that actually changes something.
Shopify
Headless Shopify is genuinely better for some stores and a costly mistake for most. Here is how to tell which one you are.
Debugging
Every layer you add to avoid repetition adds a place where the truth can hide. Here is how to tell which abstractions earn their cost.