Ultralearning Ch. 3 - How to Become an Ultralearner


The author decided to run an experiment and gathered about a dozen people who were interested in giving ultra learning a shot. The one example he writes about out of the dozen is Tristan de Montebello.

Becoming an Ultra Learner

This guy, de Montebello, was a musician. But he had no idea which skill he would like to learn. With his musical background, learning a different instrument seemed like a safe choice. Scott encouraged him to try something farther outside his comfort zone. After throwing ideas around, he decided on public speaking. He argued that it’s a useful skill, so it would be worth getting better at even if nothing noteworthy came from the effort. It’s the kind of skill that assists with other skills: confidence, storytelling, writing, creativity, interviewing skills, selling skills. It touches on so many different things. With that in mind, he set to work.

First steps of a fledgling ultra learner

De Montebello had picked his topic, but he wasn’t sure exactly how he should learn it. He decided to attend a meeting of Toastmasters International, the organization for learning public speaking. Luckily, he found an experienced coach there that decided to help him through his project. Also luckily, he came just in time to apply to compete in the world championship of public speaking, an annual speaking competition. He cranked out the mandatory qualifying speeches for the application just in time.

He practiced obsessively, sometimes speaking twice in one day. He recorded a video of every speech and analyzed it obsessively for flaws. He asked for feedback every time he gave a speech, and he got plenty of it. His coach pushed him far outside of his comfort zone. He took improv classes and got feedback from other sources such as a Hollywood director, and a friend with a background in theater. He even gave a speech at a middle school, knowing that 7th graders would give the most ruthless feedback of all. Above all, his coach pushed him relentlessly. Diverse advice and voluminous practice would soak those lessons in deeply, allowing de Montebello to quickly surpass his early awkwardness on the stage.

He won all of the competitions leading up to the finals. Less than 7 months after he first tried his hand at public speaking, he was going to compete in the world championships. He was among the fastest competitors in history to make it that far. He made it into the top 10.

I think this is a good story to learn from. He sort of started from scratch, although I think his appearance and potential for public speaking definitely helped. Relentless, obsessive, high volume practice and analysis combined with strong, frequent, diverse, consistent feedback really helped him. Makes me think how can I apply this knowledge to my own journey? There’s more to it, as the author will describe 9 principles of ultra learning soon, but so far, what could I potentially do with this information?

I can become obsessive with the OSSU courses that I’m taking. Relentlessly trying to understand every important detail/concept I come across. High volume: I can take more courses at once, or just do all the exercises given from the courses. Dedicate more time each day to OSSU and programming in general, because this is what I want to get really good at. Now, the feedback part might be a little harder to get. I think looking at the solutions after attempting/completing a problem and comparing it with mine can be a form of feedback. I can also ask people taking the course with me to review my code. Perhaps I can even have AI give it a review, but I’m against using AI at this point. Maybe I’ll experiment with this though, not sure yet.

A coach. This guy had a coach. And a very experienced one at that. I could use a coach. In a way, the instructors of the courses ARE coaches. They are experienced, knowledgeable sources. However, the problem is I’m not able to get direct feedback from them. That’s a downside of massive open online courses. You don’t get that 1 on 1 relationship. It’s okay though, I think the course content should be enough and usually there is someone willing to help online whenever there are questions.

For interviews, mock interviews are a great way to practice and get feedback. If I decide I want to get a job, which won’t be anytime soon, then I could do mock interviews with an interview coach. For OSSU, I suppose the coaches could also be people on the discord who went through the course.

From Semifinalist to Career Change

This whole experience led de Montebello to a career change. People started asking him for help on their own speeches. The demand was high. This turned into a business for him called UltraSpeaking. The author claims that what differentiated de Montebello from others in the experiment was his obsessive work ethic. His goal wasn’t to reach some predetermined extreme but to see how far he could go. Even if you don’t get lucky enough to go on a path that will take you far, you will still learn something new and learn a skill fairly well.

Principles of Becoming an Ultra Learner

De Montebello’s story shows that it’s possible to decide to become an ultra learner. But ultra learning isn’t a cookie-cutter method. Every project is unique, and so are the methods needed to master it. The uniqueness of ultra learning projects is one quality they all relate to. What makes ultra learning interesting is also what makes it hard to boil down into step-by-step formulas.

The author claims it is a difficult challenge to teach this, but he is going to try to sidestep it by focusing on principles first. Principles allow you to solve problems, even those you may have never encountered before, in a way that a recipe or mechanical procedure cannot. Principles make sense of the world, and even if they don’t always articulate exactly how you should solve a particular challenge, they can provide immense guidance. In the author’s view, ultra learning worlds best when you see it through a simple set of principles, rather than trying to copy and paste exact steps or protocols.

The principles of ultra learning are going to be the focus of the second part of this book. In each chapter, a new principles will be introduced, plus some evidence to back it up both from ultra learning examples and from scientific research. Finally, the author will share possible ways that the principle can manifest itself as specific tactics. These tactics are only a small example. But they should provide a starting point for you to think creatively about your own ultra learning challenges.

There are 9 universal principles that underlie the ultra-learning projects described so far. Each embodies a particular aspect of successful learning, and the author will describe how ultra learners maximize the effectiveness of the principle through the choices they make in their projects.

Here are the principles:

  1. Metalearning: First Draw a Map. Start by learning how to learn the subject or skill you want to tackle. Discover how to do good research and how to draw on your past competencies to learn new skills more easily.
  2. Focus: Sharpen Your Knife. Cultivate the ability to concentrate. Carve out chunks of time when you can focus on learning, and make it easy to just do it.
  3. Directness: Go Straight Ahead. Learn by doing the thing you want to become good at. Don’t trade it off for other tasks, just because those are more convenient or comfortable.
  4. Drill: Attack Your Weakest Point. Be ruthless in improving your weakest points. Break down complex skills into small parts; then master those parts and build them back together again.
  5. Retrieval: Test to Learn. Testing isn’t simply a way of assessing knowledge but a way of creating it. Test yourself before you feel confident, and push yourself to actively recall information rather than passively review it.
  6. Feedback: Don’t Dodge the Punches. Feedback is harsh and uncomfortable. Know how to use it without letting your ego get in the way. Extract the signal from the noise, so you know what to pay attention to and what to ignore.
  7. Retention: Don’t Fill a Leaky Bucket. Understand what you forget and why. Learn to remember things not just for now but forever.
  8. Intuition: Dig Deep Before Building Up. Develop your intuition through play and exploration of concepts and skills. Understand how understanding works, and don’t recourse to cheap tricks of memorization to avoid deeply knowing things.
  9. Experimentation: Explore Outside Your Comfort Zone. All of these principles are only starting points. True mastery comes not just from following the path trodden by others but from exploring possibilities they haven’t yet imagined.

Here are my some of my thoughts about each of these principles, with respect to my current situation.

  1. Metalearning. The skill I want to tackle is programming. I have some knowledge about how to learn this. The map is OSSU curriculum along with teachyourselfcs. Building understanding, building the right mental models, and actually coding up programs are some of the ways to learn. Reading books and taking online courses with focus will help me acquire this. I will mainly be taking OSSU courses. These courses have the knowledge and opportunities to exercise that knowledge, which will help me acquire the general programming skills. I already have decent programming skills, but I am working now to refine and improve them. Apart from OSSU, I came up with a few ideas that I want to work on. One of them is a desktop application, which I will probably use electronjs to implement. Now, the OSSU courses don’t directly teach this. I think the way to go about this is to start by doing a hello world application using electron, then draw out how the UI would look like on a notebook, and list all the functionalities/features. Then, I would break it apart into pieces, and google around for how to do each component and implement it, essentially learning as I build. This is also called learning by doing, which is effective. So why even bother with OSSU? Sometimes, you might need a baseline level of knowledge before you can build a substantial application. I believe I already have a baseline level of knowledge to implement my idea. But OSSU will teach me mental models and knowledge that can potentially be useful while I’m going through the building process. For example, the systematic design method from SPD. I can use this process to implement each function I come up with for the application. Another thing is functional programming concepts such as using filter/map. This may come up in javascript applications, and being exposed to it in OSSU will make it easier to grasp. However, this is one of those things that if I didn’t learn it in OSSU, then I could learn it along the way while building the app. However, it’s less likely that I learn the systematic design process when building the app. Another thing OSSU will help me with is using tools like the ones taught in MIT Missing Semester course. These tools might be used while building the desktop app that I want to build. Mainly looking at MIT Missing Semester and Full Stack Open to help me build this app. For most other courses, you never know when you might use that knowledge while building software. For example, maybe a concept from Programming Languages part A/B/C will be used while building but if you hadn’t taken the course, you would have a hard time identifying when to use it if needed. Learning this knowledge will open up possibilities, but no guarantees. I can lean on my past competencies to build this desktop app and I think I will be fine. But I think refreshing my knowledge with OSSU will make me more adaptable, insightful, and a stronger programmer.
  2. Focus. I have lots of free time, and a quiet environment where I can just sit down and focus. No problem for me here, except for distractions of course, but I tend to be able to focus for chunks of 60-90 min without distractions. Taking breaks is super important too though. That is, periods of Un-Focus. This is when knowledge marinates and settles in. I take 10-20 min breaks after 60-90 min focus sessions.
  3. Directness. Yes, I get straight to learning and going through the course, working on the problem sets right away.
  4. Drill. I do not yet know my true weak points. I hope that I can expose them as I continue. But if I do come across a weakness, I will make it my main focus and work on it diligently until it is no longer a weakness. A good example of this is if you’re doing calculus and realize you’re weak at algebra or trigonometry, you can take a step back, focus on algebra/trig, and then come back to calculus. Actually, I did identify some rustiness when I took Intro to CS using Python course. For one of the problem sets, I didn’t implement it in the best way until I decided to use a process for problem solving step by step. That gave me feedback that I might not come up with the best possible solution on the first try. Even though it worked, there were some minor details that were a little off. And so using the 7 step problem solving technique helped to iron out the details.
  5. Retrieval: I try to do this constantly. The courses’ quizzes and exams are good ways to practice retrieval. But sometimes when I’m on my own, I quiz myself on what I’ve been learning recently. Writing programs is a great way to do retrieval because you are retrieving what you learned and applying it to solve the problem at hand. Same thing for building projects in general, you are retrieving the right information you need to build, which solidifies the concepts into your brain.
  6. Feedback. Getting feedback by comparing solutions, and some code reviews. If I open source the desktop application and post it on reddit, I can get feedback there too. Can also get feedback on the OSSU Discord.
  7. Retention. This one I will need to learn more from later in the book. I don’t truly understand why I forget things. My theory is that the brain is intelligent enough to drop knowledge that it doesn’t think is most useful right now or in the future. I trust that if the information is needed in the future, my brain will figure out how to retrieve it, whether that’s through my stored knowledge or through research online or through a consultant. How do I learn to remember things forever? I think with enough programming practice some things become second nature and the knowledge will stick. For programming, I don’t think it is wise to memorize syntax using spaced repetition. Maybe some things it could be useful, perhaps networking concepts? I don’t know yet when I would use spaced repetition for programming concepts. Maybe later I’ll build some wisdom and intuition for when to do this or when not to do this.
  8. Intuition. Yes, I believe by going through the courses, I am naturally building intuition as I learn. I try to understand the deepest why’s, and try to identify when not to go super deep. In programming and CS, no need to know every single detail about every single thing. That’s why abstraction exists. But I want to learn enough about things to where it leads to more skill, insight, and better performance.
  9. Experimentation. I think building the desktop application is a way for me to experiment. I’m excited to get to that point ! I just want to take most if not all of the fundamental courses from OSSU before I start on it. I think about it though, like how I would implement, and as I learn through OSSU, I have this idea in mind to see if I can apply my learnings there too.

The author organized these principles based on his observations of ultra learning projects as well as his own personal experience, referencing, where he could, the vast cognitive science literature. He started with the ultra learnings themselves. If one person did something in a certain way, that might be an interesting example, but it might also be an idiosyncrasy of that person. If several people or, better yet, every ultra learner he encountered, did a certain thing in a certain way, it was much stronger evidence that he had stumbled upon a general principle. He then checked those principles against the scientific literature.

Beyond principles and tactics is a bigger picture idea. It’s one of taking responsibility for your own learning: deciding what you want to learn, how you want to learn it, and crafting your own plan to learn what you need to. You’re the one in charge, and you’re the one who’s ultimately responsible for the results you generate. If you approach ultra learning in that spirit, you should take these principles as flexible guidelines, not as rigid rules. You need to try things out for yourself, think hard about the nature of the learning challenges you face, and test solutions to overcome them.

I think these principles sound really good. Like he said, I’m not treating them as rigid rules but as potentially useful guidelines that I follow when going through my ultra learning projects. I am thinking about when to use one or not use one. Maybe there’s a situation where you can get by without feedback. Maybe experimenting is NOT the way to go for a particular ultra learning project. It depends on the actual ultra learning project, so I’m keeping this flexibility in mind.