Locked doors, headaches, and intellectual need
My most unrewarding educational experiences felt like I was being fire hosed solutions to problems I didn't have. This is a big challenge in the early stages of learning any subject.<p>Interestingly, experienced software developers benefit from barely-learning about many solutions to problems they don't have, yet. What I mean is a style of skimming stuff like API documentation. You don't really learn it. You can't recall details. But you can recognize its applicability. Someday a problem tickles your memory, and you know roughly where to go looking for the details. And of course then you're really motivated to learn it, for real. You have an immediate need.