Originally published on my blog
You won't let me lie. Sometimes most of us try to rush on our dream to become a developer. This is a common mistake we make while we are starting out on this journey. It has happened to me and I bet to say that it has happened to the average people out there as well.
Either someone sold us the idea or we come across ads that offer you to achieve it in the next six. The result - you got frustrated and half of us gave up on our dream.
The big problem here is the wrong mindset. You fall into the idea that you can achieve it in that period of time. You're focusing on the wrong part. You are chasing and depending on time instead of making sure you fill yourself with enough discipline and motivation. You should try to see how much you have moved forward - a look back, instead of the final goal.
Regardless of that, don't worry! I especially decided to write this piece to encourage and motivate you in that battle. To you that probably are just starting out in this field and in one way or another, you get frustrated or disappointed when you don't get the outcome, even when you put all of your resources and things you have. You put your heart in.
Believe it or not, this is also for me. I wake up empty to learn and become better and better, so this encourages me too.
Furthermore, I want to demonstrate that the most important skill is not how smart or talented you are. It is the ability to resist, to become resilient, to be consistent. You need to become your own reminder that things will come up at some point.
Where you come from, determine where you are, not where you go!
Being conscious where you come from will help you to move easier where you want to go or the next big step you need to make.
There are probably many reasons why you fell into this field. If you are like me, I fell into it just by intuition without even knowing what exactly computer science was and all stuff around it like algorithms, data structures, pseudocode, design of software systems, and all around it.
I lived in a poverty community without access to the internet much less a computer.
Nevertheless, if you are not like me, it is probably that you fell into it because you came across somewhere on the internet with the cliché "earn six-figure as a programmer and change your life", or because a close friend of you advised you of moving to this field since according to him it seems prosperous.
Now you have clarity about why you are in this field it is time to jump to the next point.
It's time to think of being sincere with yourself where you want to go from now on.
My motivations are different than yours. Where I want to go and become are different from yours. Both in the remoteness and effort. Some of us want to make a living by coding, others probably just want to challenge themselves and change careers, and you are probably just curious and give it a try.
Either way, if we want to accomplish our goal we must have clarity on our path. We need to visualize ourselves in two, five, or then years ahead.
The target matter. However, the most important thing is every single step you will follow to be there. It might sound obvious but in reality, it isn't. If you are not really honest with yourself you will arrive at a port you didn't want or in the worst case to nowhere.
Defining your path is super easy. However, sticking to it and staying focused on is the really hard part.
Here is when 99% of us lose the battle. To win you must stick to your path and then this will force you to give priority to all things that matter for you. Sometimes all of that will mean leave some things you are doing now.
Further, as you stick to your path it forces you to leave bad habits, distractions, and improve your self-discipline and willingness.
Remember this world is designed to distract you. There is a race to win your attention. So please, avoid any F*** distractions. Don't let them steal part of your dream or even that they delay the time to achieve your goals.
Make sure you keep coding, being curious, and trying different things on the same path you defined before. I have checked the only difference between a successful dev and not is just the ability and willingness to stick to his plans and goals.
Trying to rush will only cause frustration and disappointment. I motivate you to keep consistent instead. Consistency will develop the muscle of problem-solving, thinking-process, technical communication, patience and it will let enjoy the process.
The more you learn, the more you realize how LITTLE you know!
Sooner than later you will find out that no matter how fast you are trying to be. The interesting thing in the software developing field is the fact that it is a lifetime process. There are no shortcuts or magic formulas. You will always find new things, tips, tricks, and those kinds of stuff in.
Don't hurt yourself, don't rush. You and everybody out here know the same feeling you feel now. Just choose to be consistent!
I know that feeling when you put all your effort and energy. You put your soul and heart on but you yet still not find the outcome you are looking for.
Just after we think about the result we have lost the battle. I have failed countless times and I certainly will do it. Does it really matter? Not at all! If you embrace and take advantage of it by developing and becoming resilient every single time you fail.
The ability to be resilient is not an act of magic and overnight. It develops before your failures or at the same time that failure hits you.
There's no more special feeling and sensation that looks back and sees how much you have moved forward. It could be just a week, a month, a year.
The feeling of how better you have become is a really great and rewarding thing I have felt.
Nobody will let me lie. I know it is a popular cliché. If you don't know where you started out, where you are now and where you are going I would say you don't know who you are.
Tracking your progress is for you. Not for anyone else. It's a way of motivation to push yourself moving forward.
Read as much as you can. However, be careful!. We are bombarding with a really crazy bunch of information.
In my humble opinion, our reading should be focusing on two things: your path, what you want to become, and pieces that push you in that direction. It cuts down to two things: Soft and technical skills, that's it.
Read about something that becomes you stronger on your path you decided to follow. Dirty your hands coding any snippet you see on the internet, blog post, or video. There's no other way to find mastery than just do it.
Write down your thoughts. Create a blog post, not for someone else, it's your own tool. What we are trying to do is to retain that knowledge somehow in your long-term memory.
Share your doubts, questions on every community you belong to. I bet to say that more than one in your network will appreciate it and therefore will find help on it.
Repeat the prior routine without thinking if you now are good enough. We never will be enough. This is because everything is relative and depends on the goal you have at that time. It's not the same preparation you need if you want to work in a startup than you want to work in an elite company like Google, Amazon, Facebook.
Believe it or not, I remember those things above to myself every single day. I don't consider myself a smart person but strong and consistent. And my philosophy is that at some point, in the race of consistency and intelligence, consistency will reach intelligence and just some minutes later it will be ahead of it.
Thanks for reading! If this story turned out to be interesting, I’d really appreciate it if you share it with your friends.