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!