Developers have a problem with side projects

Traversy Media| 00:07:36|Mar 26, 2026
Chapters10
Creative developers collect many ideas but should focus on one at a time to maintain momentum.

Bringing side projects to life is a discipline: pick one idea, ship a minimum viable product, and build momentum with accountability.

Summary

Brad Traversy of Traversy Media tackles a common developer trap: starting side projects with excitement and then losing momentum. He argues that the bottlenecks aren’t talent but execution—too many ideas, overengineering, fear of imperfection, lack of deadlines, and burnout. Traversy suggests concrete steps: write down ideas but focus on one at a time, start small with one repo and one database, and ship an MVP early. He advocates keeping scope lean (one framework, one database) and delaying large architectures unless they truly add value. The speaker also emphasizes momentum over perfection, encouraging external accountability (tweets, posts, timelines) and treating progress as a habit, like going to the gym for 30 minutes daily. Burnout is addressed by avoiding hackathon-style bursts and instead progressing in small, sustainable increments. In the end, finishing a project is a skill built through focus, momentum, and a clear definition of “done.” Traversy leaves viewers with a practical ethos: pick a project, set a deadline, and ship it.

Key Takeaways

  • Write down all side project ideas, but commit to working on only one at a time with a minimum viable product deadline.
  • Start with one repo, one database, and one framework to ship quickly, then refactor or scale later.
  • Avoid overengineering (e.g., microservices and custom auth) when the goal is a simple MVP like a blog.
  • Done is better than perfect; progress over perfection and keep a healthy pace to maintain momentum.
  • Create external accountability (tweets, posts, public timelines) to force yourself to ship.
  • Treat side projects like a gym habit—steady, daily effort (about 30 minutes) rather than long hackathon-style sprints.
  • Define what “done” means by getting users to start using the project and sharing it publicly; shipping is the real milestone.

Who Is This For?

This is essential viewing for indie developers and software engineers who struggle to finish side projects. It offers practical rules to convert ideas into shipped MVPs, with actionable habits and accountability strategies.

Notable Quotes

"Done is better than perfect. And that little voice that's in your head that keeps telling you, you know, this project isn't ready yet, ignore it."
Encapsulates the core mindset shift away from perfectionism.
"Progress over perfection. And that really applies here."
Summarizes the recurring guidance about momentum and pacing.
"Finishing a project is a skill. You know, it's not about talent. It's about focus, momentum, and knowing when to call something done."
The closing takeaway that reframes project completion as a repeatable capability.

Questions This Video Answers

  • How do I pick one side project to finish and avoid scope creep?
  • What is the best way to ship a minimum viable product for a side project?
  • How can I hold myself accountable to finish a side project without a boss?
  • What daily habits help you complete side projects without burning out?
  • Why is overengineering a common killer for side projects and how do you avoid it?
Side project productivityMinimum Viable Product (MVP)OverengineeringDone vs. perfectBurnout preventionAccountability strategiesSoftware development habitsPublic accountability
Full Transcript
What's going on, guys? So, how many times have you thought of and got excited about some kind of side project or idea, and you you start mapping out the UI, you build the homepage, maybe a login page, and then you never touch the project again, and it just kind of fades away. So, if this has happened to you, you're definitely not alone, and I'm definitely including myself in this. It doesn't mean that you're lazy or not ambitious or you're a bad developer. So, let's talk about why this happens so much and what you can do to stop it. All right, so let's go point by point on why so many of us start projects and then abandon them so quickly. So first off, I think too many ideas and not enough execution. And what I mean by that is developers are creative by nature. We want to build things and and problem solve. We get hit with a new idea every time we open up Reddit or Product Hunt or just driving down the street. And and now with AI, that has increased 10fold. I mean, I have so many ideas, I just I can't keep track of them. And the problem is that we chase these new ideas instead of building momentum. So, my suggestion is to write down all your ideas, but only work on one at a time. You know, give it a deadline for a minimum viable product and build momentum. And you can always revisit the other ideas later. They're they're not going anywhere. I think what makes uh a software development project different from just about any other type of project in the world is that it doesn't take much if anything to start one. You know, think of if you're a carpenter and you want to build yourself or someone else a shed. You have to invest a lot just to get started. You need to spend quite a bit of money to get started. You need tools, materials. You need to find and clear a space. You need to do the the actual physical work. And if you decide to just give up on that, you lose a lot. You know, for software development, we simply open a text editor and start the project, we don't really have to invest anything other than our own time, which of course is valuable. Um, but when you're ready to go into production, you will need to pay for infrastructure. That does cost money, but I'd say the first three quarters of your project won't cost anything in terms of money, and that causes us to just have to start things and not finish them. Next I would say is overengineering. I think a lot of devs overengineer from day one. I'd say that this kills more side projects than anything. Um let's say you decide to build a blog, which I know is a very general example, but something that's pretty simple and straightforward, but then you start building microservices, setting up Docker containers, custom authentication systems, um before you even get a homepage up. And these things are great if you're looking to learn how to do them um or if this project is going to be really large and it actually needs microservices and containers. But if your goal is to get something like a blog out quickly and actually finish it, then stop overgineering. You're just you're going to waste a lot of your time and lose momentum cuz you're going to get caught up in in the complexity that doesn't actually move the project forward. So my advice is to to keep keep it stupid simple at first at least. So start with one repo, one database, one framework and ship something. You can always refactor it. You can always scale it up later on um once it's you know being used by someone other than yourself. Uh another big one is the fear of imperfection and we tell ourselves the project's not done yet. The UI isn't polished. The the code could be cleaner. U the color scheme isn't perfect. So we just keep tweaking and tweaking until we lose interest completely. So, let me tell you something. Done is better than perfect. And that little voice that's in your head that that keeps telling you, you know, this this project isn't ready yet, ignore it. And and you don't need pixel perfect design or perfect logic to to launch a side project. You need momentum. Um, my wife actually taught me the phrase progress over perfection. And that really applies here. And I'm not saying that you should just throw things together, Mickey Mouse it, and write bad code or or, you know, use AI to generate everything and not care, but there is a middle ground between that and between trying to be perfect. Um, another reason that devs don't finish anything is there's no real deadline. You know, when you're doing client work as a freelancer or you're working at a company as a developer, there's always pressure to finish. And when it's your own project, it's easy to just let it sit. um you're not really held accountable by another person or company. You you need to learn how to how to hold yourself accountable and I do think that that's a skill and that's something that has helped me in both freelancing and content creation and my you know teaching. Um I I can't remember the last time that I had a boss or a manager. Uh a lot of people say that they want to work for themselves and and be their own boss and that's great but you actually have to be your own boss. you know, you have to hold yourself accountable, and that's something that that I've done right. Um, I've done a lot of things wrong, but that's one thing I've always done right is I've had the discipline. I've held myself accountable. Um, and that's just something you need to do if you're going to start building your own projects. I recommend giving yourself external accountability as well, like make make uh Twitter posts or expost. I'm launching this Friday. Uh, tell your followers, tell your friends, tell your dog. just make the timeline a real thing. Now, let's talk a little bit about burnout, which is something I know quite a bit about. Uh, a lot of devs treat side projects like hackathons. You know, work on them for 14 hours on a Saturday and then not touch them for 3 weeks. And that's just a a recipe for disaster and exa exhaustion. Uh, instead, work on your project like a like it's a gym habit. Maybe 30 minutes a day or something. And that little bit of time, it adds up, you know, it it adds up over time. Uh, and it builds momentum. If you're already feeling burnout from your day job or freelancing or whatever it is you do all day, it's probably not the best time to start a pro a side project. You know, if you have a deadline at work that's stressing you out, don't add more to your plate. Nothing good is going to come from that. So, just wait until you get a minute to breathe before starting a new project. And another project killer which I think is related to these other ones is that you never define what done actually means. You keep coding and tweaking and adding dark mode and rebuilding the authentication for the third time. So of course it never gets finished. And in reality uh most software projects are never done like completely where you're never going to touch them again. But what I mean by done is a point to where you can have people start using it. You know make it live. Uh, also tweet, post, uh, you know, on LinkedIn, on X, show it off. That's that's part of the process as well. But don't let the idea of perfection keep you from shipping something that works. You know, when I create something, my goal is always to get that MVP, that minimum viable project out. Um, it doesn't mean that the project will always look like that. It may change completely, but at least you have a working project that you can deploy and people can start using. So, I I'll leave you with this. Finishing a project is a skill. You know, it's not about talent. It's not about intelligence. It's about focus, momentum, and knowing when to call something done. So, if you have 10 half-built apps sitting in your project folder, just pick one. You know, pick it and build momentum. Don't overthink it. Set a deadline and ship

Get daily recaps from
Traversy Media

AI-powered summaries delivered to your inbox. Save hours every week while staying fully informed.