Much better than the alternative (all consumption, zero production), but still not quite ideal in my personal experience. A two-phase approach is better - first comes the dead-zone, which is getting from boot-camp to the front-line. Sad as it is, you can't just jump straight into everything. I tried that when I first started learning to code, and I hit the same experience as you with JS - constant fallback on StackOverflow. Extremely frustrating since progress was unnecessarily slow and I didn't understand the fundamental philosophies behind the coding process and structure.<p>My current approach which is presently proving fantastic (we'll see where it goes) is to 1. bust through the dead-zone with brute force (I nicknamed it the dead-zone because it's precisely that for me - I can't get passionate enough to crank through it without imposing a strict regimen of study because it's not a project I can own and challenge myself with) and 2. get to working on a concrete personal/work project asap. Once I'm on the project I become obsessive and learn rapidly how all the pieces fit together - but that initial phase of consumption is invaluable for broad grasp of the subject at hand and understanding how all the pieces integrate into a whole.<p>That said, the ideal circumstance is that you're able to produce piecemeal as you progress through the initial consumption phase as well - Learn Python the Hard Way is a great example that's worked very well personally as an intro to Python, precisely because of its piecemeal hands-on approach. The Django Book tutorial is a nice counterexample - had to rush through that one so I could begin a project and incorporate what I'd learned before I forgot it as there were significantly fewer opportunities for incremental imprinting of acquired knowledge. It wasn't a bad experience, as I did manage to get through it in time before I lost the majority of what I'd learn, but that kind of consumptive material is severely limited by time - if you find yourself forced to consume something like that, get through it as <i>fast</i> as you can and start producing whenever you feel your knowledge slipping away.<p>TL;DR Consume a bit as fast as you can then produce