How I Keep Side Projects Shippable
I used to have a graveyard of half-finished side projects. These days I actually ship most of them. Nothing changed about my motivation. I changed how I scope, plan and finish.
For a long time, my side projects followed the same arc. Huge excitement in week one. A beautiful architecture by week two. Then life got busy, and the repo quietly joined the graveyard.
At some point I realised the problem wasn't motivation. It was scope. Here's what I do differently now.
Write the announcement first
Before I write any code, I write the short post I'd publish on launch day. Two or three sentences: what it is, who it's for, why it's useful.
If I can't write that post, I don't understand the project yet. And if the post describes ten features, I cut it down until it describes one.
Pick a ship date, not a feature list
Features expand to fill whatever time you give them. A date doesn't. I give each project a deadline, usually four to six weekends away, and I ship whatever exists on that date.
A small thing that's live beats a big thing that's almost done.
This forces healthy prioritisation. When the deadline is close, "nice to have" features get cut without any agonising.
Use boring technology
Side projects are a great place to learn new tools, but learning and shipping pull in opposite directions. I now pick one new thing per project at most. Everything else is a stack I already know well.
Leave breadcrumbs for future you
Most projects stall because coming back after a break is painful. You've forgotten where you were and what came next. So I end every session by writing a single line at the top of a NOTES.md file:
NEXT: wire the signup form to the /api/subscribe routeNext time, I don't have to think. I just start.
Define "done" up front
"Done" for me means three things:
- It's deployed at a real URL.
- It has a README with one screenshot.
- I've shared it with at least one person.
Polishing, refactoring and new features can come later, as version two. Most of the time, version one turns out to be enough.
The compound effect
Shipping small things regularly has done more for my career than any single big project. Each one is a story for an interview, a new skill, and proof that I can finish what I start.
So pick your smallest idea, give it a date, and ship it. Future you will be glad you did.
… likes
Enjoyed it? Tap the heart (up to 10 times!)
Want to know when I publish something new?
I send a short email when there's a new article or project, usually a couple of times a month. No spam, and you can unsubscribe whenever you like.