How To Finish Your Side Project

Catalina Astengo
Code Like A Girl
Published in
5 min readDec 3, 2018

--

Tired of working on something for months only to drop it when you’re at the finish line? Me too. I have no problem coming up with new ideas, coding up the solution, and then completely stopping work on my project. Why the abandonment?

As it turns out, it is not a unique problem to have. One of my mentors pointed me to the book The Spark and the Grind in which Erik Whal talks about people that are very good at coming up with ideas (spark) and people that are very good at working hard to make an idea come to fruition (grind). The good news is that you can get good at both.

I went through the grind to build and launch a website and I’m telling you how you can do it, too.

Get organized

Set up a trello board, if you haven’t already, and start making tasks for features you want to build, outstanding items, content you want to add, people you want to consult, etc.

If your tasks are too broad like “Set up website”, start breaking it down into smaller tasks like “Purchase a domain,” “Find a server,” “Research deployment strategies,” etc. The smaller the task the better. I tried to break mine up into 1–2 hour estimated time tasks since I can usually complete those in a sitting.

I also made use of checklists to track which parts of the tasks are done and not done. Seeing your work split up makes it easier to tackle and if you’re one of those people that love checking off things a to-do list, this will work perfectly.

Prioritize

Now that you have a list of everything you want, split up your list into “Nice to Haves” and “Must Haves.” If you need a certain feature to launch, for example “User should be able to login,” then move it to the “Must Haves” list and focus on finishing those items before moving on to the “Nice to Haves” tasks. Also, prioritize within your list, move the most important items to the top and work on those first.

Set deadlines

If having a to-do list is not enough, pick your highest priority item and set a deadline to it. I initially picked one task per week and after just one day I had completed my task. I quickly realized I could do a couple of tasks per week.

Dedicate

Your project is not going to finish itself. If you work on it at least 30 minutes every day (3.5 hours per week) you will be surprised at how much progress you can make. How important is this to you? If you dedicate 40+hours per week to your day job, why not dedicate 30 mins per day to your side hustle?

Start something

If you’re feeling stalled, at least start something, even if it’s just making a branch and changing one line of code. Our brains hate leaving tasks unopened so you’re more likely to finish it sooner rather than never.

Work in the morning

Yes, I mean before work. Our brains are the clearest and most productive during the first 3–4 hours after waking up. Work on your project in the morning so you make the most of those few hours and then you can relax in the evening.

Use time wisely

Don’t know exactly how to implement a feature? Use your commute time to think through the implementation. Swap social media time for research and investigating. Exchange downtime for productivity. The nice thing about a trello board is that you can access it at anytime and make comments on your tasks if you have any new thoughts or findings.

Imperfect is perfect

If your product is perfect by the time you launch it, you have already spent too much time on it — Masters of Scale

Your first iteration should be embarrassing. Just think about the first Facebook, it was a bare-bones application. Releasing early is the best way to test ideas and not waste a bunch of time on something people didn’t want any way.

I am very guilty of perfectionism and I often have to catch myself and snap out of it. I spend a bunch of time on “stupid” things that people are probably not even going to notice. I often find myself thinking someone would never launch a website without this or that but people do. There are a lot of websites out there that are far worse than yours.

The truth is, nobody really knows what they’re doing.

Gain the courage

Most of us are scared of what other people think even if we don’t realize it. Fear will kick in anytime we’re stepping out of our comfort zone, it’s just human nature. I think for me, personally, fear is what prevented me from “being done.” Fear of putting my creative work out there, fear of failing, fear of change, even fear of success.

Don’t forget why you started

I stopped working on my project for a couple of months and I couldn’t figure out why. I really wanted to get it done and put it out there but I couldn’t sit down and work on it. I finally realized it was because I had forgotten why I started.

I forgot that I wanted to learn more Elixir and learn how to have a legitimate website. I forgot that I wanted to do something creative and useful with my free time. And most importantly, I forgot that I wanted to code an application to help people, save animals, and try to make this world a better place.

I got back to my desk and started looking at my work with a beginners mind, enjoying the little roadblocks that presented new learning opportunities. Imagining my application changing people’s and animals lives. I stopped caring so much about the timeline and marking tasks as done and more about enjoying what I was doing.

And now my application is out there. Not unique nor perfect, not including all the features I wanted, but definitely launched (and embarrassing :)).

Check it out!

--

--