Readit News logoReadit News
Posted by u/dondraper36 4 years ago
Ask HN: Do you also feel you retain nothing after reading a technical book?
Lately, I have been trying to follow the habit of reading a lot, be it books, articles or blog posts on the subjects I would like to improve myself in.

That said, the more I read, the more I get this awful feeling of not memorizing anything and creating a mess in my head.

I try to use some simple tricks like explaining a concept to another person or even to myself, but that doesn't seem to help a lot.

What are your tricks and methods to maximize the mental output of technical literature?

jeffwass · 4 years ago
What I learned from my time in grad school (physics) is that at least for the hard sciences, reading is not enough, you must DO.

Unfortunately this isn’t easy. It takes physical effort and will power to resist just reading over the words and feeling you’ve internalised something vs actually forcibly mentally thinking through the steps.

If the subject is something like math or physics, do some related ‘homework’ problems.

If it’s programming, actually implement something in that language or framework.

If it’s foreign language, try putting together useful sentences with the words and language constructs in question instead of just racking up points in Duolingo. Better yet talk to a friend in this language.

If it’s philosophy or history, well then it’s less clear. In that case your idea above may be the best you can do, either explaining to someone or even pretending you’re explaining to an imaginary newbie.

This is just my two cents but what I found works for me over the past few years. Personally I don’t understand how people here on HN claim they can learn a math topic (eg quaternions) just by watching a YouTube video, or understand functional programming just by reading thru SICP but not doing a single exercise. Maybe they can, but in my case I need to work through some actual pencil-on-paper or hands-to-keyboard examples myself to really grok the subject.

simonblack · 4 years ago
What I learned from my time in grad school (physics) is that at least for the hard sciences, reading is not enough, you must DO.

I came to say that also. I find that just reading a technical book is the fastest way to get drowsy, while retaining nothing (or so little, it's a negligible amount).

I find that to learn anything I must have a project. Then, when I inevitably strike a roadblock, I refer to that technical book for the answer to my lack of knowledge so that I can move along with my project. If I subsequently forget that knowledge, I know that I did have an answer previously, and that I found that answer in a particular place.

Also, I find myself buying fewer and fewer technical books these days. Once upon a time, the only way of obtaining knowledge was via technical books. I used to buy dozens every year. Currently it's easier and faster (and less expensive!) to use Google or similar websites.

dondraper36 · 4 years ago
I have a master's degree in applied mathematics so it goes without saying practice is far more important than just reading.

That said, for better or worse, software engineering is not as strict and formal as mathematics. There are a lot of opinions backed by somebody else's experience or, just, reputation (say, books like Clean Code or Clean Architecture).

Recently, I have been reading mostly not about programming languages or algorithms. It's easier to understand these by practicing, writing code yourself, etc.

When it comes to more abstract subjects, however, it's more challenging. For example, clean architecture, domain-driven design, different solution approaches in distributed systems.

It's not that one has to memorize, but rather internalize the principles. It doesn't help that there is plenty of opinionated advice on the Internet with mutually exclusive approaches and recommendations.

nivertech · 4 years ago
I recommend this course [1], it's 4 weeks long, but I did it in 3 days and got 97 [2].

It was also discussed on HN in the past [3].

--

[1] Learning How to Learn: Powerful mental tools to help you master tough subjects

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

[2] https://twitter.com/nivertech/status/1441657387325145096

[3] https://news.ycombinator.com/item?id=15092707

xdfgh1112 · 4 years ago
I take notes when I read a book then review those notes and shrink them down further. Same for videos and articles online. Otherwise I'll just forget it within a few hours.
Hithredin · 4 years ago
Same.

Take notes. Make sure you read them again a week later and reorganize them into smaller meaningful notes.

Those "Cards" can be re-read very quickly. And the simple notion of the few words a month later will replay and refresh the full context in your brain.

Works well if you don't have the time nor occasion to apply it

dondraper36 · 4 years ago
Do you use something as simple as Google Docs for that purpose?
actually_a_dog · 4 years ago
I recommend handwriting notes. See my other comment here[0] for the reasoning.

——-

[0]: https://news.ycombinator.com/item?id=30047675

xdfgh1112 · 4 years ago
A folder of text files on my Dropbox. Google Docs would be fine too. Tried other stuff but keep coming back to plain text files!

Anki is great for foreign languages, chemical names, country flag to name mappings etc.

methusala8 · 4 years ago
The free version of Remnote or Anki would also work.
rovr138 · 4 years ago
I don't read everything or for the sake of reading. I read what I find interesting.

Sometimes I just can't connect with the author and their way of explaining things.

I read multiple times. First time, I skim quickly over everything to see if it's worth it and I want to dig into it. Second time I read a bit slower and take high level notes on areas I want to dig more on. Third time I read but make it an emphasis to pay attention to the areas I took notes on and dig into those with more references if I need to.

I expand my notes. I don't expect my head to retain it all. Make it easy to search. Figure out what works for you. If you go written on paper, figure out how to organize things.

I figure out a project in which to try new things and I try them. This goes back to, I don't read everything or for the sake of reading.

glassprongs · 4 years ago
If I plan to use the knowledge then I either apply it immediately or take notes so I can apply it when ready.

If I don't plan to use the knowledge then I take away an over simplification of the topic and any thought provoking key points.

dondraper36 · 4 years ago
This is exactly what I have noticed as well. For example, when reading Designing Data-Intensive Applications for the first time I had absolutely no exposure to distributed systems and concepts like partitioning or replication. Even though it wasn't that difficult to understand the chapters, I couldn't truly appreciate the information.

Now, however, with more experience and the necessity to deal with these issues at work, I keep revisiting DDIA on a regular basis and this is when the book truly shines for me.

It just bothers me at times that even though I read quite a lot, the amount of information I can confidently restore even within a few days is not even close to 50%.

Taking notes is definitely something I should try, in addition to organizing a handy set of bookmarks in Raindrop whenever I encounter something useful.

runjake · 4 years ago
I reduce the amount of stuff I read and spend a lot more time contemplating. If I happen to binging on a given day, I’m forgiving myself for not remembering 300 pages of new information and I’m just trying to enjoy.

If I read a technical book, I work more toward familiarization than memorization — I can just look back at the book or Google for reference.

When I was younger, I was able to memorize *. I can’t do that now, perhaps due to age, or because of experience. Now, I work toward mastery of the absolute basic fundamentals, and rely on looking up everything else.

lkrych · 4 years ago
This is a good question and it is going to depend on your learning style. That being said, I feel like this quote encapsulates some wisdom that I've used:

“If you want to learn something, read about it. If you want to understand something, write about it. If you want to master something, teach it.”

- Yogi Bhajan

My technique involves reading the technical book and then writing down the most important parts of what I've learned. This is useful for reference later, if I need a quick refresher.

Another useful technique is the third part of this quote, finding some way to teach and explain the concepts you are using. Often times the best audience is a smart but non-technical person. Can you find a way to explain the concept you are learning in a way so that your audience understands?

Typically this involves a lot of simplifying and I think this simplification can frustrate the engineer part of our brains that cries out "But it isn't simple!" Try to fight this urge to reject simplification because it can become easier to work with concepts as simple discrete components. Think of Newtonian mechanics, it was a nice simple explanatory framework for how things work (good enough) until we needed to add electromagnetism and quantum mechanics to explain natural phenomena that didn't abide by the framework.

Edit: Oh and lastly, and most people have already mentioned this, build something useful with the concepts you are learning.

ozim · 4 years ago
Yeah that is just like that, imagining that simply by reading you will get proficient in something and remember all kind of stuff is a false premise.

While grinding is looked upon as silly. Yes doing the same thing multiple times seems the only way to master it.

If you want to learn maths - best way is to solve equations by hundreds - solve math assignments by hundreds.

My latest approach to cyber security is just like that - while I do know how most of the attacks work theorethically going through the movements to pop simple box on HTB is quite a task for me. So only way to get better at breaking boxes is not reading about kinds of exploits and understanding them - it is simply bashing keyboard all the time until all the tasks are muscle memory and until I can get through iterations of ideas of how to pop a box as quick as possible.

Then you also start to build intuition which approaches work for which type of math assignments or boxes because you physically did the work to have working memory of what works and what not.

Which gives you specialization and possibility to skip stuff that you know won't work and being much more productive than people who are "theoretically" understanding things.

While reading about stuff you get pointers like "how to bake a bread", but you get slightly different oven, you get slightly different wheat each time and it is only your internal intuition that can adjust for unknown factors.