The number of programmers in the world is still growing, but unfortunately, few offer high quality. What prevents a developer from delivering good quality services? It is usually tied to mistakes. Below you will find a condensed list addressing this issue.
1. Thinking You Are Irreplaceable
Many average programmers believe they are amazing developers. I thought the same. After a few years, I realized that there are plenty of people who are truly amazing, better than me, and I was simply too confident.
The moment I told myself that I had many areas to improve and I wasn’t as incredible as I assumed, my outlook changed. I started learning new things and improving day by day. The desire to learn and the belief that you still have much to improve will take you far. This applies not only to programming but also to any other life skill.
2. Working Without Estimation and Compensating with Overtime
Many programmers write code without considering the time needed to complete the work. They pour into overtime, take family time on weekends, reduce sleep, working late into the night, and so on. This happens because you don’t set a deadline for completing a task.
For example, if you are building a module, you must decide, “I will finish this in 3 hours, with 1 hour of extra buffer.” If you don’t finish within 4 hours, you move on to something else. When you miss the deadline, you stretch it endlessly. Since you know you will cover it by working overtime, you won’t try to improve your task estimation skills.
Set a specific time to close your laptop and only open it the next day. Trust me, it will force you to prioritize and improve, making you a better programmer.
3. Hesitating to Participate in Hackathons and Coding Challenges
Programmers are often afraid to try their hand at coding challenges on websites like TopCoder, Coderbyte. The reason is usually the fear of feeling bad about exposing their weaknesses.
Don’t be a coward! You will only improve your skills if you are willing to see where you stand, repeatedly fail, and face setbacks. You lose nothing, and no one will know if you fail. While you shy away from such tasks, other programmers are improving, leaving you behind.
At the same time, be cautious about some coding challenges. Some have ridiculously short time limits, which can lead to bad coding habits. They may also present weird problems that don’t help improve your skills. Don’t criticize yourself if you struggle with these challenges. Over time, you will be able to distinguish between good and bad coding tasks.
4. Not Using Optimal Environment, Tools, and Devices
Many programmers believe they can code lying in bed with a laptop on their chest. Sure, you can, but your skills will match your laziness.
Moreover, whoever told you that working on a laptop touchpad/keyboard is as fast as working with a mouse/keyboard has not worked with a mouse/keyboard long enough. The combination of a mouse and keyboard is faster, period.
Having worked on various laptops, desktop setups, and all kinds of peripherals, I can guarantee that coding while sitting at a desk, using a larger screen with a mouse and keyboard, significantly speeds up programming.
5. Not Trying to Code Faster
Programming is also about speed. Although people tell you that writing good code is important, don’t ignore speed. In today’s world, time is money. You must challenge yourself to code faster, type faster, and use your editor’s shortcuts. You need to make a conscious effort to increase speed.
Note: I’m not saying you should increase speed at the cost of code quality. Writing good and efficient code is more important than coding faster. Your primary goal should be writing code that produces the correct results. But in the process, look for opportunities to get things done faster. In most cases, you can boost speed without losing quality. But you will never achieve maximum speed with the best quality point without challenging yourself. Increasing speed doesn’t just mean typing faster. You can improve your programming speed by challenging yourself to solve coding tasks faster than usual.
6. Blindly Copying Code
Without a doubt, we all use code from the internet, from sites like StackOverflow or the recently popular ChatGPT. In fact, not using code at all isn’t the smartest idea. But do you paste code blindly every time and see if it works? Well, if so, you’re missing out on a learning opportunity. It’s not enough to just understand if the code you pasted can be written better than suggested in the answer.
The reason you searched for code is that you either didn’t know how to do it or wanted to save time. Try to understand the code you used at least at a high level. You don’t have to understand the code line by line, but at least grasp the approach used.
7. Doing Things the Same Way Without Improving Skills
If you started with PHP, you can still build any functionality using what you learned in your first year. If you only write code you already know or have written before, you will stagnate.
Move forward with new technologies and challenge yourself. Try a different programming language, new frameworks, learn new algorithms, and try best practices. Constantly improve yourself.
Think about it this way – 10 years later, if you’re doing the same thing, why should anyone pay you more than a programmer with 1-2 years of experience?
Summary
The above article is based on my experiences and the experiences of people with a similar mindset. I would greatly appreciate it if you could expand this list with your suggestions in the comments
If you manage to eliminate even one point, you’ve already succeeded. I wish you good luck in creating a better IT world because that’s what it’s all about.