This scenario is the ugly and all-too-common face of procrastination that programmers are forced to fight constantly. If this situation sounds familiar, you're in good company. But if you want to become a professional developer, you'll need to implement a system for hacking procrastination. And that's what we're going to walk through in this chapter.
Before we walk through a system for hacking procrastination, we first need to dive into the root causes for this negative habit. Everyone is unique, but over the years I've seen procrastination is typically caused by three thought patterns:
To overcome procrastination and get back on track we'll need to address each one of these issues. Because if you let any of these mindsets control the way your mind operates, you will never be able to reach your potential.
I called this chapter hacking procrastination because I think that hacking is the most appropriate term for what needs to happen to achieve success. Developers hack applications to build features or fix bugs. In the same way, we need to hack our thought patterns so that our brains function properly.
Starting off the list of the causes for procrastination is perfectionism. Have you ever watched a baby trying to stand up for the first time? Babies, who haven't learned that failure is a bad thing, will spend countless hours trying to stand up.
Next on the list is hacking the fear of success. If you're overcome the trap of perfectionism, congratulations. However, I've seen just as many developers get stuck due to the fear of success as the fear of failure.
For example, when I first learned how to build a connection to a database, I put the book down and didn't pick it up until weeks later. By learning the database concept, it opened up a new and scary new world of all of the new topics I had to learn after that. All of a sudden, I had to understand:
Last on the list for hacking procrastination is creating a practical plan. When I recognize that I'm procrastinating I now tell myself to look at my plan of attack. Usually I'll discover that my plan is too general.
For example, if I'm building a payroll application, I may have an item on my to-do list that says: Build reporting engine. That's a scary feature! That's the type of item that will stick on my to-do list for weeks without me taking any action.
Next on the list is hacking the fear of success. If you're overcome the trap of perfectionism, congratulations. However, I've seen just as many developers get stuck due to the fear of success as the fear of failure.
For example, when I first learned how to build a connection to a database, I put the book down and didn't pick it up until weeks later. By learning the database concept, it opened up a new and scary new world of all of the new topics I had to learn after that. All of a sudden, I had to understand:
Last on the list for hacking procrastination is creating a practical plan. When I recognize that I'm procrastinating I now tell myself to look at my plan of attack. Usually I'll discover that my plan is too general.
For example, if I'm building a payroll application, I may have an item on my to-do list that says: Build reporting engine. That's a scary feature! That's the type of item that will stick on my to-do list for weeks without me taking any action.
For example, when I first learned how to build a connection to a database, I put the book down and didn't pick it up until weeks later. By learning the database concept, it opened up a new and scary new world of all of the new topics I had to learn after that. All of a sudden, I had to understand:
Last on the list for hacking procrastination is creating a practical plan. When I recognize that I'm procrastinating I now tell myself to look at my plan of attack. Usually I'll discover that my plan is too general.
For example, if I'm building a payroll application, I may have an item on my to-do list that says: Build reporting engine. That's a scary feature! That's the type of item that will stick on my to-do list for weeks without me taking any action.