Hello everyone, it's been a while now... I was again very busy with school, side projects and the current crisis of the Covid-19 didn't helped...
I hope that you are all doing wonderful, that this crisis didn't affect you and your family that much 🙏🏻
Today, I'm writing this article to share with you what I would you say to someone that wants to get into programming. I have been asked about this question several times, so I decided to write an article about it in order to share my advises to everyone. (Please do not hesitate to contradict me and give your opinion in comments)
// if you're on my personal blog, the comment section is under development, I'll build it as soon as possible !
I must specify that I won't talk about any programming language in particular but more about the general aspect of programming.
Because for me, before learning a language you have to learn the terms and the fundamental principles of programming (basic algorithmic, terminology, ...)
When you have that basis and you know how to call things, you can do your research by your own and learn any language you'd like.
Without further ado, let's get to those advises !
First of all, don't think like I was thinking at that time ! Don't think that in just a couple of weeks you will code the new Minecraft, it more complicated than you think! It's not impossible but it will take times, so take your time and be patient 🤓.
Before learning how to run (or even fly) you must learn how to walk, so first, learn the basics of programming like, how computers works, what is inside my machine, what variables are, what an IDE is, ...
Learn loops, structures, algorithmic, ... After that you can dive into classes and objects with «Object oriented programming», «inheritance», «Polymorphism».
Learn what is a compiler, an interpreter, a VM (virtual machine), ...
You will also have to learn what libraries and protocols are, those things will allow you to create more complete programs/games/websites or whatever.
Don't be discouraged, even if it seems difficult, with practice you will get through. And more you will learn, more you will have facilities because everything will be clear and logic in your head.
At the beginning, take your time to find good resources to learn, because even if there are a lot of good resources on the internet, there are also a lot of videos or articles from people who say things wrong. There are also those who shows you very complex things just to show you that THEY know and therefore THEY are the best and THEY THEY THEY. Of course, I'm talking about arrogant people 😆, I'm tempted to say that the IT industry is full of them !
But don't make me say what I didn't say, there are a lot of good resources and kind people, and it is thanks to the internet that I know so much (and at the same time so little).
A good example is DEV that is full of amazing people, you can also find very passionate people on YouTube, ask your friends and people who codes for long time advises and resources that they found useful 👌🏻.
Don't stay passive and copy pasting every tutorial you found on YouTube, practice !
If you just learned a concept or a language or whatever, just use it in a little project, why not build the famous Todo app, or a Tetris clone, or a Snake ? Those are examples of cool little project that aren't that complicated and you will learn a lot from them ! You need to practice and get wrong to learn ! For me, practice and mistakes are the real teachers, you will improve yourself and you'll understand that some of the things you took for granted weren't!
On top of all this, you will have things to show to your friends and to the future recruiters you will meet, and this will be a source of pride and motivation for you.
Don't copy paste, while you are learning !
Copy pasting is a false friend, you think that it helps you but it's not !
You are not yet comfortable with programming, the syntax, the naming conventions and all that stuff. You have to practice and write everything until you can program without any self-completion. That's why I advised in a previous post to avoid using IDE at the beginning, it will force you to write everything, it will force you to remember, and that's what we want !
A big mistake that, I have to admit, I usually do is to learn everything.
What I mean by everything is learning Web development, Gaming development, Cybersecurity, Cisco networking, ...
Focus on one field and specialize yourself in it. It's okay to try to create a website, to watch a video of someone creating a game to see if we like it or not and make a considered decision, but don't learn every single field in depth.
Don't give up ! Anyone can do it, I promise you. And even if you are not motivated sometimes, get out of your bed and just practice you will thank me later 😉.
Speaking about motivation... What motivates you ? I would love to know this !
If you think I missed an important advice, feel free to share it in the comment section !
Again if you're on my blog there is no comment section for the moment, I invite you to continue the discussion on my social networks, in the meantime
I'm more active on Twitter, see you there ^^