proper C, get Zed shaw's book python the hard way it has a good deal on proper C coding.
Ask HN: How do you learn complex, dense technical information?
51–60 of 181 posts
Re: Ask HN: How do you learn complex, dense technical information?
#52Earlier 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?
> 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?
#53I 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…
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?
#54Re: Ask HN: How do you learn complex, dense technical information?
#55This 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?
#56He'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…
Re: Ask HN: How do you learn complex, dense technical information?
#58Earlier 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.
Re: Ask HN: How do you learn complex, dense technical information?
#59The same way you get to Carnegie Hall.
Re: Ask HN: How do you learn complex, dense technical information?
#60Make 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...