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.