- don’t struggle too long!
- if I don’t know what to do, look it up right away and absorb the solution
- all of the questions already have optimized, known solutions
- it’s inefficient to spend all my time going down the wrong road and building the wrong muscle memory
- memorize the right patterns + learn to recognize what questions they apply to
- same as I did when studying accounting in < 2 yrs
- The general recommendation for maximizing your learning is to start by struggling through a problem yourself, then eventually look at the solution and compare it to what you did
- I tried that
- Accounting
- If you have endless time, fine. You’ll build character.
- But there are downsides:
- You get good at what you practice
- If you spend most of your time practicing solving a problem the wrong way, you will get good at the wrong thing
- When you encounter that problem again, you are likely to draw on memories you formed while going in the wrong direction
- You probably have limited time and things to do
- What’s better: spending 80% of your time fumbling and 20% of the time learning the right approach, or 100% of your time feeding your brain the right patterns and practicing them?
- You get good at what you practice
- Accounting approach:
- Spent one night working on a problem for 45 minutes only to realize I went the wrong way.
- Swore to never waste so much time again.
- Created flash cards for every problem + solution in the textbook (that creation time was good learning time I got extra value from by distilling and paraphrasing the answers)
- Spent the majority of the semester studying those flash cards (using spaced repetition)
- Crushed the exams
- It’s true (in my experience) that memorization like that doesn’t form memories that last as long as the classic try-then-check approach, but it sure is more efficient when the reality is you need to learn a lot in a short amount of time
- The other kind of learning is better left for your normal work life, where it will happen naturally. Anytime you intentionally want to learn something, I say study the answer immediately.
- Applies to coding interview studying too
- Point is to figure out the OUTLINE of the right approach to solving. Not to memorize the details of a specific solution. Like memorizing the pseudocode of an algorithm pattern.