How To Become A Software Developer — Part 2
After having your why and a language to back it up, the next step is to seek ways to learn that language. Sometimes, people learn too much theory that they are not able to develop any practical application and sometimes some people dwell too much on the practical aspect that they do not understand why they do what they do. So you need to strike a balance between understanding the theory and the practicals of what you are reading.
To begin to learn a language, make sure to have researched the best resources to learn that language with, then set a project in mind you want to accomplish. This is necessary so that you do not focus solely on learning the theory without practicalizing. As you learn, you apply what you have learned on your practical project. This would ensure that you not only read, but you are also applying what you have read.
Moving forward, as much as you would like to accomplish this goal, some issues in life come up that make us move away from what we originally planned for our lives and as such, it is always important to track our progress over a period of time. And one of the best ways I have found towards achieving this goal is by developing an OKR.
An OKR is an Objective and Key Results Framework where you state your WHATs and your HOWs. It enables you to clearly define what you want to achieve and over what period of time you want to achieve it so that you can always assess yourself if you are on track. This article does not go too detailed about an OKR so you can check for more information on the Internet on how to develop an OKR.
After understanding your WHY, knowing what language to learn, and choosing a way to learn and practice what you have learned. The next thing you need is to develop some personal habits that would keep you going no matter how tough the battle gets. Sometimes you would look at your code and see no error while your computer keeps screaming it has found an error. During those times, you need to know that you are not alone. You would need to have the qualities of passion, patience, and perseverance towards ensuring that you make it work.
And while you try and it does not work, do what I call changing perspective. When you are on something for the past few hours, do yourself a favour and switch it off. Move on to something entirely different. While on the other things, you mind processes this problem in the background so that when you get back to solving it, it becomes a bit less difficult than when it was before.
Also never forget to have friends and join programming communities that would push you forward. The journey can be won alone but it would be more interesting if you have people around who you share your problems with. But take some time to make sure you work on the problem before consulting others. Because one day, you might be the only one who knows how to fix it, so learn how to be able to work with seeking too much guidance.
And finally share what you know with the world. No matter how simple what you think you know, it might save someone elsewhere. So take your time and teach the next person. Make a small video, write an article, organize a meeting with friends, and try any other way possible. Teach as many people as you can, it simply makes you a better learn.
In the end, becoming a programmer is not a one way trip and many people have taken different paths to the same destination. For me, this is the path I wish I learned earlier and I hope it helps somebody today.
Thanks and God Bless.