When I found out about programming I loved it, it was like art. There were so many ways to do one thing, also the fact that I could think of something and put it down was thrilling. What I am about to share is what I have learnt so far in my journey as a programmer.
The issue though was that I did not have a lot of people to guide me at the beginning. I had to really search for those that were good to show me the way, and I held on to their garments until they answered me 😄. For those few who guided me, I keep on thanking them. You see, one thing you should never get into is not having time to encourage upcoming programmers. To you, it might not seem like a big deal, but it means the world to a beginner. You don't have to be an expert before you can help someone if you have been programming for one month you can help someone who just started today.
I say all these because I also have had the experience where I messaged someone who was really good at what I wanted to learn and they gave me really good tips... and I was like 'he replied!' 😀😀😀.
When I was learning 3D design with Blender, I sent a message to like 3 people I admire, they were really good 3D artists. I was like "hey", "I love your stuff", "how did you get this good?". I was kinda shocked when they responded, not with a one-line sentence, but a detailed message about their journey. That meant a lot to me and taught me how to encourage people. Sometimes people have an answer to their questions, but you just telling them motivates them and it sticks better.
It's easy to look at programming languages as clubs rather than as tools.You should understand what I am saying if you have an idea of how people treat their clubs. For some people, whether their team is losing or winning, they still stick with the team. A programming language should be a tool, for example, let's say there is a C++ programmer who loves C++, so much that anything he wants to do he must use C++. He is then told to build a website, but because he loves C++ so much he decides to use C++ to do the website... isn't that cute 😄... wouldn't it be more stressful than just using the easier modern web development languages?
Check your toolbox and use the best tool for the task. That is why it is not a bad thing to learn a new language, that does not mean you abandon your primary language.
See programming languages as tools that you use when you need to perform a particular task, though I know there are some programming languages that are so awesome they are more like a Swiss army knife 🤗.
I know it can be tasking if after learning a language 'A' and suddenly a language 'B' comes out and everyone starts using 'B' and it looks like your 6 years of learning 'A' has been a waste. Well, look again.
If you learn how to drive one particular car, it kinda helps you understand how cars work in general. So you could hop on any other car and drive. Yes, there will be differences but the basics are the same. Even if you have never driven a monster truck or a war tank at least you will have an idea.
A motorbike has gears, it has brakes, it has a clutch so as a car driver you know all those concepts already. Same with programming, though the truth is, there are some programming languages that are like fighter jets 😨, so you might just have to learn new ways of coding in some cases, but that does not mean you are really starting afresh.
This is one thing that every programmer needs, one language that taught me grit was PHP 😄. I mean I had errors that occurred when my code looked quite fine. I actually like seeing error logs, at least it tells me what is going wrong unlike when your code looks beautiful but something is wrong, at that point do you give up? You need to keep pushing and not quit!...I am talking about effort, not version control 😁.
What should be done if this code returned false?:
if(2==2) return true
It might be exciting to solve it the first hour, but what if after a week you could not get it to give the right answer 🤔. At that point, you need to keep pushing on. There could be times when you will be coding and get stuck, you could even go to our dear StackOverflow, ask a question, but no answer😨. You need to keep pushing, sometimes you just need to break your code down into individual parts to see what portion is actually giving the error.
Watch videos, read the docs, look at source code and if possible learn something new every day about the language you want to get good at.
Albert Einstein once said "It's not that I'm so smart, it's just that I stay with problems longer."