How to verify AI-generated code before you merge
A review loop for checking an AI-generated patch against the original failure, hostile inputs, trust boundaries, regression tests, and deployed behavior.
Product updates and practical guidance for building faster, safer, more reliable websites.
A developer's checklist for tracing an indexing problem through HTTP status, robots rules, canonicals, rendering, internal links, sitemaps, and Search Console.
13 articles
A review loop for checking an AI-generated patch against the original failure, hostile inputs, trust boundaries, regression tests, and deployed behavior.
Test keyboard use, focus, zoom, forms, dialogs, motion, content, and screen readers with eight browser checks automated audits cannot finish.
Lighthouse is controlled lab data. CrUX reports field data from real visits. Learn why the numbers diverge and how to use both without chasing the wrong score.
A 30-minute workflow for separating field and lab data, finding the affected metric, tracing recent changes, and choosing a measurable fix.
A fast Lefthook setup for staged-file linting, project type checks, related tests, formatting, lockfile drift, and an intentional escape hatch.
Audit AI-generated code for exposed secrets, swallowed errors, authorization gaps, unsafe SQL, reckless retries, and stale React effects.
Twelve pre-launch checks for builds, critical flows, SEO, accessibility, security, performance, monitoring, rollback, and post-deploy proof.
Choose a side-project stack by starting with familiarity, deployment shape, data ownership, operating cost, and a believable exit path.
Test whether your Content Security Policy blocks unsafe scripts, handles third parties, and reports violations without breaking the site.
Decide whether to merge a dependency update using security urgency, blast radius, lockfile changes, release timing, and evidence from your application.
A cookie banner cannot create consent after tracking has started. Audit storage and network requests, gate optional tools, and test both choices.
Fast checks belong at the developer's keyboard. CI should repeat the important ones from a clean environment and own the shared release boundary.
Occasional product updates and practical advice. No content calendar filler.
Email updates
Occasional updates. Unsubscribe any time.
✓
Check your email
We sent a confirmation link to that address. You are on the list once you press the button in that email.