How to Learn
A step-by-step guide to the most effective methods for learning difficult things quickly.

Table of Contents
I recently read several books about the most effective methods for learning difficult things quickly:
- Ultralearning, by Scott H. Young
- The First 20 Hours, by Josh Kaufman
- A Mind for Numbers, by Barbara Oakley
I decided to put these learning methods into practice by writing the following guide. It synthesizes the information from these books into a condensed, step-by-step process.
Make a Plan
First, plan your learning project. As a rule of thumb, you should spend roughly 10% of your total project time on this initial planning and research phase. (You will probably dip back into doing research as your performance plateaus and you learn more about where your deficiencies are.)
Don’t try to parallelize or multi-task. Pick one project and stick with it. For new ideas that come up, add them to your “Someday” list.
🧡 Choose Your Project
To start, you’ll need to decide what you want to learn. Your project should be lovable— something that gets you excited to learn. Answer the following questions:
- Is this an intrinsic project? Anything that you have an intrinsic interest in (eg. charcoal figure drawing, speaking Chinese) is a good candidate.
- Is this an instrumental project? Anything that you want to learn in order to accomplish a different goal (eg. learning public speaking in order to become good at selling) can also be a good candidate. (Learning a skill to solve a burning need or pain point is a great motivator.) Make sure to vet the project, though: ask an expert 👨🏫 in your end goal whether your learning project will actually help you achieve that goal.
If the project is neither intrinsic nor instrumental, reconsider whether it’s actually a lovable project. You need to be excited in order to put in the hours.
🗺 Chart a Course
Now that you’ve chosen what you want to learn (and why), it’s time to dig into the specifics. What exactly does learning this skill entail? How should you go about trying to learn it? The following steps will help you map out your learning path.
📚 Do Your Research
Pick up a few learning resources (books, videos, forums, etc.) and mine them for commonalities. This will give you a good starting point as you design your project. Take out a sheet of paper and, as you go through the resources, jot down notes for each of these questions:
- What tactics, techniques, and tools does everyone recommend?
- What metaphors or analogies do people use?
- What terminology keeps showing up?
- How do people monitor progress?
- How do people measure success?
Dive into the resources without hesitation. Remember— move towards the confusion. That’s where the best learning is. Try defining exactly what you’re confused about.
💀 Inversion
Imagine the worst possible outcome. What would it look like if everything went wrong when practicing or performing the skill? Take out a sheet of paper and write down all the steps you’d need to take or skills you’d need to learn in order to avoid that outcome.
📏 Identify Milestones and Benchmarks
Talk to an expert 👨🏫 to set realistic expectations for your project. Ask them:
- What milestones can you expect to see as you improve?
- What benchmarks should you use to measure success?
Take this information, along with your prior research, and write down the milestones and benchmarks. These metrics will help you set goals and monitor your progress.
🧩 Break it Down
Take out a piece of paper and write down three column headings: facts, concepts, and procedures. Brainstorm everything you need to learn, and separate the components of your project into these categories. (It’s fine if this is rough or inaccurate at this stage.)
- Facts are individual bits of information that need to be memorized. 🗄
- Concepts are high-level ideas that need to be understood. 🧱
- Procedures are sequences of steps (or subskills) that need to be practiced. 🏀
Once you’ve written down everything you can think of, identify which items appear to be the most important or challenging to learn and circle them. These will be the parts you’ll want to emphasize.
Similarly, identify which items appear to be the least important for your goals, and put a line through them. You may end up excluding them from your learning process.
It can be helpful to talk to an expert 👨🏫 to determine which parts to emphasize or exclude, given your goal.
🎯 Set Your Target Performance Level
Now you have enough information to set a more specific goal: your target performance level. This is best expressed as a single sentence that is based on performance and narrow in scope. (For example, “Speak Chinese well enough to pass the HSK4.”) Write this down.
🕖 Schedule and Commit
Now that you know where you’re headed on your learning journey, you’ll need to carve out the time to make it a reality. Putting in the hours will entail making sacrifices, but it will be worth it. Take out a sheet of paper, and write down the following:
- How many hours per week will you dedicate to the project?
- How many weeks will the project run?
- What specific days and times each week will you work on the project?
Once you have the above information, add it to your calendar and commit to it. Once you’ve committed, do not back out for any reason. (If you’re unsure whether you’re ready to commit, reconsider whether you’ve chosen a lovable project.)
As a rule of thumb, you should commit to at least 20 total hours of focused practice to break through the frustration barrier.
💼 Pack Your Suitcase
Think of starting your learning project like embarking on a trip. You know where and when you’re going; now, make sure you pack the essentials. At a minimum, you need a procedure you can practice, techniques for improving your performance, and backup techniques to try if you’re not improving.
Take out a sheet of paper, and start writing down practice activities and drill techniques. The following principles will help you come up with ideas.
⬆ Practice Directly
The best way to learn a skill is to practice it directly in the real-world environment where you plan to actually use it. (For example: if you want to learn physics in order to pass your undergraduate physics class, you should practice taking physics exams. If you want to learn architecture, you should practice creating blueprints and designs using the same software the professionals use.) Here are a few methods of direct practice:
- 📦 Produce something as an outcome of your learning project. At the very least, you’ll learn how to produce that type of product. (Remember to focus on the quality of your process as opposed to the product itself, though.)
- 🌊 Immerse yourself in the environment where you’ll use the skill. This will give you lots of opportunities to practice directly.
- 🕹 For environments where it’s dangerous to practice directly (eg. flying a plane, performing surgery), you can practice using a simulation. Make sure the simulation replicates the cognitive components of the real-world skill: the situations where you have to make a decision or retrieve knowledge.
- 💪 Practice in an environment that is overkill compared to the difficulty of the real-world application of the skill. The target environment should be a subset of this overkill environment (ie. the overkill environment should contain all the cognitive components of the target environment).
Which direct practice method do you plan to start with? Write it down, and flesh out the details of how you plan to practice.
🏀 Drill Your Weakest Point
As you practice directly, you will notice that you’re weak in certain areas. To improve, you’ll want to attack your weakest point using drills.
Here are a few methods for constructing drills:
- ⏳ Take a slice of time out of the entire procedure and practice it in isolation. Then, re-integrate that slice back into the procedure. (This is a commonly-used technique for music practice.)
- 🔎 Similarly, you can go through the entire procedure, but hold a magnifying glass up to the part you want to drill by lengthening the amount of time you spend on that section.
- 😼 For skills where it’s difficult to isolate just the part you want to practice, you can be a copycat: copy the work of others for all the parts of the procedure except the part you want to drill.
And a couple heuristics for determining what to drill:
- ⛏ Which component, if improved, would provide the most improvement for the least effort?
- 🤹 Which aspects of the skill do you need to juggle simultaneously?
Write down a few ideas for drills you can do to improve your performance on what you’ve identified as your weakest or most difficult components. Don’t worry about getting these exactly right; as you practice, you’ll come back to this process of creating and implementing new drills.
🚧 Remove Barriers
Finally, set yourself up for success by removing obstacles to your learning. These obstacles are easy to avoid with the right preparation.
🛠 Obtain Critical Tools
Make sure you have everything you need in order to practice the skill. Do you need to purchase any equipment, software, or other tools? Do you have a place to use the tools? If you can’t purchase the tools, do you have easy access to use them? Ideally, you want to be able to access the tools you need for the skill at any given time, without restriction.
🔦 Cultivate Focus
You need to develop a lightning-fast ability to focus deeply. You also need to have an obsessive work ethic. There are three main obstacles to focus:
- 🍫 Failing to start focusing, also known as procrastination. Recognize your procrastination cues (craving to do something else, aversion to the task at hand, etc.), and choose not to react to them.
- 📵 Failing to sustain focus, also known as distraction.
- Modify your environment to remove distractions. Typical distractions are your phone, access to the internet, and other people.
- Changing the task to make it easier to focus on can also work.
- Feelings of frustration can also present a major obstacle; observe the feelings as they arise, and push through them.
- 😴 Having a level of alertness that is not calibrated to the complexity of the task. Simple tasks require high arousal (eg. work in a noisy coffee shop), while more complex tasks require low arousal (eg. work in a silent library).
Make the necessary modifications to your environment to ensure your ability to focus.
Execute Your Plan
At this point, you should have the following:
- Your target performance level (which includes the topic and its scope).
- The primary resources you’re going to use.
- A benchmark for how others have successfully learned this skill or subject.
- Direct practice activities, drills, and techniques.
- Backup materials and drills.
Now it’s time to put your plan into action. This will make up the bulk of your total project time (as a rule of thumb, about 90%).
⏳ Manage Your Time
It’s important to manage your time well when working on your learning project.
🗓 Fixed Schedule Productivity
When you made your plan, you blocked off certain times each week for your learning project. Before you sit down to work on your project each of those times, make sure you know how exactly you plan to spend that time. This will help you get the most out of your practice hours.
Create a checklist for each session you practice the skill. This will help you systematize the process and approach the skill the same way every time.
🍅 Pomodoro Technique
Use the Pomodoro technique to alternate between periods of intense focus and relaxed breaks.
- ⏲ The default split is 25 minutes on, 5 minutes off. To build your ability to focus for longer, more complex tasks, you can increase the time (try 50 minutes on, 10 minutes off). Experiment and see what works best for you.
- 🥵 Don’t give up on hard problems easily. Learning requires grit and dedication. When you’re having difficulty, set a struggle timer to keep trying for at least 10 minutes, and push through. Similarly, come up with performance-based rules and conditions you must satisfy before allowing yourself to quit.
- 🍉 During your breaks, stay relaxed, give yourself small rewards, and take care of your physiology. Use the bathroom, take a shower, drink water, eat snacks, go for a walk, sleep, or get exercise. (Remember, exercise is the best nootropic!)
⬆↔🏀 Direct, Then Drill
Spend your time alternating between direct practice and drills. In the earlier phase of your learning progression, you’ll want to alternate as many times as possible. As you approach mastery, you’ll spend more of your time on drills.
A related technique is ⛓ prerequisite chaining: start by attacking the skill even when you don’t have any of the prerequisite knowledge. As you discover gaps in your knowledge, go back and fill them in by drilling the prerequisite components. This is painful, but it saves you a lot of time in the long run by avoiding learning things that do not serve your end goal.
Which part are you weakest at? Is it a fact (to be memorized), a concept (to be understood), or a drill (to be practiced)?
🔄 Get Feedback
Get as close to instant feedback as possible. There are three types of feedback, in order of increasing quality and value:
- Outcome feedback tells you whether you did well or not at the end, but without any real-time feedback as to what you did wrong or how to fix it. Usually, when you have no feedback at all, you can modify your practice to at least get outcome feedback.
- Informational feedback tells you what you did wrong (ideally in real-time), but not how to fix it.
- Corrective feedback tells you in real time what you did wrong and how to fix it. This is the best form of feedback, and it’s easiest to get this sort of feedback from an experienced 👨🏫 teacher or coach.
Be careful about trying to upgrade one form of feedback to another. There may not be enough information in your environment, so you may be misled by the noise. Generally, there is a low signal to noise ratio with feedback, so you need to actively filter out the noise and amplify the signal in your environment.
Adjust your environment so that you’re not able to predict whether you’ll succeed or fail. That way, the feedback you get provides you information you didn’t have before. Avoid situations that always make you feel good or bad about your performance.
🤔 Test Yourself
Facts, concepts, and procedures all require retrieval to be learned properly. Use these techniques to test your ability to retrieve knowledge:
- 📕 Cut off your access to hints with closed book practice. Force yourself to remember what you need without cheating and looking at the reference material.
- 💭 Use free recall: write down everything you can remember without any cues or hints. The Feynman technique is a good example of free recall.
- 📓 As you go through the reference material, take notes with a question book: write down questions related to the high-level concepts. At the end, you’ll have a set of questions you can quiz yourself with.
- 📇 Use flashcards to test your knowledge of information in question/answer pairs. This is a form of cued recall, and is generally only useful for real-world situations in which you will be presented with cues. Anki is a great app for flashcards, and it includes spaced repetition algorithms.
- 🏆 Come up with a self-generated challenge that will test your abilities for a particular part of a skill. For example, each time a tactic or technique is mentioned in some reference text, create a plan to demonstrate that technique in an actual example.
- ⏩ The forward-testing effect shows that testing yourself before even learning the material can help you learn by forcing you to try to figure it out on your own or by priming you to notice important concepts.
Based on the facts, concepts, and procedures you identified, how do you plan to test yourself? Write it down.
🗄 Retain What You Learn
You’ll also want to create a strategy that will help you remember the things you learn. Knowledge naturally decays, so you need to actively work to retain it. These techniques will also be useful for memorizing the facts you wrote down.
- 📅 Use spaced repetition to schedule your learning. Spacing your learning out over a longer period of time is much more effective for long-term retention than cramming.
- ✅ Turn the information to be learned into a step-by-step procedure. Procedures are stored differently in the brain, and they are much easier to remember.
- 🔂 Make the knowledge more durable by overlearning it. Keep practicing the skill even when you’re already at the point where you can perform perfectly. This will ingrain it deeply in your brain. Focus on overlearning the core parts of the skill.
- 🖼 Use mnemonics to remember information that is in a consistent and specific format. Mnemonics are very powerful tools, but the applications of them are narrow and they require a lot of up-front investment. Often, they are not worth the effort, but they can be useful when dealing with a vast quantity of information in the early phase of learning.
🧱 Build Intuition
To learn concepts, you’ll want to work to build your intuition. Use these techniques to build up your understanding, then use retrieval to solidify it.
- 📐 Prove things to understand them. Don’t just read and nod along; re-create the results for yourself.
- ❓ Question all assumptions. Don’t fool yourself… and you’re the easiest person to fool.
- ✨ Work to understand the connections between related pieces of information or steps.
- 🧶 Use a concrete example. It is helpful to use metaphors or analogies to understand the material. If you can’t come up with an example, then you don’t understand the concept well enough.
- 🗒 Use the Feynman technique to test your understanding: take out a sheet of paper and write down the concept at the top of the page. In the space below, write an explanation as if you were teaching it to another person. If you get stuck, that tells you there’s a gap in your knowledge that you need to fill in.
🧪 Experiment
Once you move past the beginner phase in your learning, there’s no one “right way” to learn. Use the scientific method to try out new techniques and unlearn stale and ineffective ones. You can experiment with learning resources, techniques, and style.
- 🆎 Compare an old technique with a new one using split testing. By using both techniques on the same subject, you can compare the outcome and see which one performs better.
- 🔳 Introduce new constraints. This will force you to leave behind old habits and develop new capabilities.
- 🪂 Explore the extremes. Most of the possibility space is in the extremes, so the best options are likely to be extreme in some way. Push out to the extreme in some aspect of the skill.
Conclude Your Project
🔬 Dissect the Project
At the end of your project, spend some time dissecting it.
- How did you measure up to the benchmarks?
- What went well?
- What didn’t go well?
- What would you do differently next time?
- Did you achieve your target performance level?
- How effective were your learning techniques?
- What are your current strengths and weaknesses with respect to this skill?
⭐ Choose to Maintain or Master
The knowledge you just gained will naturally decay over time. You have one final decision to make: maintain the skill, or master it?
- 🥇 To master the skill, identify where your bottlenecks are (ie. which components of the skill are weakest), and plan a new learning project!
- 🥈 To maintain the skill, try to use it in your daily routine. Without deliberate practice, you won’t improve, but by using the skill regularly you won’t lose it, either.
- 🥉 If you don’t work to master or maintain the skill, you will forget it. But don’t worry! It will be much faster to re-learn when you need to use it.
Congratulations! You have just added another skill to your skill stack— the combination of unrelated skills that gives you your unique advantage. Now… what will you learn next?