Building AI guardrails for your dev teams
Most teams adopted AI tools bottom-up with zero guardrails. Here's how to add governance that protects the team without killing the momentum.
Most teams adopted AI tools bottom-up with zero guardrails. Here's how to add governance that protects the team without killing the momentum.
AI-assisted test generation isn't the hype or the hate — it's messier and more useful than either. Here's what actually works, what doesn't, and how to use it well.
Your repo structure is the context window for AI coding tools. Here's how to organize instruction files, conventions, and configuration so the output actually matches your codebase.
You copied the webhook verification snippet from the docs. The tests pass. But four common mistakes can still leave your endpoint wide open.
The goal of PCI DSS isn't to be compliant — it's to stay out of scope entirely. Opinions from enough audits to have them.
Retry logic sounds simple, until a naive retry charges someone twice or orphans a transaction for days. In payment systems, the edge cases are the whole story.
Designing APIs for PII, financial records, and settlement data isn't the same as a standard CRUD service. When the data is sensitive, the design principles shift.
A senior PHP developer's honest take on picking up Python -- what transferred immediately, what surprised me, and what I had to actively unlearn.
Floating point math is a silent source of bugs in payment systems. Here's why storing currency as integers eliminates an entire class of problems you didn't know you had.
Not every experiment is a button color. Here's how to A/B test backend algorithms, queries, and services without a single UI change.
After working remotely since 2011, I don't love the term 'work life balance' anymore. But here's what's actually helped.
Every app is battling for your attention. A short take on notification fatigue and building with your users' sanity in mind.
How I automated changelogs and deployment notifications to keep clients informed without extra manual work.
How to use Laravel model observers to abstract critical logic out of controllers and into maintainable, testable classes.
A friend asked for three reasons new developers should learn PHP. Here's what came to mind -- plus a bonus.
A contractor built a custom framework inside Laravel. Here's why that's a problem, and when rolling your own actually makes more sense.
An accurate, GIF-based depiction of what my wife and kids do during a lengthy conference call. No explanation needed.
A casual weekly meetup for developers on Chicago's Northshore -- coffee in the morning, code all day, beer in the evening.
A short reflection on turning thirty, looking back at the last decade, and setting the next round of goals.
A reflection on civic responsibility, fatherhood, and why showing up on election day isn't enough.
The story behind launching Hire More Veterans -- a project inspired by my mother and our family's military background.
A quick take on the Evernote pricing backlash, and why developers of all people should understand that good software costs money.
From MAMP to OS X Apache to Vagrant -- how Laravel Homestead changed my local development setup for the better.
A shift in thinking about Laravel migrations vs seeders -- when to use each, and why seeds should only be for testing.