Come March of 2022, I will have been programming for three years. I can't open think back to those early days and realize just how lost I was and I often find myself asking the question if I had to start over with what I know about programming today, how would I go about it? That being said, these are my five steps to go from zero to a full-time web developer.
Step one: language
People tend to get hung up on the best language to learn. We want to pick the most optimal language, the one that's going to for sure get a job in the future. We want the most bang for our buck when learning how to code is learning a new skill in general from an evolutionary standpoint, this makes sense as the ultimate goal in life is to survive.
We've evolved to preserve as much energy as possible while satisfying our need to please the reward center of our brain, so don't beat yourself up too much for being lazy, just means your body is doing what it's supposed to do. But because we generally want the most bang for our buck and due to the nature of the abundant amount of information out there, it is easy to get lost and analysis paralysis when trying to figure out where to start and what often happens is that we overthink the starting points so much that we end up making zero progress.
But here's the thing, it is better to do less than you hoped, more than nothing at all, even if you told me you want to learn COBOL in 2022, I would say go for it is an obsolete language. Are there many jobs that want? COBOL developers now, but the thing is, learning COBOL will get you closer to your end goal and not even starting at all.
That initial momentum is the most important. However, usually the hardest. This is why it is crucial to not overthink that starting point and just dive in. But if I could go back in time and slap my 19-year-old self faced with something that would definitely be JavaScript, I would learn JavaScript and I'd become really good at it.
My reasoning is that JavaScript ranked the most commonly used programming language for nine years in a row with over 64% of the developer market using JavaScript as their primary language. Important in Stackoverflow survey with JavaScript you can essentially become a full stack developer with this one language.
Some of the most used front-end frameworks in the technical market use JavaScript, react, Vue, angular and with no day back-end JavaScript runtime environment, you're able to write server-side back-end code with this language.
Not only that cross-platform mobile application development with JavaScript has become a very viable option in today's market. Thanks to react-native. With one language you're able to write front end websites, back end server-side code.
In mobile applications, I do believe JavaScript is the most practical language for finding a job in today's market. But take that with a grain of salt and learn whatever interests you. Perhaps that would be C sharp for game Dev.
Kotlin, Swift for mobile Dev, or Python. For data science. Your first language is never your last, and as I've mentioned multiple times, the principles we undercoating aren't built into programming languages which you will soon find out after you take that dive.
Step Two: The beginning is the beginning and the beginning is often the hardest part.
You need momentum and you need to get into the mindset of a programmer. You need to write code every single day for the immediate future, and this may seem difficult, especially if you have a busy schedule, but we often fail to learn a new skill because we set our expectations way too high.
I'm going to use every free moment I have to learn this new thing. This is something that I often tell myself when I'm excited in the moment, but when it comes time to sit down and study that one-to-2/3-hour time block starts to look like a lot of work. So, my advice is to start small, really small to the point where it's almost impossible to mess this up. Day zero through seven.
Start for five minutes only sit down and learn how to code for five minutes every day. How hard is that? After the first week, progressively overload your learning sessions for five minutes every week to every couple of days in the beginning. If you tell yourself you're only going to sit down and study code for five minutes, it won't be hard to get into that rhythm.
And once you get into that rhythm, that'll be hard to stop. So where do you start learning in the next few months? Start with basic syntax. Learn variables, functions, conditions, loops, classes, objects. Follow along with free resources such as Freecodecamp or Codeacademy. This is where you need to get your coding reps in code, compile code.
Step Three: Imitate time to take it to the next level.
You may not feel like you're ready, but you're never going to feel like you're ready. Finding someone to learn from if you can in real life, is great, but the reality is, most people learning how to code will find a mentor online.
When I say mentor, I don't mean someone that you can constantly check in with, I just mean somebody that you can learn from who is more experienced in the subject than you imitate from that mental happy their tutorials line for line. Be curious, not sure what is a certain piece of code is doing. Google it there's no rush here.
Step Four: Innovate
Innovate after a few months of imitating it is time to dive into your own projects from scratch. This is the phase with real learning starts where you get stuck and you have to figure the problem out on your own, without that crutch of a tutorial, building your own projects is key. When learning how to code, don't have an idea, doesn't matter. Take something that already exists and innovate on top of that, you're not trying to make the next Netflix, you're just trying to get your first developer job.
Build a portfolio of a few key projects that you can really sink your teeth into a demonstrate your ability. This portfolio is what you're going to use to market yourself and is even more crucial if you're a self-taught programmer.
Step Five: Markets for the last six months.
You've been locked in your room. Becoming a programmer with minimal contact from the outside world, it's time to put yourself out there. Depending on who you are, this may be the hardest part. Build a LinkedIn post cringing programming motivation, message people, talk to people, make friends in the industry.
Message recruiters apply for every job you can, regardless of their requirements. Go to programming meetups now, Work with people. Networking is extremely crucial. Get job interviews, bomb job interviews, a lot of them. Learn from your interview failures, sharpen the areas you need to sharpen. Finding a job can be a full-time job itself.
Conclusion
Getting your foot in the door somewhere is the final step in your ticket to making this your career. So how long will it take you to go from zero to the full-time developer? And to be honest, time is irrelevant. You're only quoting twice every six months, and there's no way that it can happen in a year.
What matters is the amount of time you sit down and actually write code just like we constantly have to do this same thing every day to build muscle in the gym, we got to do the same thing to build those brain muscles, code, compile and code.