Ask HN: What are your best learning methods/hacks/tips?
What would be your learning methods? Do you have any tips/hacks etc that works for you? Lets assume you are learning on your own, from books/videos etc, and not learning from a teacher
What would be your learning methods? Do you have any tips/hacks etc that works for you? Lets assume you are learning on your own, from books/videos etc, and not learning from a teacher
In particular, I found that the following worked especially well for me:
* Emphasis on balance between focus and diffuse mode: taking a walk or exercising after a focused study session.
* Spaced repetition: Anki works wonders. Reviewing notes multiple times is also tremendous.
* Sleep: ignored the importance of this for so long, but it helps so much.
I made it through undergrad without these, but applying these and the other lessons from the course in my post-graduate classes felt like magic. The results (both in understanding gained and grades) were completely different.
For spaced repetition tools, besides Anki [2] there is also TinyCards [3].
Ultimately learning new things means building projects in them, but for rote memorization and when getting started spaced repetition is great. It works well because it is similar to how people learn naturally, the more you see something, the more you lock it into memory.
One of its authors also wrote a great essay about spaced repetition [2].
Anki is downloadable and TinyCards is web based and online. TinyCards has a community around it but Anki is probably more individual focused. Both are great tools and you will learn something everytime.
Another comparison highlights differences [1]
> They are both spaced repetition systems, but here are some key differences:
> - They have a different look and feel, so that is a subjective factor. Tinycards is more modern, while Anki is arguably starting to look dated.
> - Tinycards decks are limited to only 150 cards. This is a problem if you like big decks. Anki decks have no practical size limit.
> - Tinycards can connect directly to your Duolingo account and has shared decks (that the original owner still controls), but Anki has a lot of shared decks that instantly become "yours" (free to make changes) once you download them.
> - Anki has more overall functionality, so if you like to add pictures and audio, etc, then you have more control.
[1] https://languagelearning.stackexchange.com/questions/3309/ti...
Huge deal breaker for me. I have thousands of cards. If I study for any certification exam, I will have a minimum of a couple hundred cards.
When I'm learning a new subject, I try to make my study time as active as possible. For example, if I'm reading a very dense piece of philosophy, this means taking notes on each section and creating a study guide/outline of the whole paper.
I think specifically I would second guess myself for the syntax of the cards I was creating - and if there was another better way to do it. I always wanted to find almost like a guided walkthrough that would take me through the whole process or something and help me build the skills associated with it.
This kind of perfectionism has also been bothering me. ("I need to write the card perfectly, or else it's not even worth doing or even actively harmful.") But there's a couple of points worth remembering to change this belief:
1) If a card is bad, you will notice it when reviewing. It will be difficult to remember (i.e. you will fail the card often compared to other cards); it will be annoying to review (there's a general sense of "ugh" and/or confusion when you see the card); it will be unexpectedly time consuming to review, etc.
2) Bad cards can always be refactored. You can suspend the card (where the card is still in the database, but removed from the learning queue); reword; or split into multiple cards.
Michael Nielsen [0] gives an example of a card which asked for the syntax for creating a symbolic link in Linux. He always messed up the order of the filname/linkname, so he created an additional card that explicitly asked for the order of the filname/linkename in the ln-command.
3) The only way of learning how to make good cards is by just starting making cards, and then noticing which ones don't work.
When a card doesn't stick, it's useful to ask yourself what doesn't work and why. Is the back side surprising when you reveal it? If so, maybe rewrite the card to add more context to the front to make it clearer what you're asking for. Do you always miss one or two pieces of the answer? If so, maybe split the card into multiple cards, each of which asks for one part of the answer. (Or add an additional card to direct your attention specifically towards what you struggle with, ala Nielsen.) Etc.
4) There's diminishing returns on card improvement. Time spent on perfecting an already OK card is time taken away from creating new cards to remember new information. If your goal is to remember as much as possible in a given time, spending time on perfecting already existing cards is trade-off not always worth making. (The quote: "a poem's never finished, only abandoned" comes to mind to highlight this.)
in general the trap of "letting perfect be the enemy of good" is so easy to fall into
I used Anki for 7 years without these rules and figured some of it out on my own.
After I used Anki / supermemo to learn these rules, I can learn at a much higher rate with less reviews and higher recall.
Use both liberally and you will learn how to learn.
For something like an algorithms or math class, I would have the problem one side and a summary of how to do it on the other side. This meant I wouldn't focus on the answer itself but more the process. Definitions and terms are also easy, where I would have the term on one side and a summary on the other.
Sometimes I skipped the bite-size and would make cards like "Review Lecture N." This doesn't seem exactly like The Anki Way of breaking down into small parts, but it was good for keeping track of when I should be reading over my notes periodically.
It is very easy to ready as it targets tweens, but it covers the same topics as the course.
Then, when I actually learn the more complicated stuff, I don't ever think about the basic stuff (and I get that out of the way very early in the learning process). I think it frees up my brain to focus on the complexities of any domain a bit sooner than I would otherwise.
I'm not sure this method generalizes to other people, but it seems to work for me across various domains. I think the use of rote memorization is a bit underappreciated (given how useless it seems in high school or university), but I've continually found it useful in my professional life.
[Edit] It's also useful to identify what the "common action" are, and in general that's only from "learning by doing" and realizing what's important/what's not - then saving the important stuff to the "hot path" of processing.
For example, learning all of the HTTP status codes before you know anything about HTTP could seem like a waste of time.
However, when you are writing a server that makes api calls to a third-party service, when you receive a 400, if you know the codes by rote you won't have to research / reason why you are receiving that code.
I think "learning by doing" usually ends with more self-directed, problem solving learning. This type of learning can show your weaknesses and provide you with holes in your knowledge that you can use rote memorizing to fill.
So often your System 1 wins and your System 2 is never aware, that relegating System 1 to "impulse" is just hiding the problem from yourself. Training System 1 at least gives you a fighting chance to have accurate-enough first impressions/instincts.
Of course there are more-successful and less-successful ways of training System 1, but that's true of anything.
In an effort to overcome this, I now try to commit to a formal learning program with examinations and tests for things I want to learn. This gives me a definite body of knowledge to master and a criteria to judge my progress. I have used this successfully with learning the rudiments of Sanskrit. I enrolled in a correspondence course program and had online sessions with a Sanskrit tutor for some time.
Where such a program doesn't exist or isn't feasible, it still helps to stick to a definite text. For example, if you want to learn classical mechanics, it helps to stick to just one book rather than refer to books and videos from here and there and losing track of your learning program in the process.
Music, math, programming, writing, learning languages, painting, drawing, physics, finance, etc. Find good books and good teachers/videos/other instruction, and practice relentlessly.
Yes, but mindless practice doesn't help, isn't it? Is there a deliberate method to your practice? How do you keep track of your weak areas, and how do you specifically practice those weak areas?
If you spend 1000 hours doing mindless practice you won’t get as far as someone who spends 500 hours practicing deliberately but you are unlikely to do worse than the person who did 100 hours.
At least in martial arts, I have learnt the hard way that if you had practiced a particular form wrong, then it takes that much more time to undo the learning, especially if it is the basics.
Growing up, I asked so often for guidance for how to learn to write essays. I got told “just do it” and “just write the damned essay” and “just buckle down” so much I concluded that there wasn’t a way to learn a better writing process. So, I practiced writing via my having an emotional breakdown, procrastinating heavily and doing something at the last minute. As a 29-year-old, I’m trying to unlearn this and figure out how to write a technical blog post in a calm this-is-merely-work sort of way. Its really hard.
Picking a method/book/instructor that seems to be getting good reviews and getting at it is far more important than wasting tons of time jumping from method to method but never actually putting in the time practicing.
Do you want to get good at doing squats? Follow a program that makes the motion second nature by squatting multiple times a week and incrementally adding weight.
Muscle memory is really extremely useful for physical motions. Just be careful you are not cementing incorrect motions in your brain. This is why instructors, books, and videos can be very useful.
2. Avoid learning what you won't put in practice immediately after. This is also useful to cull effectively infinite space of what you may want to learn next.
3. Learn the basics. Do not worry about this being marketable skill or knowledge - it'll pay dividends later on. "Basics" is not quantum physics, it's whatever's layer below the layer you're comfortable with.
4. Keep using what you learned, even if it's a toy project. Don't worry about making it public or useful to others.
but when I do start to read the canon, everything makes so much more sense. pleased at having extracted some useful hints I go back to screwing everything up, but a little better this time..and repeat.
that means that i've wasted alot of time doing things the wrong way, but after that*, insight happens in a flash.
The Marines teach a concept know as BAMCIS (Bam-sys), which I still use loosely.
BAMCIS is an acronym: Begin planning, Arrange for reconnaissance, Make reconnaissance, Complete the plan, Issue the order, and Supervise.
This, in a nutshell, is how Marines plan and execute, and explains much of how they get stuff done, save lives, be successful with missions.
Supermemo [1].
SuperMemo is the king of spaced repetition software.
Anki uses the algorithm from an earlier version of SuperMemo - SM2. The current version of the algorithm used in SuperMemo is SM17.
The benchmark for the algorithm's performance is the repetition workload. I don't have the numbers close hand. But the point is that the repetition intervals in SuperMemo will increase much faster than in Anki, but you will have the same, if not better, retention rate.
Also, it has Incremental reading.
To be honest, I used Anki on and off for more than five years. SuperMemo scared me, with its ugly non-conventional interface. But in the end, I succumbed, and now for the first time, I actually do my repetitions every day for 4 months now.
This despite the fact that I have to boot into Windows from Mac OS every time I need it.
It helped me learn Python and a bunch of other less practical things.
Of course, spaced repetition is not all you need for better learning. Most of what you need to know is covered in the Coursera Learning How To Learn course.
Jim Kwik is also good.
I always found the Jerry Seinfeld method helpful - he would commit to writing material every single night, and mark his calendar with an X when he was done. Over time, he built up such a streak that it became almost second nature - he had come so far he did not want to break his streak, and break up that marvelous chain of 'X's on his calendar.
>An effortless way to improve your memory
>A surprisingly potent technique can boost your short and long-term recall – and it appears to help everyone from students to Alzheimer’s patients.
Link:
http://www.bbc.com/future/story/20180208-an-effortless-way-t...
I found it so compelling that I consciously follow this effortless method.
If I'm at a lecture, I take notes. If I'm reading a textbook (e.g., studying), I take notes. If I'm in a meeting, I take notes. And once I'm done taking notes, I transcribe those notes into more structured notes, since they were taken hastily, and I probably wouldn't be able to decode them later if I didn't do it right away.
Anyway, that's my process. Hope it helps.
Something you won't hear often is this tip: Try and action/gesture what you're trying to say before you say it. I have no explanation why this works so well when learning but it's a technique actors use when embodying a character.
Then the obvious tip is to practice with native speakers,
If you have something purely physical, you have * Mental rehearsal of the action (anki) * Execution of the action in practice. For this to be helpful you need feedback, you could use a coach or record yourself * performance - like in a sport.
Had to rewrite my response because I went to heavy on the language learning tips
This is what I've used to date
1. Grab all the textbooks I can find on Libgen on the topic.
2. Read tables of contents to get a high level view of the main components of the subject and the scope of what you want to learn.
3. Start reading (I usually skip introductions too) from the textbook that looks most appealing/authoritative (cross check on Amazon, or curricula from well known universities, but sometimes even the design of the textbook can make it more motivating/easy to consume, e.g. I hate most "modern" textbooks that have 25 random boxes of text per page — very confusing reading experience).
4. Keep going until you get confused/tired.
5. If still motivated/have enough energy, see how other books cover the same topic to see if it's clearer.
6. If you're too tired to read, try Youtube videos covering the topic.
7. Sleep.
8. Repeat, start over from where you feel you have good command of the topic.
I learnt 100x more about running a startup after starting one, and initially doing a bad job, than by reading thousands of blog posts.
I’ve found in that sort of situation, it is tremendously useful to find a good book or other form of guidance so that I have a mental framework to organize information and a way to imagine myself succeeding. You know the OODA loop? I think theoretical knowledge really helps with the ‘Orient’ step.
But otherwise, these are lessons. If you don't focus, and so get nothing done, you'll learn to focus, by saying no to some things, even if everyone tells you they're critical.
Conversely, if you focus too much on one thing, do it excellently, and fail at other things, which I've done, I've learnt to do things to the extent needed, not more, as opposed to building a car with the world's best engine but no steering wheel.
This has just been my experience. I respect that it may not work for you.
If you're taking an exam, learn it by taking practice exams and looking up what you get wrong.
If you're building an application, build it, mess up, then rebuild it.
If you're learning a language, memorize the basic nouns and verbs, then jump in and start writing and speaking in that language. Look up what you don't know, then jump back in and keep on keeping on.
Use mental maps and word associations for memorizing.
Reading while walking helps me a lot surprisingly.
Learn stuff right before you sleep and you're brain will process the information while you sleep.
Exercise to keep your mind right. It's another way to meditate, but you also get a healthy body.
Nothing exposes the fact that you don’t know a damned thing like attempting past or specimen exam papers, or answering the questions in a textbook.
Why is my brain so efficient at erasing things I went through so much trouble at one point, and for a specific purpose, to memorise. It seems to decide for itself that this piece of information is irrelevant at some point and just wipes it away. Like a overly pro-active personal assistant.
But based on the current models of memory, you seem to be correct, your brain has a couple of criteria that it uses to determine whether or not it should retain memories. Frequency (spacing) is one, novelty could be another.
Even memories learned through mnemonics can ultimately be forgotten if not reviewed.
And I think the brain keeps itself plastic by optimizing "unnecessary" information out. Unfortunately, without help we can't choose which information is removed.
However, relearning something takes very little time compared to learning it from scratch, so unless you need to relearn things very often it might not even be worth worrying about much.
A great mentor of mine told me that if you want people to code quickly and without so much bureaucracy, convince them they are just making V1, a toy implementation, a prototype, etc. As opposed to The Solution. I think the same thing applies with picking up new skills. Approach it as fun and it will be fun.
I taught myself morse code by actually using morse code on ham radio, not by drilling myself silly with code practice tools (which is imperative to learn the alphabet, but after that it's less practical).
There's no number of videos or essays or books etc that will make you magically get better. You must take what you discover from those sources and put muscle (and/or brainpower) into the activity yourself.
And I try to learn things by building projects I care about ideally. (https://trello.com/b/alB1ryRP).
Keep a diary. A physical diary. Specifically for this thing you’re learning, it’s a second diary if you’re already keeping one. Maybe in a nice notebook with a nice pen clipped to it, maybe in a cheap dollar store notebook, whatever. Every day, write down what you did with regards to this thing you’re learning - did you read/watch new stuff, did you actually try practicing this new skill you’re learning? If you didn’t do anything, then write down that you did nothing. This will help push you to actually try using these developing skills on a regular basis.
Recently I've been taking to heart the idea that 'if something is worth doing, it's worth doing half-assed', which basically means picking up a new body of knowledge during my downtime and letting myself slowly progress. I have a lot more fun when I'm not pressuring myself for instant results and I've seen moderate gains for the things I've been picking up (going to the gym, learning Japanese).
Taking things more slowly also helps my brain digest ideas. Sometimes I'll go faster when I feel like it's a good day; it all depends on how my brain feels. Sometimes I think people forget the brain is a muscle; it also needs rest to recover from strenuous use and to make tangible gains.
As for the actual learning methodology, I would use the one I always use: study, use/experiment, rest. I call that one learning block, of which I can do one to three in a day. A study phase of tops an hour focused on few concepts followed by a use/experimentation phase, and then a rest phase of twenty minutes to an hour (I prefer walking, no earphones, just the quiet--I don't want any new inputs during this phase).
The resting phase is critical for me, you can also call it a timeout, and it's something I do many times in the course of a week. It's not actually resting, it's a period of time I set aside where I "disconnect" and block all inputs. I don't listen to music or any other audio, I won't allow anything to disturb me, the phone's on silent and won't be touched or looked at, no screens at all. During this time my brain is processing new information and relating it to old--making connections. My only job is to think about nothing in particular while I walk or just sit/lay on the couch. This is when most ideas, insights and deeper understanding come to me. When I'm done, I jot down whatever manifested.
To maintain knowledge, you must actively engage. And why would you not? I would not learn a new language as a project or challenge and then not use it, I would use it for the rest of my life. By learning a new language, you can open new doors, alter your perspective, and gain understanding and empathy for people you previously knew little about.
2 - Spaced Repetition - people have covered already.
3 - Active Recall - https://en.wikipedia.org/wiki/Active_recall
4 - Active Learning - https://en.wikipedia.org/wiki/Active_learning
Edit: Paragraph alignment
For any given activity, there is someone better than you at it and you can save yourself a lot of pain by learning through them.
I optimize a lot around avoiding decision fatigue.
Take a class on the subject taught by an expert. In person is better than a MOOC. A few words of advice from an expert can be worth YEARS of trying and failing. Also, having a group of people to learn with can be helpful in motivating you. Finally, you avoid decision fatigue because you have someone telling you what to do and learn, and when to do and learn it.
Read a bunch of books on the subject. From history to technical application. Books are not a perfect way to improve, but they are an easy way to dive in and get your hands dirty. Also, it is one less decision to make. Tired that day? Read the book.
With language learning though I'd try to get lessons on italki to speak with native speakers of that language. Grammar drills. Anki/Memrise for spaced repitition.
I realized this by observing a good friend of mine. Whenever he wanted to learn something, he sought out an expert in that field and asked them for some of their time. Sometimes it was a golf lesson he paid for, sometimes it was a business leader he admired and just reached out to for some advice.
I immediately saw that I should strive to learn more collaboratively, through and with others.
I apply this mostly when learning programming languages or frameworks or tools. It’s amazing how much small details you can pick up when reading an in-depth book on the topic cover to cover. Even for things you’ve been using for years.
(0) https://hackernewsbooks.com/book/deep-work-rules-for-focused...
They go into detail on how to learn a language and many myths regarding the topic.
Try things, fail, learn why you failed, do it the right way, succeed, repeat.
If you enjoy the learning process, there is a much higher likelihood that you'll stick with it in the long-term, and a much higher likelihood that you'll dedicate a lot of time to the learning process.
Most effective techniques:
1. Simulate you are being evaluated and take exams regularly. Your brain connections seem to strengthen every time you try to fetch information you already know, and nothing better to force that retrieving than a quiz. What you can do is create yourself a small exam with what you've learned today and take the quiz tomorrow. When you are creating the exam you'll think the questions are so easy (you've just learned them) but at the other day you'll be surprised by how many you don't remember/get wrong.
2. Distributed practice: Say you are willing to invest 800 hours learning something new. Would it be better to do it obsesively and cram them in in 3 months? Or to space them out over the course of a year? Well the more spaced the practice, the longer the topic will be remembered. Of course you need to put a lot of continuous hours at the beginning when you know nothing but after a time it's quite important to revisit the topic from time to time. Even revisiting learned topics once a year can make them stick long term in your brain.
3. Do not apply rule #1 by discrete topics, try to mix them up. There was an experiment where students were taught how to calculate the volume of four different solids. In one group they were instructed on how to calculate the volume of one solid, then they made exercises about that type of solid. After that they were explained how to calculate the volume of the second, made exercises about it and so on. In the other group they were given the instructions on how to calculate all four groups and at the end given exercises asking about all 4 methods mixed. They not only had to apply the formula, they had to choose which formula to apply. The results? The first group got 80% right right after they were instructed, whereas the 2nd got 60% right. But after one week? The first group got 20% right while the 2nd maintained the 60%
4. The why technique. Ask why and why like a little child in a chain until you get to foundational concepts / axioms. This way you'll get to the "first principles" or fundamental concepts of whatever you are studying. Building the "tree" before the "leaves" as Elon Musk says.
Anecdata: I learned german from 0 to 97% score in the B1 official test in ~7 months, while at the same coursing CS in the university and living very far from any german-speaking country. I tried to apply all the techniques presented here, for example I made dozens of preparatory test for every level I was... I tried to be doing something related to german all the time (chilling time was watching german movies, listening to german radio or playing german musik at the background hehe) ... I tried to mix up everything I could, for example anki-style cards are awesome, but you'd be very bored if you had to repeat them for hours every day. I also went out and tried to meet as much germans/austrians/swiss living in my city as possible (there are language events, tandem partner programs and etc in all big cities). But I think the most important factor to actually put the hours is motivation, I would earn a 1 year scholarship in Germany if I did learn german in a short time.
I tried to learn french a couple of years ago without a clear goal and was very unsuccessful.
[1] https://www.researchgate.net/publication/233088142_The_cogni...
https://www.learning-styles-online.com/overview/
Motivation and inspiration play a huge role. So, Why are you learning something? If there is a profound motivation to learn something, with deep meaning, then learning becomes exponentially easier. Think of the neurochemistry involved when comparing an activity which intrinsically always produces joy, vs. trudging through an activity which only causes suffering.
https://www.amazon.com/dp/B004P1JDJO/ref=dp-kindle-redirect?...
So then a hack is convincing yourself of profound meaning within the thing you're attempting to learn.
https://www.amazon.com/dp/B000W94FE6/ref=dp-kindle-redirect?...
Study Flow. Someone posted the idea that we want to avoid autopilot. I agree one must really focus to be mindful of what is contributing or conflicting with their learning. But I somewhat disagree, as the experience of Flow, when the challenge is great, is actually ideal, and in my experience is akin to a form of conscious autopilot. Once a skill is mastered, and flow is harnessed while competing at a high level, then one can recognize optimal experience as optimal performance, and thus the goal of learning and mastering a skill. I know English, and I don't have to think about each word to generate a sentence. I can think about the central concept and let the words come on their own. As a software developer I think way less about syntax and language nuances, and more about the problem I'm trying to solve, then the solution arrives on its own. Yes raise the bar, and yes pay attention to difficulties you have, overcome the gaps in knowledge and skill, then experience flow, enjoy it, iterate on that. I think a key is recognizing how to enjoy it, so you keep coming back to learn more.
And then speaking of concepts, think of Jungian Archetypes or Mythological Abstractions. Jung believed the realm of the unconscious was just as real as the computer you're interacting with. Out of this realm arises abstract concepts which apply to all of human psychology, across humanity (cue OO programming, and abstraction layers, for the programmers in the room). So then, discrete concepts can fit into their parent abstraction. Arts like Jiu Jitsu, reflections on human nature, leadership in business and studies of military strategy, can overlap with one another (the Jocko Podcast is a great illustration of this). So then once you begin to master a skill, you can take abstract concepts and apply them to something new, only expanding on what you already know about yourself, rather than what you might consider to be completely foreign.
Of course, all the suggestions on this page are certainly helpful. When it comes to learning skills, I have a tendency to look a bit deeper in order to learn quickly. I believe there is a mindset where 100 hours in a new skill, leveraging 10000 hours in a previous skill, will be far superior to the 500 or 1000 hours of deliberate learning when the focus of learning is too narrow and the overlap isn't noticed.
It's like sports or strength training. Steve Nash grew up playing soccer first and didn't start playing basketball until middle school. Michel Jordan wasn't great at baseball, but he still played professionally. Anyone remember Bo Jackson? "Bo Knows" baseball and football.
Just thoughts, hopefully stimulating and helpful.
The trick to overcome that almost physical reaction, was to couple it with something i loved. Which was programming games. So sinus and cosinus was needed? I would add grenades using sinewaves for bouncing, scaled by a time factor. It was not always usefull or meaningfull work. But i kept the problems in my head, until i understood and could solve them with the new tools i got.
So i guess that is my advice, take something you love and glue what you want to learn to it. Switch frequently so that you have successes and not just non stop starting frustration. Apply in large doses.
For other things, reading accessible research papers, reference books and searching for unknown concepts when I encounter them, sometimes ask people about a thing or two.