Now when I am learning something I always try to explain it in my mind (or write it down) to imaginary 'student'. It's so effective it's amazing. It lets me catch many knowledge 'holes' in my new studied topic. Whereas I used to just read the material (multiple times) and imagine that I know it. If somebody does not know what I am talking about just try to explain some topic you recently.
P.S. AFAIK, teaching is the best way to study/learn new topics.
Don't (just) read books. Put down the highlighter. Explain them. Get in front of a whiteboard and explain it to an imaginary audience. Imagine the questions you get back. Try to answer them. Sometimes you can do that nearly sentence by sentence, other times you have to do it section by section.
I was lucky enough to have a Feynman level (in terms of teaching) EE professor. I banged my head against modelling electron behavior in NPN junctions until I recognized that his teaching style was exactly how I needed to approach the material. From there on out everything became much easier.
[1] https://docs.google.com/viewer?a=v&pid=sites&srcid=ZGVmYXVsd...
I'm just realizing now that it's possible that those people don't have that same inner spark that I have. That same passion and drive to learn and understand. I really still feel like a kid in so many ways in life but even when I feel that twinge of embarrassment for geeking out on a topic too hard I will now and forever feel content in the fact that I'm always trying to teach that inner kid in me.
"What I cannot create, I do not understand" and right beneath this "Know how to solve every problem that has been solved".
However, some have argued that with deriving foundational knowledge you attain a discipline and through this process the decisions you make about taking the next step are done completely differently. You sincerely evaluate whether to take that next step.