The Myth of “Clean Code” in Early-Stage Projects
There’s this romanticized notion in tech circles that every project, no matter how small or new, should follow “clean code” principles from day one. But I’ll be honest: I don’t buy it.
When you’re validating an idea—whether it’s a micro-SaaS, an automation script, or an internal tool—clarity of intent matters far more than the elegance of your syntax.
I’ve seen people abandon great ideas because they got trapped in the rabbit hole of “doing things the right way,” following architecture patterns meant for production-scale apps… for a 200-line MVP.
Let’s break it down:
⸻
1. You Can’t Refactor What Doesn’t Exist
You don’t need a folder structure that mimics a Fortune 500 monolith. You need a proof that your project solves a real problem. Clean code is something you evolve into—not something that should delay your 0.1 release.
⸻
2. Readable ≠ Overengineered
Readable code is important. But obsessing over things like SOLID principles, strict domain boundaries, and factory patterns—before your idea even proves traction—is just a form of procrastination dressed as best practice.
⸻
3. Your First Draft is Meant to Be Ugly
And that’s okay. Real creativity lives in messy drafts. I write throwaway scripts all the time just to think through a problem. Some evolve into products. Most die peacefully in /tmp.
Clean code has its place. But worshipping it too early kills momentum.
⸻
4. Speed is a Feature (at First)
You want to build fast, test fast, and fail fast. That doesn’t mean write garbage—it means prioritize velocity. Clean code can come in iteration two, once you know you’re building something worth maintaining.
⸻
So yeah—I don’t write clean code when I’m exploring. I write “clear-enough” code. It’s the code that’s good enough to prove the point and bad enough that I can throw it away guilt-free.
And honestly, I’ve had more success working this way than when I tried to be the Clean Code Cop from line one.
⸻
#OpLog Day 9
oplog.isalman.dev
Source: github.com/hotheadhacker/akkoma-blog