Half-built apps, dusty GitHub repos, and brilliant ideas that never made it past npm. I have a feeling you have at least one of these like myself. For years I have struggled finishing ideas big and small. Over those years I have used some of these tips to help me push through.
The Scope Monster
One of the largest issues with side project (personally) is scope creep. Every developer knows about it and can see it in everyone except themselves. You have all these grand feature that would be amazing, but never see the light of day.
Solution:
Make the MVP and then make the MVP of the MVP. That may sound like a tongue twister. I can assure you that it is not. Just make it ugly and make something that works. Boom, you are "done". Making it look nice is just a bonus at that point.
The Comparison Trap
Don't look at the flashy products out there. Once I was working on a project that would help devs with taking notes and organizing ideas. I had a simple concept that could maybe bloom into more. However, I made a fatal mistake when working on this project. I did research on similar apps It was easy to fall into the trap of looking at great "To-Do" apps like Todoist or the others out there. Stop comparing version 1 to the other products version 10.
Solution:
Compare to yesterday and not other projects. There is a great quote from Theodore Roosevelt that I use in daily life.
"Comparison is the thief of joy"
No Feedback Loop
This point I can see arguments on both sides of the coin. Building in a vacuum kills any momentum that you have. It is hard to care if no one can see your progress, yes, but at the same time "external" validation is something one should not go looking for. In this case the optimum outcome that you should look for is constructive feedback. Even feedback that is negative in nature, but at the same time constructive, can help fuel your fire even more. However, it is the internet and getting harmful or feedback that is not helpful in an way can be a big ole bucket of water on your spirt fire.
Solution:
Lean on those close to you. These are the people that are going to give the best feedback. If you do not have someone close to you that has the technical experience that you are looking for than target more private groups. The earlier you can get feedback the more fuel you have to keep going.
All Input, No Output
Researching and learning is great in the right context. Take it from me research can do wonders for the advancement of knowledge (Side note: My favorite way to learn is books!). Too much of it when you are trying to build makes you feel productive, but you are simply just consuming. When you are trying to build consuming is not the best thing to be doing.
Solution:
Only research the concepts or knowledge that you need to go right into your project. Need to learn a design pattern you have not seen since university? Look it up, learn it, and apply it right away. After that move on to the next part of your project.
"Done" Was Never Defined
What does you project look like when it is done? A million-dollar start up or a personal app to organize your notes. If can be anything as long as it is something.
Solution:
Define "done" before you start. Anything after that is just a bonus.
Side projects do not fail because you are lazy. They fail because you are not, and you have aim to reach infinity. You can use these tips to help shrink the target, lower the pressure, and get the job done. Above all, give yourself permission to finish "small".
A finished tiny tool beats a graveyard of "next big things".
What is your most recent abandoned or unfinished side project? Drop it in the comments if you dare! Happy Spooky Season! 🧛🏼
Top comments (2)
Let me know a side project you have always wanted to make or never finished!
Thank you for sharing this article!
I’ve been thinking about the same thing recently.
I built a small app not long ago, and by cutting unnecessary features I was able to reduce development time, keep the UI clean, and improve the usability of the core functionality.
I actually wrote a short blog post about this experience—feel free to check it out if you’re interested!