✕ Clear all filters
46 articles

📰 Dev.to · Ian Johnson

46 articles · Updated every 3 hours · View all reads

All Articles 67,621Blog Posts 99,886Tech Tutorials 16,357Research Papers 13,813News 12,551 ⚡ AI Lessons
A Test Pyramid That Earns Its Confidence
Dev.to · Ian Johnson 4d ago
A Test Pyramid That Earns Its Confidence
Most test pyramids are aspirational. People draw the triangle, point at "many unit tests, fewer...
AGENTS.md is Not a Junk Drawer
Dev.to · Ian Johnson 4d ago
AGENTS.md is Not a Junk Drawer
A rules file starts as one page. Six months later it is fourteen pages and nobody can remember what...
Hexagonal Architecture in Practice: Ports, Adapters, and Tests That Skip the Database
Dev.to · Ian Johnson 5d ago
Hexagonal Architecture in Practice: Ports, Adapters, and Tests That Skip the Database
This is the technical companion to a piece I wrote about cutting our CI from ~20 minutes to ~5. That...
How Hexagonal Architecture Cut My CI Time From 20 Minutes to 5
Dev.to · Ian Johnson 5d ago
How Hexagonal Architecture Cut My CI Time From 20 Minutes to 5
For most of the past year, our CI was a 20-minute ceremony. Push a branch, walk away, come back to...
Feature Flags That Forgot to Leave
Dev.to · Ian Johnson ⚡ AI Lesson 6d ago
Feature Flags That Forgot to Leave
A feature flag goes into the codebase to make a rollout safer. The new behavior lives behind the...
The Minimum Viable Test Suite for Working with Agents
Dev.to · Ian Johnson 6d ago
The Minimum Viable Test Suite for Working with Agents
The advice "you need more tests" is correct in roughly the same way "you should eat better" is...
Sensors and Guides: Two Ways Your Harness Talks to Your Agent
Dev.to · Ian Johnson 1w ago
Sensors and Guides: Two Ways Your Harness Talks to Your Agent
Birgitta Böckeler, writing about harness engineering at Thoughtworks, draws a distinction that turns...
Don't Make the Agent Re-Run the Test Suite to Find the Failure
Dev.to · Ian Johnson 1w ago
Don't Make the Agent Re-Run the Test Suite to Find the Failure
Here is a small failure mode that cost me time for longer than it should have. The agent would run...
The Five-Thousand-Line File
Dev.to · Ian Johnson 1w ago
The Five-Thousand-Line File
Every team has one. Sometimes it is called utils.ts or helpers.py. Sometimes it has the name of a...
The Harness Flywheel: How Reviews Become Rules
Dev.to · Ian Johnson 🤖 AI Agents & Automation ⚡ AI Lesson 1w ago
The Harness Flywheel: How Reviews Become Rules
The most expensive failure mode in an agent-augmented team is not the agent making mistakes. It is...
When the Docs Lie
Dev.to · Ian Johnson 🔧 Backend Engineering ⚡ AI Lesson 1w ago
When the Docs Lie
There is one thing worse than a codebase with no documentation: a codebase with documentation that...
Why AI Agents Love Boring Code
Dev.to · Ian Johnson 🤖 AI Agents & Automation ⚡ AI Lesson 1w ago
Why AI Agents Love Boring Code
The most useful thing you can do for your coding agent is not a better prompt or a smarter model....
The Code Nobody Will Delete
Dev.to · Ian Johnson ⚡ AI Lesson 1w ago
The Code Nobody Will Delete
At the bottom of every long-lived codebase is a function nobody has called in three years. Above it...
Post-mortems and RCAs: why you should be doing them
Dev.to · Ian Johnson ⚡ AI Lesson 1w ago
Post-mortems and RCAs: why you should be doing them
The hard part of incidents isn't surviving them. It's making them count. Most teams handle the acute...
Continuous Delivery and Agents
Dev.to · Ian Johnson 1w ago
Continuous Delivery and Agents
There's a moment in every team's adoption of coding agents where the question shifts from "can it...
Custom behavior without custom code
Dev.to · Ian Johnson 📋 Product Management ⚡ AI Lesson 1w ago
Custom behavior without custom code
Every successful SaaS product eventually meets the same question: a customer asks for something...
Why I prefer docker + make
Dev.to · Ian Johnson 1w ago
Why I prefer docker + make
A development environment is one of those things you don't notice until it goes wrong, and then you...
"It works" has two jobs in software. Sometimes it describes a state. Sometimes it ends a conversation. A short piece on the difference, and what it costs you later.
Dev.to · Ian Johnson 2w ago
"It works" has two jobs in software. Sometimes it describes a state. Sometimes it ends a conversation. A short piece on the difference, and what it costs you later.
It werks! ...
It werks!
Dev.to · Ian Johnson 2w ago
It werks!
Someone on your team says "it works" and there's a moment of relief, maybe even satisfaction. The...
Stop nesting deeply
Dev.to · Ian Johnson 2w ago
Stop nesting deeply
Open a function and let your eyes drift to the right edge of the screen. If the code is leaning over...