That seems to be the best choice but I struggle starting a project when I don't know all about the tools I can use. Or the capabilities of the programming language I am learning.
What do you struggle with exactly? just put more info, and I'll be happy to help ;)
For example recently I was doing a python 3 course and didn't have any ideas on what I could build with it or how. I needed more time to see what are py's bemefits and strong points so that I could learn more as I build my project.
I don't know if you've ever coded in that language, I just used it as an example. At what point you think is a good time to start a project? After finishing books and courses or during that time and keep learning as you are coding?
What I do is I work on a project and read/watch about whatever I need... never read/watch something i dont need, it's just a waste of time cuz when i need it I'm gonna read/watch the same content again.
P.S: I spend 2 hours everyday to learn about totally new tech, cuz it's not a problem to not master specific tech, the real problem when you dont have an idea about what other tech can be useful for.
P.S.S: I use Python/CSharp for backend.
So... let's face it with a simple analogy:
Suppose you're practicing as a pro football player, and your dodging & defending skills are good, but you're terrible at free kicks... would you do more dodging and defending? or focus on doing more free kicks?
Lemme define some vars
Dodging = reading from books
Defending = watching courses
Free kicks = doing actual project
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.