This website collects cookies to deliver better user experience
Learning Programming is Non-Linear
Learning Programming is Non-Linear
Learning is by no means a linear process, even in hard sciences like Math.
It is very common to see people asking in groups, Reddit, and other forum-like places "What path should I take to become a Software Developer".
Unfortunately, learning programming is not linear.
You will find many lists and articles giving you a path like: learn HTML, CSS, JavaScript...
They are not wrong in the sense that you should learn JavaScript before React, but they don't warn you that you should not worry about mastering the previous topic before jumping to the next.
Those topics are all interconnected, which means they will "click" in your head only after you have some knowledge of each topic.
Learn some JavaScript and then some React.
If you decide to "master" Python before trying Django, good luck, you will never get to Django.
Python is a massive language, you can learn the basics very quickly, but mastering it is another matter.
You can learn the core of the language as fast as possible, and then move on to dive into Web Development, Data Science, or general use of Python as a programming language to automate your everyday tasks.
If you choose, say, Machine Learning, you will need to understand some details of the language specifically for some tasks, but you will have enough knowledge of the basics to google yourself out of any situation.
The "click" also happens as you expand your arsenal of tools.
I'm challenging myself at the moment to dive more into web3, which is a new realm of software development and solutions revolving around blockchain and the crypto space.