Hacker News new | ask | show | jobs
by __strisk 3045 days ago
Most programming books do not let you pause to reflect. They just go on and on. Consider Fluent Python by Luis Ramalho. If you read through the book, you will not get much out of it. However, if after each chapter, you try to come up with a practical application of the concepts discussed, then you will have a better chance at building a mental model around the topics. The code presented is just a solution to a problem. You need to come up with more problems. Basically, don't be a passive learner. Be an active learner.
2 comments

I would say that's a problem with video (or a live lecture), not with a book. Books give you all the time in the world to pause and reflect.
Yeah, it's strange to me that a book should try to force a person to come up with their own activities. Perhaps they should suggest it strongly, but so should a good how-to-learn class, saving all that ink on all those pages from saying the same thing.
In the case of "Fluent Python", the author fairly explicitly calls out it is not for rote learning of the basic language:

> ..."if you read it too early in your Python journey, it may give you the impression that every Python script should leverage special methods and metaprogramming tricks."

But if you are familiar with a lot of the concepts and the basic syntax of Python, its wonderful. I never understood how all the magic methods in Python worked (and how nice they were) until I read that book.

I haven't finished it, but because of it am now able to write and read Python much, much better.