It should start right here so that the rest doesn't lose its context: To be a programmer, you really have to love coding. Unlike most other professions, it is pretty hard for someone who does not like their job to hold on in this sector. Why?
I think there are two main reasons: First, it requires tremendous mental effort. Again, unlike other professions, there isn't any distribution between the physical and mental effort you put here; writing code is a job completely done by your mind.
Second, this is probably the industry where your efforts are most likely to fail. Dozens of lines of code you write will often cause errors and you will have to debug these errors every day, solve problems that sometimes take hours of research, without getting tired of it. As it stands...
Like other rejections and disappointments in life, this is a climb that can make the undetermined one give up fairly quickly.
If you've never written code, so don't know if you'll like it or not, don't worry; once you are eager to learn, your fate will be decided within the first week, if not sooner.
def lets_go(request, passion):
Now that we've left the emotional side of the issue behind, we can roll up our sleeves. The resources I will share and the advice I will give belong to the roadmap that I had created as a result of long research on the internet, as you are probably doing now, and that I followed myself 5 years ago. The industry is bustling, and you'll appreciate that during this time, more useful resources may have emerged. Please be sure to do your own research.
This free website is an excellent resource that can give you the programming foundation you need. They teach the use of almost all popular languages and tools; and they do this in a simple, interactive and highly enjoyable way. For $20 per month, you can switch to the Pro membership type, which I recommend you do — perhaps not the first month, but starting the second. Because in the first month, you will both get to know yourself and you will not need the support and homework projects that come with the Pro membership for now.
Sort of paid version of the above with less interaction, more videos. It's not an ideal place to start from zero, but it's perfect for polishing off Codecademy. They have qualified teachers and support forums where you can get answers quickly. After the first 7 days of free trial, the monthly fee is $25.
I haven't personally used Udemy, which is one of the most popular platforms for video lessons, but I know people who have seen its benefits. There are two reasons why I haven't bought any programming lessons from here until now: YouTube is full of ample (and free) content; and it is very difficult for you to learn this job properly on a platform that does not give you the opportunity to write code by giving you interactive tasks, and that does not report back the mistakes you have made in your code.
No words needed: After your first few months of basic training, YouTube will be your number one teacher along with Stackoverflow. However, despite all the great content you can find, I don't recommend it for beginners: Like Udemy, the engagement-assignment element is weak and as we all know, it can get too distracting.
How long will it take me to learn?
Remember this: Your goal is to get from scratch to the point where you can write your first line of code in a common language. It took me 3 months; depending on your effort and understanding, this will probably take less for you.
Once you survive first couple of months, the rest follows. Before jumping to another language, you need to work on the first one for at least 1 year, write the project(s) and digest the basic concepts and how they are used: funcs, classes, vars; if, for, and whiles...
From that point on, it won't take more than 3 months to learn your second language. If you dedicate another 1 year to it, the transition to the third language will take at most 1 month.
Taking advantage of the opportunity
When it comes to learning how to code... in fact, no matter what it is about, we are living in a very fortunate period when it comes to 'learning'. We are surrounded by an abundance of free and easily accessible resources. The solutions to the problems you may encounter are literally dumped on you by Google, and if you can't find it, folks are competing with each other to solve your problem in the forums. Seize the opportunity when such an essential skill is so accessible. If it feels like it's too late for you, advise your children to make it.
We will continue our articles with sub-topics such languages you need to learn. You can reach the next articles from the links just below. Good luck!