The Project Graveyard
My 2020 GitHub:
- todo-app-v1, v2, v3 (3 years abandoned)
- twitter-clone (2 years)
- netflix-clone (2 years)
- portfolio-redesign-1, 2, 3 (2 years)
- 55 more…
Pattern: Start with excitement → Add features → Lose interest → Abandon
What changed? I stopped starting and started finishing.
Why Projects Fail
1. Scope Creep
Week 1: Simple note app. Week 2: Folders. Week 3: Tags. Week 4: Collaboration. Week 5: Real-time sync. Week 6: AI search.
You’re building Notion instead of a note app.
2. Perfectionism
“Can’t ship until UI is pixel-perfect, all edge cases handled, code is refactored, zero bugs, docs complete.”
Result: Never ships. Perfect is the enemy of shipped.
3. Shiny Object Syndrome
Monday: Task manager. Wednesday: Crypto app. Friday: ChatGPT wrapper. Result: Three abandoned projects.
4. No Clear Goal
“Build something with React” isn’t a goal. It’s a tech choice.
Better: “Build a tool that tracks my reading list.” Now you have a problem to solve.
The Framework
1. Pick ONE Project
Not three. Not whichever you feel like.
Questions:
- Will I actually use this?
- Can I finish MVP in 2 weeks?
- Am I still excited tomorrow?
If yes to all three, that’s your project.
✅ Reading tracker (you read, it’s simple, excited) ❌ AI blockchain social network (don’t need it, too complex)
2. Define the Absolute Minimum
Project: Reading Tracker
Core feature: Add books and mark as finished
No: social, recommendations, reviews, stats, integrations
If it doesn’t support core feature, cut it.
3. The 2-Week Rule
MVP ships in 2 weeks. Deployed. Usable.
If you can’t finish in 2 weeks, scope is too big. Cut more.
This forces you to:
- Be realistic
- Cut mercilessly
- Ship something
- Build momentum
4. Time-Box Everything
Don’t “work whenever.” Schedule it:
Week 1: Database schema (2h), Backend API (3h), Frontend (4h)
Week 2: Core features (5h), Deploy (2h)
Total: 16 hours over 2 weeks
If you don’t have 16 hours, this isn’t a priority.
5. Ship Ugly
Your first version will be ugly. Ship it anyway.
✅ Working but ugly ❌ Beautiful but broken ❌ Perfect but unfinished
Improve after v1. Can’t improve something that doesn’t exist.
Best Projects
Scratch your own itch.
Best projects solve YOUR problems:
- Reading tracker (you read, Goodreads was cluttered)
- Expense splitter (splitting with roommates was annoying)
- Habit tracker (you wanted to track habits)
Bad projects: “Build X for people who need Y” when you don’t need Y.
Tools, not platforms.
Simple tools: password generator, markdown editor, color palette finder.
Platforms: social networks, marketpluses, SaaS with 20 features.
Which will you finish?
Use building blocks.
Don’t build auth, payments, email, hosting from scratch:
- Supabase (auth + database)
- Stripe (payments)
- SendGrid (email)
- Vercel (hosting)
Your job is solving YOUR problem.
Tech Stack That Ships Fast
Don’t:
- Try new frameworks per project
- Spend 3 days configuring webpack
- Build everything from scratch
Do:
- Use what you know
- Use good DX frameworks
- Use managed services
My stack: Next.js, Tailwind, TypeScript, Supabase, Vercel.
Why? Zero config, fast, I know it well, cheap/free.
Excitement comes from WHAT you build, not HOW.
Staying Motivated
Track visible progress:
Day 1: ✅ Set up Next.js
Day 2: ✅ Database schema
Day 3: ✅ Add book form
Day 4: ✅ Display list
Day 5: ✅ Mark finished
Day 6: ✅ Deploy
Daily wins keep you going.
Build in public:
Day 1: Starting reading tracker. Ship in 2 weeks.
Day 3: CRUD working!
Day 7: MVP done!
Day 14: Shipped! https://readingtracker.com
Accountability + encouragement + potential users + portfolio.
The 2-Day Rule: Never skip 2 days in a row. Miss Monday? Work Tuesday.
Celebrate small wins: First commit. First API working. First page renders. Deployed.
After Shipping
Option 1: Use & Improve
If you built it for yourself, use it daily. Add features when YOU need them.
Option 2: Get Users
- Reddit (r/SideProject)
- Hacker News (Show HN)
- Twitter, Product Hunt
- Blog post about it
Most won’t go viral. That’s ok.
Option 3: Monetize
Free tier + paid tier ($5-10/month). Only after you have users who love it.
Option 4: Open Source
Add MIT license, good README, contribution guidelines.
Real Examples
Sahih AI (Shipped): Idea: AI hadith search. MVP: Search and get results. Cut: mobile, accounts, favorites. Time: 2 weeks. Result: 500+ users.
Expense Splitter (Shipped): Problem: Bill splitting annoying. MVP: Add expense, split evenly, see who owes. Cut: uneven splits, currency conversion, receipts. Time: 1 week.
Twitter Clone (Abandoned): Too ambitious, tried to replicate everything, got stuck on real-time, lost motivation.
Lesson: Build simple tools, not complex apps.
The Commandments
- One project at a time
- Define the absolute minimum
- Ship in 2 weeks
- Use boring tech
- Ship ugly
- Solve your own problem
- No features before shipping
- Celebrate small wins
- Never skip 2 days
- Finish before starting new projects
Quick Wins (This Weekend)
- Personal website
- Link in bio page
- Bookmarks manager
- Habit tracker
- Expense tracker
- Markdown notes
- Password generator
- Color palette finder
Pick one. Ship by Sunday.
When to Abandon
OK to quit if:
- You no longer need it
- Not learning anything
- Causing more stress than joy
Before quitting:
- Ship minimal version this weekend?
- Open source it?
- Write blog post about what you learned?
Don’t let it rot silently.
You don’t need the next unicorn. You don’t need viral. You don’t need money.
You just need to finish something.
One finished project teaches more than ten unfinished.
Start small. Ship fast. Finish.
Then do it again.
Your project graveyard can become your portfolio.
Pick one project. Ship it in 2 weeks.
Go.