RSSAmplifier

Blog

Cory House

The Art of Software Development.

coryhouse.devRSS feed ↗2151 posts

Latest posts

I thought AI would lead to worse code

I thought AI would lead to worse code. I was wrong. My code is better than ever because I'm more willing to refactor when AI does it for me. I'm mo...

My personal site has been on Wordpress for 14 years

My personal site has been on Wordpress for 14 years. Just found out the DB is corrupted and I have no recent backup. Solution: I told Claude "Use d...

Hot take: 🌶️ An agent should be generating nearly all code today

Hot take: 🌶️ An agent should be generating nearly all code today. If the agent fails, the focus should be on improving instructions, prompts, arch...

Problem: How do I quickly tell AI exactly which elements I want to change

Problem: How do I quickly tell AI exactly which elements I want to change? Solution: Agentation This npm package displays a toolbar in your app so...

In 2026, many dev teams still fail to get the basics right

In 2026, many dev teams still fail to get the basics right. Click ops No CI server No feature flags No automated tests Long-lived branches Big, amb...

Teammate wanted to try Claude's new expensive ultrareview but didn't have access

Teammate wanted to try Claude's new expensive ultrareview but didn't have access. So he told Claude "just do what ultrareview does"... Result? It s...

Wild realization: AI means I shouldn't write *any* code anymore

Wild realization: AI means I shouldn't write *any* code anymore. Why? Because AI is better than me. 1. AI sees more than me. It sees *all* the conn...

The acceleration from AI is unbelievable

The acceleration from AI is unbelievable. After *only 5 weeks* of development on a new project with 4 devs, we have over 4,000 tests. That's ~200 t...

Pet peeve: Projects where many files are named index

Pet peeve: Projects where many files are named index. Result? Every tab in my editor is named index. Every file in my diff is named index. So I hav...

Problem: AI generates code that doesn't match our formatting and linting...

Problem: AI generates code that doesn't match our formatting and linting standards. Solution: Create a stop hook that runs Prettier and ESLint afte...

Dev team red flags 🚩 “We do Scrum” “We do Git flow” “We use <insert...

Dev team red flags 🚩 “We do Scrum” “We do Git flow” “We use ” “We have a change approval board” “We rarely deploy...

Ya know how in a job interview you can tell if someone is a good candidate...

Ya know how in a job interview you can tell if someone is a good candidate in the first 5 minutes? I’ve found the same thing with dev teams. You ca...

Been building a new Next.js app over the last few weeks and I'm happy to say...

Been building a new Next.js app over the last few weeks and I'm happy to say Next has been stable, fast, and all around enjoyable. RSC works great....

I thought AI would lead to more slop

I thought AI would lead to more slop. I've actually found it's leading to the best code I've written. Here's why: I can fix anti-patterns quickly....

The near future: AI generates code

The near future: AI generates code. AI tests code. AI commits code. AI pushes code. AI reviews code. AI deploys code. So, developers don’t write or...

Today at a conference, I asked a room of 250 developers this question: "If...

Today at a conference, I asked a room of 250 developers this question: "If your child was 18, would you recommend they pursue a career in programmi...

4 weeks of coding by 4 developers and over 1,000 unit tests that pass in...

4 weeks of coding by 4 developers and over 1,000 unit tests that pass in under 10 seconds. Over 90% code coverage. How? Heavy use of Claude Code wi...

I’ve never been great at regex

I’ve never been great at regex. But now, AI generates it for me. It writes tests for each regex it generates, and quickly explains existing regexes...

This is so slick

This is so slick. It used to be tricky to create an ESLint rule. Now I just tell Claude. Example: We want to assure all SQL queries are multi-line...

I used Windows for 20+ years

I used Windows for 20+ years. Then I spoke at a frontend conference in San Fran...the entire audience was laptops with Apple logos. I actually hid...

I see many people running multiple agents simultaneously

I see many people running multiple agents simultaneously. I avoid it. Instead, here’s what I typically do while my *one* agent is running: - Review...

The problem with an immature IT org is it tends to repel the people who are...

The problem with an immature IT org is it tends to repel the people who are most capable of fixing it. When easy things are needlessly hard, and th...

Just learned a team at Microsoft is doing code reviews *after* merge

Just learned a team at Microsoft is doing code reviews *after* merge. Why? To move faster. No more pausing work to wait for code reviews. No need f...

I’ve spent 8+ hours a day building with Claude Code and Opus over the last...

I’ve spent 8+ hours a day building with Claude Code and Opus over the last few weeks and I’m going to call it: Programming is more fun than ever. I...

Y'all out there running multiple agents at once scare me

Y'all out there running multiple agents at once scare me. Why? Because it only saves time if I skip reading the code! And I've found human code rev...

Problem: HTTP status codes in code aren't type safe and require looking them...

Problem: HTTP status codes in code aren't type safe and require looking them up or memorizing them all. Solution: http-status-codes Now I have auto...

Bun test is crazy fast, but unfortunately we just switched back to Vitest

Bun test is crazy fast, but unfortunately we just switched back to Vitest. Why? Because Bun has an awful mocking bug: Mocks leak. A mock in one tes...

Rule: If the prompt is likely to be longer than the code change, I should...

Rule: If the prompt is likely to be longer than the code change, I should probably code it myself instead of using AI.

Even in the age of AI, I can do many tasks more quickly manually than via...

Even in the age of AI, I can do many tasks more quickly manually than via prompting. Entering the right prompt, granting access, waiting for respon...

One of the most common reasons I leave GitHub Copilot is to try a new model...

One of the most common reasons I leave GitHub Copilot is to try a new model the moment it's announced. The Copilot team usually quickly adds new mo...

Using Codex today instead of Claude Code

Using Codex today instead of Claude Code. I like how concise the output is. I can easily do diffs by just expanding next to each impacted file. And...

My big frustration with skills is they're not consistently invoked

My big frustration with skills is they're not consistently invoked. In this post, Vercel saw the same issue. Their solution? Put a compressed index...

Excellent post

Excellent post. Orchestrating multiple agents at once is tricky and the DX could certainly be better. But my take is, I typically don't need to run...

Problem: Generating code via AI may lead to skill atrophy and code I don't...

Problem: Generating code via AI may lead to skill atrophy and code I don't understand. 4 solutions: 1. Use Claude's /output and select "Explanatory...

I keep improving my agentic feedback loop

I keep improving my agentic feedback loop. A feedback loop is critical because it helps the coding agent see if it made any mistakes. My feedback l...

Prediction: Frameworks will start shipping official skills

Prediction: Frameworks will start shipping official skills. Vercel is already shipping handy React skills, but they're not included in the Next.js...

Problem: You want to share a skill with people using different agents, not...

Problem: You want to share a skill with people using different agents, not just Claude. Solution: Use the add-skill npm package. Vercel used the ad...

Woah, Vercel just released the React Best Practices skill

Woah, Vercel just released the React Best Practices skill. Looks super handy. Love the idea of encapsulating all this knowledge in a single skill....

You've probably heard of the BDD testing style, using Given, When, Then

You've probably heard of the BDD testing style, using Given, When, Then. Just saw a test suite using this style, but calling well-named functions p...

Problem: Our team uses many different AI coding tools, so where do we put...

Problem: Our team uses many different AI coding tools, so where do we put our instructions? Maintaining separate Claude, Copilot, and Cursor instru...

Problem: “you could have AI write/maintain your traditional E2E tests, but i...

Problem: “you could have AI write/maintain your traditional E2E tests, but i promise they'll quickly miss CSS selectors” Solution: Don’t use CSS se...

With agent instructions files like http://CLAUDE.md, it's tempting to add...

With agent instructions files like http://CLAUDE.md, it's tempting to add lots of detailed guidelines. But, I only add to the instructions file as...

Problem: I’d like to be able to check on or work with my laptop’s Claude or...

Problem: I’d like to be able to check on or work with my laptop’s Claude or Codex instance via my phone. Solution: Happy. Jump right into an existi...

Last month I enjoyed "Advent of Claude: 31 Days of Claude Code"

Last month I enjoyed "Advent of Claude: 31 Days of Claude Code". The author just published this single blog post with all the tips in one spot: htt...

Problem: In Claude Code, when should I create a custom slash command vs a skill

Problem: In Claude Code, when should I create a custom slash command vs a skill? Solution: Often either works. But, create a slash command when you...

Problem: I want Claude to use Chrome

Problem: I want Claude to use Chrome. Solution: Here's 3 options and when I use each: 1. Playwright MCP – Use as primary cross-browser testing tool...

AI is an accelerator

AI is an accelerator. So, bad guardrails = bad code, faster. Useful guardrails: -Types -Tests -Linting -Auto-formatting -AI reviews -Clear definiti...

Some people run multiple coding agents at once

Some people run multiple coding agents at once. But I'm skeptical - is it worth it? When coding with AI assistance, human inspection and approval i...

Problem: I want to run multiple agents at once

Problem: I want to run multiple agents at once. 4 solutions: 1. Clone the repo twice. Use 2 editor instances. 2. Use Git worktree to checkout multi...

Problem: You want to hide a component, but still preload data and remember...

Problem: You want to hide a component, but still preload data and remember it's local state while hidden. Solution: React's new co...