What are the common mistakes of unsuccessful developers
5 years ago when I started my career as a mobile developer, I had one thing in my mind. I wanted to be good at my job. I wanted to learn the art of programming and I wanted to explore new avenues. In the last 5 years, I have worked on a lot of interesting projects that have helped me become good at what I do.
On this journey, I have seen some of my colleagues who started with me but have now changed their career track. I talked to a few of them to understand why they changed their career path. Our conversations revolved around things that didn’t work out and things that did. I understood from our conversations that they had a fixed mindset rather than a growth mindset.
Stanford psychologist Carol Dweck, in her book titled Mindset: The New Psychology of Success has talked about these two mindsets in detail. In a fixed mindset, the person assumes that their intelligence and creative ability are static givens. So, if they fail at some task, they assume it’s because they are not made for it. On the other hand, a growth mindset thrives on challenges and looks at failure as another chance for growth and developing new skills.
You’ve probably read articles that talk about the mindset of successful people. In my opinion, such articles paint a dreamy picture of success. They make it look like– “do these steps to be a successful developer.” However, success is an elusive subject and one can’t achieve it only by following what others did.
Therefore, I decided to take a different approach and write about what kind of mindset makes you unsuccessful. So here are some common traits or thought-trains of unsuccessful developers. Be aware of them and try to avoid them–
They want to learn a new language overnight
It’s true that a developer should be a quick learner. One should be fast in picking up new languages, frameworks in order to implement them in projects.
But learning quickly doesn’t mean learning overnight. One can’t learn everything in a day.
For example – If you want to learn Java/Android, you have to spend time on it. You can’t learn all the concepts in a day.
Generally, people with this mindset don’t spend much time on a single concept and after spending a few days on it, they move to another one. And repeat the same behavior elsewhere. With this approach, you will definitely learn something about everything and you will be able to write a basic level program but you will never be able to solve complex problems.
So go an inch deep, rather than going a mile wide. Learn one thing at a time, but learn it well.
They wait to learn until they have a job/project
It’s a common misconception that one can only learn when they actually start working on a project. But that’s not true. You don’t need a job or a project to learn a new skill.
If you really need to learn something, start today. Explore ideas and opportunities where you can implement your learning. Make things functional, even if they don’t turn out to be as great as you imagined them to be. You will gain confidence and learn a lot more about your shortcomings simply by doing.
They keep repeating the same mistakes
George Bernard Shaw said, “A life spent making mistakes is not only more honorable but also more useful than a life spent doing nothing”. And I couldn’t agree more.
But there’s no merit in repeating the same mistake again and again.
Developers with a fixed mindset keep trying the same thing with a similar approach. They feel that somehow, magically, things will fall into place. However, they don’t understand that repeating the same mistakes doesn’t result in successful outcomes.
If you’re tired of not getting outcomes, sleep over it. Sometimes you have to quit something to start in a better way, with a fresh mindset. Don’t stick to one approach. If things don’t work as they did earlier be flexible and change your ways of doing things.
They say yes to everything
A 2017 article in the New York Times talked about why you should learn to say NO more often. The article hits the right spot because it tells why being assertive is important in life. If you can’t do some work because you’re already swamped with earlier deadlines, learn to say No. It’s okay if someone is hurt because you said no. What’s more important is that you come out of the ‘yes’ culture and understand that it’s difficult to do everything that everyone wants. Be realistic and hold yourself accountable for whatever you commit.
Saying YES to everything just because you feel that saying NO will make you appear bad is a slippery slope. When you say YES, the other person believes you to get the work done. For you, it might just be one word, but for the other person, it’s a commitment. When you fail to deliver, the trust vanishes, and blame-game takes its place. The other person might feel cheated as they trusted you to get work done.
This is the mindset of unsuccessful developers. They think that by saying yes to everything they will please everyone in the team. On the other hand, they fail to understand that saying yes has to be followed up with great commitment and dedication.
They ignore documentation
Documentation plays an important role in developer life. It is common to talk that if you are working on a complex project, you should document everything. It will not only increase your understanding of the code but will also help you add more features in the future. Your documentation should be simple that takes less time and effort but explains everything beautifully.
Unfortunately, some developers feel that it’s a waste of time and don’t pay attention to it. As a result, when the code base increases in volume, they face difficulty in managing it.