Why Do Developers Procrastinate and How to Stop?

Why developers fall into procrastination and how we keep yourself away from doing this.

Why Do Developers Procrastinate and How to Stop?
Why Do Developers Procrastinate and How to Stop?

Procrastination is insidious — don’t let it get in the way of your learning

I love to learn, but I often find it challenging to get down to something new.

It’s hard to admit; it seems to me that I am teaching so much. I know that technology is changing rapidly, and you need to adapt.

But often, even though I spend hours catching up, I don’t make much progress. It is like filling an endless hole — you learn, you do, and it still does not end. In the end, I found the culprit — and that’s procrastination.

Im a smart procrastinator — I’m not distracted by Netflix and YouTube. Instead, I create the illusion of learning. I let my mind fool me like I’m working hard, lying relaxed on the couch.

Has it happened to you too?

So it’s time to fight active procrastination. To defeat the enemy, we must learn to recognize him. In this post, we’ll take a look at a few common procrastination techniques and tips on how to deal with it.

Review and revise programming courses

I know it sounds tempting. You want to learn something new, and you see a cool new course for almost free, you buy it and start watching.

But the point is that courses do not automatically “pour” knowledge into your head. To enter the course of the topic, you can watch the lesson at speed 1.5. The other is a waste of time.

You won’t learn to program just by looking at courses. To learn to program, you need to work on projects. It would help if you challenged yourself, think a lot, and look for solutions. The courses are just the beginning, but not the home stretch.

An even worse form of procrastination is course redefinition. If you didn’t learn much the first time around, why do you think it will be different now? Better to read the documentation, think and create something yourself is the best investment of time.

If you do want to take a course, make sure it is of good quality. If your instructor wants you to rewrite your CSS, you are wasting your time (unless this is a CSS course, of course). Non-essential code should be downloadable, and the code you write should be relevant to the course theme.

The same applies to teaching materials. You won’t make progress by copying someone else’s code. Therefore, treat teaching materials and courses as a starting point and source of inspiration, rather than an effective way of teaching.

Implementation of unnecessary features

Let’s say you started a new side project. For example, you want to learn Firebase and create a Reddit clone. So far, so good; this is an excellent path to growth.

You start motivated, create a few features in the first two days. Fine. And on the third day, you run into a problem. Not essential, but to get some rest, you decide to work on the CSS for your application. What will happen the next day?

Often we get confused about the details, missing out on what we really wanted to know. After a few weeks, we were disappointed by the lack of progress but spent hours fine-tuning the user interface.

To grow, you need to focus on core functionality. But it’s hard to resist the urge to do something simple and familiar. This is why you should use UI Libraries in your learning projects — you need to focus on the complex and important to learn. Everything else is just a distraction. And every tool that automates non-essential functions is a blessing.

Procrastination isn’t just about the interface. For example, when you are learning to create an e-commerce website, the blog is not very important. Therefore, focus on the main thing.

A superficial study of everything at once

As a programmer, you can do many things: create games, websites, analyze big data, or even launch rockets into space. I want to do everything. At least that’s the case for me. But this will not happen, not even worth trying.

You can fail in many ways one at a time, but if you try to move in many directions at the same time, you will definitely not come to anything. To learn something new, you need to devote a lot of time and attention to it. Do not be distracted by dozens of new hype languages ​​and frameworks, even if your mind is hungry for a new one.

Don’t give in. Don’t procrastinate this way. Better to make a learning plan based on your skills and interests, and expand your knowledge gradually, without clinging to absolutely anything that seems interesting.

When you create a plan, stick to it. Resist the temptation of the modern IT world.

Striving to write perfect code

This is perhaps the hardest type of procrastination. Developers take pride in their code and protect it. This is good — we should strive to write quality code. But it’s also a trap, as perfectionism often gets in the way of doing something, or completing it.

Learning new things, we often make the wrong and sometimes even stupid decisions. Therefore, we can spend hours trying to “hack” the ideal application, instead of going into development.

The main solution to this problem is to understand that coding and learning are iterative processes. Don’t expect something perfectly the first time around. Better to get the solution to work sooner, even if it doesn’t meet your expectations or best practices. Once we have a working solution, we can polish it and fix the bugs. But until we write the code, nothing will happen. And we will never learn programming just by studying theory.

Read More

If you found this article helpful, click the💚 or 👏 button below or share the article on Facebook so your friends can benefit from it too.

More from my stories:

Written by

Bioinformatician at Oncobox Inc. (@oncobox). Research Associate at Moscow Institute of Physics and Technology (@mipt_eng).

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store