Bad students in physics and math (which I've taught) think that the subject is like history, you need to memorize facts to please the professor. Successful learners develop skills similar to playing music.<p>If you are doing some combination of (1) reading textbooks, (2) attending lectures, and (3) doing problem sets, I'd say (3) is essential and the others only supporting.<p>My son and I were talking about probability yesterday, he was calculating odds with mental arithmetic, I was writing algebra on the blackboard. He never really "got" algebra and so he looks at math really differently than he does. I keep one formula in my head<p><pre><code> exp[i theta] = cos theta + i sin theta
</code></pre>
and with that I can derive any trigonometric identity, angle addition formula, etc. that I want. What could look like a mountain of facts can look like very little when you've got the underlying fluency to disturb things.<p>When it comes to programming languages and frameworks (say Spring) I tend to read and re-read the manuals while doing cardio, reading the bus or something like that. The goal is not to memorize information but to develop familiarity with the manual. In a language with a good manual, say Java or Python (but not Clojure) there are many arbitrary things you need to know such as how to look up the length of a string, where to find random numbers in the standard library, etc. You are really doomed if you are looking up these things in Google or Stack Overflow<p>Then there is the "technically interesting" stuff I read which is often about electronics and energy technology. This stuff I read nonlinearly and repetitively and I suck it quickly and can fluently talk about many fields that I've never worked in. When I really get down to doing something, say for Arduino projects, I find my difficulties often are in a few areas like (1) converting voltage levels, and (2) connecting and fastening parts in a reliable way to form a whole.<p>I have been doing an art project for the the last 18 months and found so far that I've learned most things the hard way and usually had a hard time looking things up in the literature or really incorporating what I read into my practice until after I 'discovered' the answers.<p>I am doing an extensive reading project that covers literature, psychology, sociology and related fields and there I read books cover to cover. The limiting factor is the emotions that the books stir up and how that affects my ability to do the practical work that goes along with that reading. For instance I finished this book<p><a href="https://en.wikipedia.org/wiki/The_Collector" rel="nofollow">https://en.wikipedia.org/wiki/The_Collector</a><p>this morning and was shook up by it. I had a subproject where I had rewired my emotions and motivations for a 3 month period which vastly improved my artistic output but reading one Morton Hunt book caused the spell to break over the course of 48 hours and I saw it come apart exactly the same way that the book I learned the spell from said it would come apart.<p>In the practical work I sometimes think I am an idiot such that it takes me three tries to learn something I really should have known 30 years ago but that's the reason why I am doing this project. Based on consolidated book knowledge, however, I'm starting to talk a very good game on this subject and can sometimes say more in a few sentences than practically knowledgeable people can say in 1500 words.