Broken Windows Don't Fix Themselves. Neither Do Broken Coders.

Broken Windows Don't Fix Themselves. Neither Do Broken Coders.

By Derek Neighbors on May 23, 2025

You’re in the file.

That’s all that matters.

Not whether it’s your ticket.
Not whether it’s your code.
Not whether someone told you to fix it.

You’re standing in front of a broken window. Duplicate logic. Dead branches. Method chains so brittle they might as well be dental floss. You see it.

And if you walk past it?
You’re not just part of the problem. You are the problem.

“It’s Not My Job”

You saw it.
You touched it.
You shipped it dirty anyway.

You added a sixth elsif. You didn’t clean it.
You saw respond_to? in three places. You copied it again.
You found the helper that returns five different types. You wrote a sixth.

You didn’t just inherit the mess.
You perpetuated it.

Maybe the tests passed. Maybe no one noticed.
But you knew.

“We’ll Fix It Later”

You won’t.
Nobody comes back.
Later is a lie devs tell themselves while pushing garbage to main.

It’s the same lie as:

“I’ll document this tomorrow.”
And we all know that commit’s never coming.

Now AI does 80 percent of your boilerplate.
It renames variables, writes tests, fixes indentation, even explains your legacy nightmares better than your comments ever did.

So what’s your excuse?

You say you don’t have time?
AI just gave it to you.

You say you’re not sure how to fix it?
AI literally showed you.

AI isn’t your threat.
It’s your mirror.
It’s showing you the cleanup you’re too lazy to do.

AI Changed the Game

AI is shipping clean pull requests while you’re still debating file structure.
It’s rewriting your legacy helpers while you’re still adding TODOs.

It’s faster than you.
Smarter than you at syntax.

But it can’t care.
It can’t lead.
It can’t choose what better looks like.

So what’s left?
Judgment.
Taste.
Discipline.

And if you’re not bringing those?
You’re already behind.

Not because AI replaced you.
Because someone braver already did.

Be the Developer Who Fixes It

You don’t need a module.
You don’t need permission.
You don’t need another goddamn grooming session.

You need one line that deletes four.
You need to collapse the elsifs.
You need to stop pretending the mess isn’t yours just because you didn’t write it.

Every broken window you fix is a middle finger to mediocrity.
Every mess you ignore is a trap you leave for someone else.

Fix one broken window today.
Or admit you’re the dev everyone else hates cleaning up after.

Final Thought

You want to stand out?
Be the dev who ships and cleans.
Be the dev whose name in a commit means the file got better.
Be the dev whose PRs make people exhale instead of swear.

So what’s your next commit?

Further Reading

Cover of The Pragmatic Programmer

The Pragmatic Programmer

by David Thomas & Andrew Hunt

Classic programming wisdom including the broken windows theory applied to software development.

Cover of Clean Code

Clean Code

by Robert C. Martin

A handbook of agile software craftsmanship focusing on writing clean, maintainable code.

Cover of Refactoring

Refactoring

by Martin Fowler

Improving the design of existing code through disciplined refactoring techniques.

Cover of The Mythical Man-Month

The Mythical Man-Month

by Frederick P. Brooks Jr.

Essays on software engineering and the human factors in programming projects.