5 Reasons you NEVER finish code projects and tips to improve

Get your code projects finished by avoiding the common mistakes below:

1 You have too many code projects

You have a lot of good ideas and you try to tackle them all at once. Having multiple projects going at the same time means that you end up doing small amounts of work on each but never actually complete any one project or even make significant progress. Prioritise your projects and focus on one at a time. Set a short-term goal for the one project and meet it.

This does not mean you can only ever have one project; over a period of time you can have many, but only focus on one at any given time. This means that as soon as the project hits a tough point you must pursue it and meet your short-term goal – when otherwise you would probably find yourself taking a break and going to another (easier) project.

2 You try to do large chunks in one go

It’s tempting to stay up all night working on a project. Yes you make significant progress over one night, but it’s bad for motivation. What  happens when you get busy, and you have to skip a weekend of code work? Suddenly you may have gone two weeks without working on your project, this makes it extremely difficult to get going again.

If you break your projects into bite sized chunks and take them on in small increments, it is motivating. Consistently you will begin to see progress on an on going basis, this will motivate you to keep pushing forward.

What happens here is we feel motivated when we see progress. This is extremely important. As soon as we feel we are not making progress on a project we are very likely to stop working on it entirely. Working consistently everyday for a small chunk of time, beats working on a project for large chunks of time every now and then.

3 You don’t track your progress

Progress is motivating and can help to keep you working toward your goal when you hit a rough patch. This is because you can see how much you have accomplished. When all you see is how far you have to go, without recognising the achievement of how far you come, it can be easy to get dissuaded to continue. Break your projects down into small attainable goals and meet them.

In a recent article I covered motivation and suggested a technique called ‘Don’t break the chain’ that encouraged breaking down the time you work on a project to small chunks of time per day. Marking these days off on a calendar builds a chain of crosses, once you have a chain your goal is simply not to break it. This chain is motivating, you can look back and see the consistent progress you have made.

4 You start too big

Yes you can have massive, awesome and world changing ideas. However you cannot build them in one night! You must iterate, and build over time. It is nearly impossible to get started on a world changing project, simply because it is overwhelming.

The solution is simple: get a minimum viable product out their ASAP. It is about getting the minimum required done for the product to function. This allows you to get feedback earlier on your project,  see if it is actually useful and sets a more attainable goal.

This does not just apply to product design! Any project should be structured this way, simply for the fact that it allows you to validate your project early, and actually have a goal that is in reach that you can achieve.

Big targets are hard to reach, small targets are easy. Lots of small targets can result in a big target.

5 You’re a perfectionist

Decide on what your minimum viable product is, set a date and meet it. Don’t wait for it to be perfect. I am telling you right now, that if you want to wait for it to be perfect, IT NEVER WILL BE. No matter how awesome what you are building is, if the world does not see it it is a waste.

Why does the most work always happen before a deadline? Why do you always procrastinate right until you have no choice but to finish the work? At the last minute your thought processes change, it’s no longer about building something perfect, it’s about getting it done. The solution is the same solution I have outlined all throughout this post, break your work and deadlines down into small milestones. This allows you to take advantage of the focus, and progress you get just before a deadline, but multiple times throughout a project. Keep in touch for I will be writing a specific post about breaking down large code projects and its benefits soon.

Now think about your approach to your current and future code projects, and make them achievable!


Enjoyed the article? Follow me on Twitter or subscribe to my newsletter.

Spencer Walden

I've always loved solving problems. I started life studying design and working as a user experience designer. I have now left the corporate world behind to go on an adventure to create as many problem solving products I can. Follow me on my journey.

  • name

    It has taken me a bit over 3 years to finish my last project due to the reasons you write about.
    I will put my next project onto a large diagram to clearly define all requirements of all modules/classes before I even begin to write a single line of code.
    If that doesn’t increase my productivity I’ll probably sell my gear and pick up knitting.

    • swalden

      Being able to see your progress on the completion of certain modules and classes would be very beneficial. I have often found I feel like I am making no progress on a project because I cannot see how much progress I have actually made.

  • James M

    I find I am always getting side tracked due to being a bit of a perfectionist and not tracking my progress and setting goals. I am going to change this all for my next project and follow your ideas and will let you know how I go :D

    • swalden

      I would be very interested to hear :)