A few things I’ve learnt after learning programming through books

I’ve been reading programming books for a few months for now. Of course when it comes to self-learning, there are definitely a lot of pros and cons about it. However for now I will just share some of my thoughts regarding learning coding through programming books specifically.

  1. Depends on how many hours you can put into learning, there will be the feeling of “not learning much” or “I didn’t achieve enough”.. and you should not let those feelings deter you from keep learning. Because if you are asking a lot of questions when reading through books, it is not surprising you find yourself in the position that after 1–2 hours of reading, you’ve only gone through 10–15 pages. And there are shit tons of info to either memorize / understand. Especially when you are a beginner. Having these worries/feelings is completely normal. The only thing you need to do is to take a deep breath and don’t let it stop you from going back to learning the next day.

  2. Do not set specific target in everyday’s learning. I will explain this in detail. Let’s say you’ve got a book of 200 pages. Then you tell yourself: “I am going to finish this book within 10 days, so that would be 20 pages per day”. This is something I do not recommend. Because different chapters of one book have different difficulty. In general the more advanced topics are towards the middle and the end of one book. If you have 2 hours of learning time each day, and it takes you 1 hour to read through the 1st 20 pages, it will likely take you a lot more when it comes to the middle part of the book. Especially when there are a lot of code snippet in it and you need to try them out one by one in the console.

  3. Point 2 leads to point 3. Which is timing. How much time should I study everyday. For every person this is really different. I’ve seen/heard some people learning to code up to 6,7 hours a day. While a lot of us can only devote 1–2 hours of time into coding/learning. For myself, if I am learning through books, writing down all the example code snippet in it and taking notes, 1–2 hours is my limit. When I am actually building stuff it can get a lot longer than that. If I passed the 2 hours point I found myself are getting dimishing returns from all the things I am reading. I either don’t really understand it or my brain just doesn’t want to cooperate with me. If you can do better than this, by all means, do it. In the end if you are really enjoying coding, there is no reason to stop.

  4. The reason I set myself a certain amount of hour to reach and don’t easily go beyond that is to “make room” for the next day’s work. If I drain myself too hard, when the next day comes, I will either feel discouraged to continue, or simply avoiding doing it. In book “What I talk about when I talk about running”, author Haruki Murakami mentioned the same thing. The most important part of self-learning is to create a flow. It is more like a marathon instead of a 100 meter sprint.

  5. Go back to the books you’ve already finished, and give them another scan through. You will be amazed how many stuff you’ve already forgotten or don’t even remember learning them. There always will be info left behind. It is a grind, yes. But all these grinds are valuble for you.