Hacking procrastination

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.

Before we go through the system I want to make one concept clear. As humans, we were made for action. Procrastination is a negative habit that we've learned through fear-driven thought patterns. To be successful at anything in life, whether it's development or business, overcoming procrastination is a requirement.

Hacking perfectionism

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.

Each time they fall down it doesn't seem to faze them in the slightest. But you won't find a baby that lets perfectionism get in the way of achieving their goal. Instead, they will keep trying until they can stand up and eventually walk by themselves.

However, somewhere between the time that we're babies and adults we develop the thought pattern that we're not supposed to fail. So instead of trying and failing until we succeed, we simply try to only perform tasks that we know we can do properly. To hack perfectionism, we have to remove the component in our brain that is afraid of failing.

If you are a developer learning how to build a new feature that you've never worked through before? Let me clear something up. You are going to do it wrong the first time!

And that's 100% fine. If you think that by waiting you are magically going to learn how to perform the task perfectly, you are sadly mistaken. So, step one is: embrace failure and remove the requirement of perfectionism.

Hacking the fear of success

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.

This concept may seem odd since success doesn't seem like something that you should be scared of. However, I remember when I was first learning development. When I was walking through a coding book I would get so excited when I discovered a new concept. However, then I would freeze. My mind's first response was:

"If you learn this, then what are you going to do?"

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:

  • SQL queries
  • How to build relationships between database tables
  • SQL injection requirements
  • And the list seemingly went on infinitely in my mind

To hack the fear of success, we need to quieten our minds. The fear of success is really rooted in the fear of the unknown. So, whenever you're feeling this fear, simply take a step back. Be happy that you have learned a new topic. And then move onto the next feature or topic.

Don't let your mind run wild with all of the potential, unknown concepts that you'll need to learn in the future. Like learning anything else, you need to take it one step at a time.

Hacking the plan

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.

To fix this, I've learned that if I break the requirement into a series of very small tasks I can break the cycle of procrastination. For the reporting engine feature I can create a series of much smaller, more manageable tasks, such as:

  • Create a page for users to access reports
  • Implement a database query for pulling the reports from the database
  • Build a file downloader for reports

When I break a large and scary feature down into small pieces, I instantly feel better. The feature is no longer scary and I no longer feel like putting it off until tomorrow. Instead, I am able to simply follow a set of small tasks each day until the feature is complete.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.15.174.76