What if you could come out of this pandemic knowing how to code? As I've said before, now might be a perfect time. Instead of binging Tiger King, learn to code; which is one of the most valuable and employable skills, in any job market. I know they're out there, but no software engineer that I know (in my personal network) has been laid off as a result of this pandemic. That's says something about this valuable skill.
Difficult things (such as learning to code) are overwhelming. But if we could somehow not get overwhelmed, then we just might be able to do this.
I believe that the secret to not being overwhelmed is to be focused. This means that you take learning to code one step at a time, trusting that the next step will reveal itself when it's time. But that next step will never come if you don't do something.
Well, when it comes to learning to code, I'm here to tell you what your first step should be:
Learn the fundamentals of one programming language.
I'll tell you "why", "what language" and "how" in a moment, but let it sink in that you have the next step. You don't have to be overwhelmed by all the other questions, right now. Don't worry about what you need to learn next, or how much time it will take you, or even if you'll be any good. No one is good when they start, but they all started.
Oh, by the way, I think you can accomplish this in 5 weeks or less.
So here comes the good stuff:
What is this the best place to start (learning the fundamentals of one programming language)?
1. It will give you the foundation you need to do anything else. Literally, you can't do anything with code without knowing one language, in it's entirety.
2. It will give you an idea if you like this or not. Is it worth pursuing? If you learn an entire programming language, and in the end, don't like it, then stop. This isn't for you. Invest no more time in this.
Ahh, such a hot topic. Honestly, it doesn't matter. As long as it's an actual programming language. Unfortunately, HTML and CSS don't count because they're "markup" languages. If you learn them first, that's great, but they may give you false confidence as programming is much more difficult.
The main thing to avoid here is the "learning cycle of death". That's where you keep switching which language you're trying to learn because the grass looks greener. Stick with one because it will become exponentially easier to learn the next one if you know all of one. There is no sense in learning how to declare variables in 5 languages if you cannot do loops in 1.
First of all, you should know that this is going to be the hardest part of the whole journey. That's because there are very few positive feedback loops while you learn your first programming language.
For example, you may learn your first language in this order:
- First, you learn about variables
- Then functions
- Followed by your data-structures (arrays and objects)
- And finally loops and other ways to iterate
It's not until you've learned all of these topics that you can actually do anything significant or build anything cool. In other words, the "reward" of learning to code won't come until you've learned the entirety of your first programming language.
This is the reason why so many fail to learn to code at all. They try and do this on their own, they flip flop (switch languages) and never get anywhere. You get stuck, get frustrated and it takes you weeks or months to get back on the horse.