Writing software for 10+ years. Eschew hype; focus on performance.
Living in Switzerland 🇨🇠since 2017.
Writing software for 10+ years. Eschew hype; focus on performance.
Living in Switzerland 🇨🇠since 2017.
First, Lelouch from X, presumably named after Lelouch vi Britannia from Code Geass, did a great job documenting a lot of the necessary knowledge to self-learn on their personal blog, including their switch from marketing to Computer Science / Machine Learning. It applies to programming as well.
If you want a bit more structure, start with Lelouch's content.
On this post I want to share something a bit less brainy.
It is just a loop I want you to encourage to think about, which when applied, will inevitably lead to mastery. In this case of programming but I'm sure it could be adapted to anything.
Invariably, without fail, this is an upwards cycle towards mastery.
It might sound vague, but it is just one application of Deliberate Practice.
To any autodidact, or person self-learning programming, or the guitar, or whatever you like, this is the basic loop. Repeat this loop every day, multiple times if you have time, and you will get good given enough loops, no matter how smart or dumb you are.
Observe any master or self-taught expert, this is effectively what they did, one way or the other.
The mindset this requires, and the mindset it induces, is a long term mindset which on its own leads to mastery. It's "how can I get better next time?" with no concern for how poorly you've done so far, or how long it'll take to get to mastery. Because it is only concerned with the next step.
Just a caveat, it is not rare for people that follow this method to not feel like they're good. To not realize they're good. Because it's self-taught, so there is no test or comparison with somebody else to tell you whether you are good or not. So I recommend you simply focus on "am I achieving what I want to achieve with this skill?" and ignore any other signal.
Get it done, become a master.
Funnily enough, you tend to learn them naturally. Because they're fundamental, you cannot avoid them.
If you missed something serious, you can go back and fix it later.
But once you're pretty OK, learning the fundamentals is not that hard.
I suggest you spend around 1/5 or 1/4 of your time consuming content about what you're learning. Fun content. Doesn't have to be educational, just has to keep you engaged.
This loop is induced automatically by your brain when you consume any content in the target language, there's not much you have to do here besides being interested in the language. Grammar drills will actively harm this loop if done beyond some basics to start understanding the language (key word understanding, I don't recommend attempting to speak before you understand, it harms your long term ability to speak at a higher level).