The main way to learn something is by doing. Don’t overthink it, just do. In my case, I wanted to learn more about Frontend development. Don’t think too much about which library to use, because this decision doesn’t have any long-term effects. Just take something mainstream and go with it.

The same with learning a new language. Don’t be too passive about it. Learning a skill takes effort.

Ambitious goals

Of course, you will have to take baby steps initially when trying to learn something new, but the way I like to go about it is to set an ambitious goal and then work backwards from there. This is a way to avoid perfecting the basics without getting past that initial threshold that allows you to truly learn something.

It will be immediately clear why you can’t reach the ambitious goal yet and that forces you to think about what you need first to get there. Gradually move backwards until you have a first step that you can reasonably achieve.

It’s also important to point out that you don’t have to stick with the initial goal. Increasing knowledge will probably make you rethink what you want as a long-term goal.