DEV Community

Cover image for How to Finish a Side Project
Kayla Sween
Kayla Sween

Posted on

How to Finish a Side Project

It's a huge joke in the tech world that we love starting new side projects, but can't ever find the motivation to finish any of them. The new project always feels like it'll be more fun than finishing something you're already doing. We've all been there! Here are a few tips that I have to complete your side projects.

Don't start a new side project if you know you'll be busy.

It may seem obvious, but it's worth noting! Take a look at any deadlines or events that you have coming up. If you're delivering a project for work in the next couple of weeks, maybe it's not a great idea to start a new project.

Know what you want before you start.

Just like at work, you shouldn't start on a project that has no clearly defined goal. Have a good idea of what you want to accomplish by the end of this project before you even start and stick with it. It's, of course, completely okay to change direction while you're working on it if you realize it's not what you want, but try not to add a ton of functionality while you're working on your "phase 1."

Set a deadline.

The only person you're hurting by dragging on a side project is yourself. If you don't have an end in sight, you may be less likely to finish. Make an estimate of how long it'll take you to complete the project and add at least 20% more time. If you finish early, it'll give you a confidence boost. But if something comes up, you run into more bugs or issues than expected, you'll be covered.

Tell people about it.

Tell all of your Twitter or DEV followers what you're going to do. If you have a deadline, tell them when you expect to have it done! Let the angry mob take you if you don't finish.

As a bonus, you're prepping people for some TDD (Twitter-Driven Development, shout out to Justin Samuels) in case you run into problems.

Or if deadlines and peer-pressure are too overwhelming, just don't!

I know I said you're hurting yourself by letting a project drag on, but sticking to a deadline is not always possible or easy. Life happens. Sometimes life gets really hard. If something comes up or it just becomes too much to devote any energy to a side project, don't feel bad about letting it take longer than expected!

Start by making it work, then gradually make it better.

I think Jeremy Keith's idea of Progressive Enhancement from Responsive Field Day in 2015 has a lot of carry-over here. He says he likes to work using these steps:

  1. Identify the core functionality of your project.
  2. Do what you can to make that functionality happen with the simplest technologies.
  3. Then, enhance! Make it better! Add styles, functionality, whatever you want!

This ensures that you'll, by all accounts, finish your project. The implementation of the core functionality alone means you've completed the project.

Making enhancements should be considered just that: enhancements! Don't get too bogged down in the details and working on things that don't directly contribute to the core functionality. Take a step back, look at the bigger picture, and make something work. As long as that happens, you've completed the project.

Now onto making it better!

Say you won't start another project until you finish this one... and mean it!

Bart Simpson writing "I must finish one side project before starting another" over and over again on a chalk board.
New projects always seem like more fun than whatever you're currently working on. The grass is always greener on the other side of the fence.

I know that it's not fun, but if you set out to getting the core of your project done, you'll be able to move onto other projects faster! πŸ˜‰

Take breaks. Don't let a side project burn you out.

Don't be afraid to take breaks from your side project. These could be short breaks to go take a walk, grab some water or a snack, or meditate. But they could be longer breaks of weeks or even months. Do whatever you need to make you feel refreshed enough to work on it. Even side projects can require a lot of energy.

Don't feel obligated to always be working on a side project.

You don't have to stay busy all the time with side projects. You don't have to code all day every day. You can have periods of your life where you go to work, come home, and chill. You can have periods where there are just other ways you'd rather spend your free time.

What if I told you, you don't need side projects at all? You can progress in your career just fine without doing side projects. I think this is a lukewarm take at best, but some folks are very passionate about the need for side projects and disagree.

A gif of Jeff Bridges in the Big Lebowski saying "Yeah, well, that's just, like, your opinion man."

In my opinion, they're not necessary. Do side projects if you want to. Don't let anyone tell you what you have to do.

πŸ“£ Sound off πŸ“£ Do you have any tips for completing side projects? Let me know!

Top comments (6)

dana94 profile image
Dana Ottaviani • Edited

Good points! I see a lot of posts recommending projects to help someone get hired, but the thing is the projects don't always seem interesting to me so why would I want to force myself to work on them?

Instead, I want to work on stuff that I want to get better at. For example, I'm starting to really take my time in looking into the three.js documentation because this something that is so cool and I want to learn how to implement the library myself.

kayla profile image
Kayla Sween

Thanks! 😁 Exactly! That's an awesome point. If it's a chore, you're not going to want to work on it, much less finish it. It's so important that you actually care about what you're doing for your side project or about learning the tech you're doing it with. I'm glad you found something that piqued your interest!

alexlsalt profile image
Alex Morton

Love this post, Kayla! I try to scope out my side projects and what they'll entail before diving in (which can feel difficult, especially when we want to get started the moment we think of the project idea!)

Your first tip is so important and probably so underrated! If you're too busy, don't try to jump right in to starting a new project -- it'll just stress you out if 1) you work on it while exhausted or 2) you beat yourself up about not really dedicating any time to it.

I'm running a cohort next month for creative coding women to get to work on a side project idea they have! Feel free to check it out >>

kayla profile image
Kayla Sween

Thank you! And exactly! Side projects shouldn't be stressful or make you feel guilty!!

waynevanson profile image
Wayne Van Son

AWWW YEAH I feel deja vu just reading this! Thanks for the post. I find most side projects may just be distracting me away from my real problems.

I wanted to comment because I'd add another tip: debrief so you know you're done.

This fighter pilot goes on about how good the debrief is, and it's a game changer:

kayla profile image
Kayla Sween

πŸ˜‚ Right? I don't feel like dealing with this right now, so I'm just going to work on something else.

That's a great tip! Thanks for reading and sharing that tip!