5 Harsh Truths No One Tells Beginners About Programming
It’s Not a One Time Thing. The Grind Is Real
We have all experienced the negative effects of the pandemic. Jobs have been lost, and it is not like the living standards are going down. Most of the people who had onsite jobs lost them. In this period, the most profitable market to go into was the tech market because we can work from anywhere.
All we need is a computer that has an internet connection. That being said, there has been a high number of individuals looking to get into programming. This is a good thing. It is just that I do not think their expectations are as they had imagined.
In this piece, I want to touch on something most people don’t cover when they are teaching or advising people getting into tech. Most people don’t talk about the harsh or the dark side of programming. We speak a lot about the positives for coding, building software, and technology in general, but I really think it is important to highlight some of the harsh truths that maybe are not spoken about as much when you are learning programming or are a programmer.
The reason I want to do this is so when you are learning to program, or if you are a programmer, you can kind of be prepared as to what might come down when you are learning. This is not to discourage you or make you not want to continue on your programming path, it is actually the opposite. It is to prepare you with the skills or insights necessary that if you face some of these challenges, you will know that it is totally normal and you will get through it.
1. No, You Cannot Learn Programming in One Month
I am sure you have seen tons and tons of people or courses on the internet promising to make you a full-stack developer in under 30 days, or you will be paid six figures in under 30 days. This is very unlikely! I am not going to say impossible. Learning how to program, like any skill, takes time.
It takes consistency, repetition, and it is not just going to happen overnight. It is even longer for people who are coming from a non-technical background. Learning to even think programmatically takes time. It is not just a few commands or frameworks or different languages you need to learn. It is changing your entire mindset to think in a specific way to solve problems in a specific way.
Do you know that googling, itself, is also a skill to be learned? What I mean by that is learning how to google questions that will actually get you the answers you need for the programming you are doing.
So, if you see a course that promises to make you an expert programmer in one month, there is probably more to it than they are letting on. This brings me to another point. I want to touch on coding boot camps. These are usually only three months.
So, can you become a proficient or amazing programmer after that? Well… it really depends on what kind of background you had before getting into the boot camp, plus, you are never going to feel completely ready to go into the industry even after graduating from a boot camp, which is okay.
You just need to be aware of the mindset of continuous learning and growing, even once you graduate. It takes time, and it is almost like a muscle. The more you practice, the more you continue to learn, and the stronger and quicker you will grow.
2. Tutorials and Courses Will Not Land You a Job
You can take all the tutorials and all the courses under the sun, but they are not going to be the main reason that you land a job. Yes, of course, taking tutorials and courses is a huge part of your learning and growth alongside building projects on your own, but there is more to it than that.
You need to network. You need to step out of your comfort zone and start meeting people. If you are doing everything virtually right now, start reaching out on LinkedIn and other social platforms. Yes, even if you are an introvert and want to stay in your little room looking at your computer screen coding all day, networking is a must if you want to land that job.
Beginners are usually not hired because of the experience they have. Which experience? They are just dipping their toes in the tech pool. Companies look at different things. Are you eager to learn? Are you hungry? Do you want to keep on learning? They want to get to know you as a person and see that you would be a good fit for their team.
Another reason why tutorials and courses will not help you land (or not land) your first job is this: As essential as they are in your learning path, companies want to see your portfolio. This should have projects you have built. You can either build onto tutorial projects and make them your own or just completely build projects from scratch. Try to avoid using the same projects from a tutorial as a piece in your portfolio.
When you are looking for a job, you need to show that you have done some projects from scratch by yourself. For a junior position, these do not need to be some grandiose project. It can be something as simple as an interesting modified to-do list app.
Obviously, your portfolio needs to be more than that, but do not go out of your way trying to build the next Snapchat or Facebook. Companies just want to see that you have the basics down and that you can do it without using a tutorial. Escape the tutorial hell.
3. You Will Give Up More Than Once
Trust me on this. There are going to be days where you hate programming. You will find yourself questioning why you are even spending time programming. Impostor syndrome will kick in as if it was waiting for the first unsuccessful run to hit. The urge to quit will be at its peak! Guess what, it happens to the best of us.
It is totally normal, and it is okay to feel that way. Rather than trying to push those feelings away, start embracing them and realizing that it is normal to get frustrated with coding. This will help to get those feelings sorted quicker and overcome the impostor syndrome.
The last thing I want to point out with giving up when you are starting to learn how to code is that it is okay. The trick is to recognize and acknowledge that it is normal and remind yourself of why you wanted to start learning how to code.
Keep in mind that these pointers are not really to help you stay motivated. They are to help you remain disciplined because, to be honest, you will not always feel highly motivated to code. It will come with time.
4. You Will Need To Learn More Than One Programming Language
Yes, I said it. Before I even get into that, however, I want to make something clear. If you are just starting out with your first language or framework, I am a firm believer in seeing one thing through before jumping into another thing. Do not veer off the path you are currently on and start learning something else.
Even though this is a harsh truth, I think it is a really good one because it means that you are constantly learning and growing as a person, and as technology continues to change and evolve so quickly, you are going to need to keep up with it. For the question of how many languages you will need to learn? It depends on what you are working on at the time and your ultimate goal as a developer.
5. Your Background Matters
I talked a lot about how anyone can get into tech or programming without any kind of experience. Yes, that is true. Why is this a harsh truth? Well… think of it this way, it is easier for you to sing if you play a musical instrument or understand music theory compared to someone who has no experience at all in any of that.
The same applies to tech. The learning curve for someone who has had some interaction with code in some way will be small compared to someone who is from another field altogether. That is not unique to tech.
Do not fret, for there is hope. The best part about tech, for me, is that no one cares about your papers. Forget about the job posts that require you to have a CS degree and a bunch of languages under your belt for a junior position, those are just a joke.
In tech, they care more about the skills you can show, the skills you can talk about, your knowledge. This is really awesome because it really breaks down the barrier to entry for anyone wanting to get into tech. I mean, you do not have to go back to school for four years or anything like that.
The most important thing is to be persistent. If you don’t come from a technical background, you have to be persistent and keep on pushing forward. You are going to get there, you just cannot give up.
There is something else I think I should mention when it comes to never give up. I am not saying that you keep pushing to the point of putting your mental health at risk. I understand that many people push and push with little to no success.
The thing you should understand about that is that people grow and learn differently. Just because it worked for someone else faster than it is for you does not mean that something is wrong with you. It just means that you need to take some time for yourself and get back to it when you are fresh and ready to get back to it.
Remember, they will never deny you the chance as long as you are good at what you do.
I am a full-stack web developer. I love sharing my knowledge of web development technologies and programming in general.