I counted them: 34 repos on my GitHub that hadn't seen a commit in over a year. Each one started with genuine excitement. None of them shipped. Meanwhile, my ecommerce business flatlined as I chased the next shiny SaaS idea.
If you're reading this, your graveyard probably looks similar. Maybe it's Notion pages instead of repos. Maybe it's domain names you bought at 2 AM. The pattern's the same: start something, get distracted by something shinier, repeat until you question whether you can finish anything at all.
This is Shiny Object Syndrome, and it nearly ends building careers before they start.
The Framework Trap
I rebuilt my last project four times. Deno Fresh, Next.js, Tanstack Start, and finally Rails. Each time I convinced myself the framework was the problem. Spoiler: it wasn't.
Sound familiar? Maybe it's not frameworks for you. Maybe it's:
- Chasing the JavaScript framework of the week
- Building tools to avoid paying for subscriptions
- Starting the "AI-powered" version of everything
- Picking the exciting idea over the smart one
The pattern is always the same: we gravitate toward what's fun to build, not what's likely to work. We optimise for joy and forget about whether anyone will actually pay.
When you score them honestly, the sensible SaaS wins. But we don't pick it because it's not as exciting. We know the right answer but don't want to admit it.
The Week That Reveals the Problem
One indie hacker tracked every idea that crossed their mind for seven days. The result:
A browser extension for bookmarks. A Slack bot for standups. A course on something I'd barely learned myself. Each one felt urgent at the time.
Meanwhile, they had a half-built invoicing tool that three freelancers had already said they'd pay for. It needed maybe two more weeks of work. But those two weeks never came, because every morning brought a fresh distraction.
- Day 1: Start Project A with genuine excitement
- Day 10: Hit the first hard problem. A gnarly bug, a design decision, something that requires actual thinking
- Day 10 (same day): Project B appears in your mind, fully formed and beautiful
- Day 11: Convince yourself B is the better opportunity
- Day 12: "Pause" Project A (which really means abandon it)
- Day 24: Hit B's first hard problem. Project C appears...
The cycle isn't about laziness. It's about your brain choosing the dopamine hit of "new" over the discomfort of "stuck."
Why Solo Builders Get Hit Hardest
At a job, you can't just decide to work on something else because you're bored. There are standups, sprint commitments, colleagues who'd notice. The structure forces follow-through even when motivation dips.
Building alone strips away that scaffolding.
Nobody notices if you pivot. Nobody's disappointed when you abandon ship. The freedom that makes indie hacking appealing is the same freedom that enables endless restarts.
Every week, someone on Twitter announces $10K MRR with an idea that sounds simpler than yours. You forget they're 18 months ahead and showing only the highlight reel.
When you're unsure whether your current project will work (and you're always unsure), a new idea feels like clarity. Fresh starts feel safer than pushing through doubt.
What Chasing Shiny Objects Actually Costs
I did the maths on my abandoned projects:
If that time had gone into one thing, they'd have shipped something substantial.
But the real costs aren't just time:
What Actually Works
Most obvious advice doesn't help. Blocking Twitter doesn't stop the ideas. Willpower is finite and new ideas are infinite. What works is building systems that make switching painful and focusing easy.
1. The Capture Ritual
When a new idea hits, I don't evaluate it. I don't research it. I write one sentence in a dedicated place and immediately return to what I was doing.
The sentence matters. It satisfies the fear of forgetting without letting the idea hijack my attention. Most ideas that felt urgent in the moment look unremarkable a week later. The ones that don't? They'll still be there when I'm ready.
2. Score Before You Switch
Score every captured idea on three things:
Good to know before spending weeks on it. More importantly, scoring creates friction. You can't score an idea without thinking about it properly, and proper thinking usually deflates the initial excitement.
3. The Commitment Threshold
Before you can switch projects, hit a specific milestone on the current one. Not "when it feels right", but a concrete, measurable threshold:
- 10 real users (not friends)
- First paying customer
- Running for 30 days
- Core feature complete and deployed
The specific milestone matters less than having one. It transforms "I'll work on this until something better comes along" into "I'll work on this until X happens." The latter is a commitment. The former is a hobby.
4. Make Switching Expensive
- Build in public. Tweet what you're working on. Abandoning it means public failure, which stings more than private failure.
- Pre-commit resources. Buy the domain, set up the infrastructure, tell specific people you'll show them the beta. Sunk cost isn't rational, but it works.
- Scheduled exploration. Friday afternoons are for looking at new ideas. Outside that window, new ideas go in the capture list only.
5. Expect and Accept the Slog
Every project has a "boring middle" after the initial excitement fades but before the payoff arrives. Many founders interpret this as a sign they've picked the wrong project. It's actually inevitable.
When you hit the boring middle, don't question your choice. Just keep going. The people who ship aren't more motivated; they just push through the parts where motivation fails.
The System That Works
This isn't about killing creativity. It's about channelling it. The ideas still come. I just don't let them derail me.
The Uncomfortable Truth
Shiny Object Syndrome feels like a creativity problem. It's actually a fear problem.
New ideas feel safer than current projects because new ideas haven't failed yet. Switching lets you stay in the fantasy of potential success without risking actual failure. But potential is worthless. Only shipped things count.
That half-finished project in your repos might be the one that works. But you'll never know if you keep running from it every time things get hard.
You don't need a better idea. You need to see your current one through.