Live data from Hacker News

Ask HN: How do you learn complex, dense technical information?

news.ycombinator.com

51–60 of 181 posts

Re: Ask HN: How do you learn complex, dense technical information?

#51

proper C, get Zed shaw's book python the hard way it has a good deal on proper C coding.

what? zed has an entire series 'learn c the hard way', ignore the python stuff. it'd teach you modern c, but even going completely through that would leave some gaps of whats used in kernel code

Re: Ask HN: How do you learn complex, dense technical information?

#52
post #24

Earlier quoted context omitted.

Personally, I am a big anti-fan of the Spaced Repetition. IMHO it is a wonderful solution to a wrong problem (i.e. memorizing random things). Sure, there are use cases: learning words in a language one is not exposed to on a daily basis or cramming for a medical school exam. When one actively uses something, there is a natural spaced repetition of the things that matter. With the frequencies as these things are used…

Do you have any suggestions on alternative methods, personal or otherwise?

Their suggestion is in this sentence:

> When one actively uses something, there is a natural spaced repetition of the things that matter.

So if you're trying to learn react, don't try to memorize the API. Just use react and you'll naturally have spaced repetition of the important bits. The unimportant bits that are rarely used you'll have to google when you occasionally need them.

Re: Ask HN: How do you learn complex, dense technical information?

#53

I am fairly sure this is not the optimal way, but I've been learning complex information/structures in passes. For example: - 1st pass - I consume the materials as well as possible, and apply my knowledge. Typically, I have to look things up, some things are unclear, I can't remember much. Applying the knowledge is quite difficult. That's ok. - 2nd pass - I return to the materials, re-read much less thoroughly. I rea…

For me, it takes multiple passes too, but their quality varies significantly depending on how familiar I'm with the subject. If the subject is challenging and truly new to me, my approach is more or less like this:

On the first pass, try to understand as much as possible, but don't push too hard if I hit a road block. It's OK to not fully understand or be hazy on key details after the first pass.

Then take a break, and ideally work on something else, sometimes for a for a day or two, until I feel ready to take another pass. Also, go for walks or watch a movie or do something else that takes my mind off the subject. Try to explain things to myself, to get a sense of which things I don't really understand.

On each subsequent pass, spend time only on those things I don't really understand -- until my little brain gets tired or I hit another road block.

Then take another break, and ideally work on something else, until I feel ready to tackle again. Again, go for walks or watch a movie or do something else that takes my mind off the subject Try to explain things to myself, to get a sense of which things I don't really understand.

Keep doing passes like this this until I can explain everything to myself because I fully understand it.

Throughout, I look for and rely on informal explanations, friendly tutorials, video lectures, and other auxiliary materials that can be readily found on the Web. Also, try to replicate experiments, do exercises, and/or write code if and when applicable.

My approach is best described as "long-term persistence."

Re: Ask HN: How do you learn complex, dense technical information?

#55
> I've been considering skimming through the whole things to get kind of a big picture of what the thing is and where I'm going and then going back a second time to catch then the details and experiment.

This is what they recommend in "How to Read a Book". First one is called "inspectional reading" and can be anything from a fifteen minute pre-reading to decide if it's the correct book to read, to a read-through without stopping to look things up, but make notes (especially of questions).

Second one is called analytical reading, and is much more focused on asking oneself questions about the book and how it covers it's topic. Very active reading.

I've often found it is helpful to go in the order they recommend, as you can often get all you need out of a book with an inspectional superficial reading. Sometimes you can eliminate a book via the pre-reading, but the ones that are valuable enough to justify an analytical reading are well worth it. In particular, I class books with questions or exercises very highly, as I retain much more information when I have to work through problems.

Re: Ask HN: How do you learn complex, dense technical information?

#56
This guy has tons of great content like this: https://www.youtube.com/watch?v=Cky0O-hANDI

He's currently a Junior Doctor in the UK and is great at consuming lots of complex content and describing how he does it. Some clickbaity videos in there but most of it is fantastic.

Re: Ask HN: How do you learn complex, dense technical information?

#57

> I've been considering skimming through the whole things to get kind of a big picture of what the thing is and where I'm going and then going back a second time to catch then the details and experiment. This is what they recommend in "How to Read a Book". First one is called "inspectional reading" and can be anything from a fifteen minute pre-reading to decide if it's the correct book to read, to a read-through with…

I found that book quite superficial and superfluous. Content of few pages stretched out to a book.

Re: Ask HN: How do you learn complex, dense technical information?

#58

Earlier quoted context omitted.

Do you have any suggestions on alternative methods, personal or otherwise?

Their suggestion is in this sentence: > When one actively uses something, there is a natural spaced repetition of the things that matter. So if you're trying to learn react, don't try to memorize the API. Just use react and you'll naturally have spaced repetition of the important bits. The unimportant bits that are rarely used you'll have to google when you occasionally need them.

I agree, but with something like react, I may use SRS to memorize the order of the lifecycle methods, etc.

Re: Ask HN: How do you learn complex, dense technical information?

#60
Similar to what others have said, do a quick pass once to get a sense of what the context/main concepts are. pass 2) read the headlines of each section. pass 3) read the bold words of each section and make note of them. pass 4) read the first and last sentence of each paragraph in the chapter. pass 5) read the whole chapter as you normally would. The increased/repeated exposure helps you to contextualize/relieves anxiety associated with unknown terminology/concepts.

Make notes and use "chunking" to group similar ideas into groups and build up from those. It's easier to learn a bunch of small pieces and combine them, than it is to attack an entire subject all at once.

Use multiple sources and YouTube extensively (lectures/enthusiasts explaining difficult concepts). Sometimes a slight tweak to how a topic is presented, along with the context from past passes in other sources is enough to improve understanding.

Work through problem sets and free-recall to avoid cognitive biases of thinking you know some material better than you actually do.

Spaced repetition systems like Anki.

Experiment with all of these (and other approaches) and be objective about which work best for you.

Some helpful resources I've found over the years are:

https://en.wikipedia.org/wiki/How_to_Read_a_Book

https://www.coursera.org/learn/learning-how-to-learn

https://www.khanacademy.org/science/health-and-medicine/exec...

Post reply on HN