Reading, as I’ve discovered, is the best way to learn how to read and write code, but it takes a few tricks to get the most out of a programming book if you choose to read one. For those new to programming, reading programming books or have difficulty finishing books on the subject, this post is for you. Here, I’ll share the tricks and tips I use to study programming books more quickly and efficiently.
Long before the Internet, books were the most important source of knowledge. You could believe that books are becoming obsolete now that there are videos, audio, and other supposedly superior ways of acquiring knowledge. However, books continue to play an important role, just as they did a long time ago.
They still have a long way to go, if they will ever be phased out.
But one thing is for sure, you clicked on this post because you are interested in reading a programming book (so I don’t have to convince you to, do I?), perhaps you already have the book in hand and you just want to know how not to waste a lot of time going through it, but at the same time getting the most out of the book. Well, this is the right post for you; it will show you some of the methods I use to read programming books faster and efficiently.
So let’s get started;
Table of Contents
- How to Read Programming Books
- 1. Don’t Start What You Can’t Finish.
- 2. The medium: audiobooks, paper books, or ebooks?
- 3. Get Other Supporting Learning Resources.
- 4. Start With The End.
- 5. Get The Source Code for the Programming Book.
- 6. Code Along!
- 7. Write Your Own Code.
- 8. It’s not a memory game, it’s an understanding game.
- 9. Annotate For Later Reference.
- 10. Programming Books Are not Novels!
- FAQs on how to read programming books.
- How long does it take to read a 400-page programming book?
- Why Do I read the first 80-100 pages of a programming book and then try another one?
- Conclusion: How To Read Programming Books.
How to Read Programming Books
Below are the tips and tricks on how to read programming books:
1. Don’t Start What You Can’t Finish.
Before you even start reading the programming book, you have to ask yourself if there is any chance for you to finish the book.
‘Ummm yeah, I think ahh, no.’ ๐ค
If you are not sure, here are a few tips on how to know.
I don’t believe in anything called a ‘non-book person.’ By that, I mean everyone can read a book from start to finish without any problem – maybe a few problems here and there- but you are for sure going to finish the book and be happy about it.
There is a catch though.
If you have never believed you were a book person or have tried several books before and could not finish them. It’s gonna be so hard for you.
So here’s what you have to do.
Start small!
There are no other things in life that motivate us to do even more than our own achievements. So start by picking a small book of about 100 – 200 pages so as to make sure you are going to finish it. The satisfaction you get from finishing that book will encourage you to seek even larger books. And on top of that, you’ll have understood yourself better enough to know what works best or some practices you have to do when reading a book.
If you can’t find any small but good books, a part of this blog focuses on the best programming books for developers. Check out our other posts and reviews to get the best books for you. Take a look at Greg Lim’s books to get an idea of the type of ‘small but good’ books I’m talking about.
If you are a reading fanatic and you’ve had success with your past reading adventures, then you must already know if this book you are about to start reading is going to work for you. Now what’s only left is to know how to read even much faster and more efficiently.
Another thing: Don’t make goals just yet, you may end up rushing yourself up in order to reach your goal. However, you will get nothing out of it. Some will say make a SMART goal, with A standing for Achievable, but if you just want to get something out of the book then read until you understand, this might involve re-reading a chapter if you do not understand. Just pick a book, and one book and promise yourself you will read it up to the end.
2. The medium: audiobooks, paper books, or ebooks?
As technology advances, there are going to be more types of books than we normally know. Even today several types of books were not yet available 50 years ago. Audiobooks, paper books, ebooks. But they are still books, aren’t they? Now the question is ‘Which format is going to work best for you to read your programming book faster and efficiently?’
Below are my recommendations to make your reading faster and more efficient.
Ebooks: Book formats that you can access electronically in various formats like PDF, epub, etc. Ebooks are my best recommendations for programming books that need you to code along. Below are some reasons why:
- You can open them beside your code editor and other apps you may be using, like browsers.
- You can copy and paste the code if you wish to.
- Some ebook readers allow you to search your way through the whole book to get to the specific section you want.
- You can also get ebooks for a much cheaper price compared to paper books.
One con about ebooks is that they can be hard to annotate. You have to get a good reader software that not only supports the file type but offers some options for you to annotate it like highlighting, making comments, making side notes, etc.
The other problem is that you won’t find ebook versions of all the best paperback programming books.
If you are going to read your ebook in PDF format, you are not going to believe this, but I highly recommend the Microsoft Edge PDF reader that comes preinstalled in the Chromium-based Edge browser. Most people will like to hate on it but trust me, you will appreciate it once you see what it’s capable of.
The Microsoft Edge browser PDF reader will allow you to make a lot of annotations that will help you with your reading process.
Paperback books: paper books are by far the most popular type of book, they are the traditional ones we all know. Paper books are good for theoretical books that do not have a lot of code in them for you to code along.
Everything about paper books is a bit more expensive than electronic formats, not only is the book itself more expensive than its electronic version, but you will also have to buy other physical things like highlighters and bookmarks to make your reading more efficient.
Audiobooks: Just like paper books, I recommend audiobooks for theoretical books. With an audiobook, I tend to finish much faster, but the level of understanding is not as deep as I get from other book formats. You may need to listen to it more than once before you really ‘get it.’
3. Get Other Supporting Learning Resources.
If you are a beginner, relying on the book alone can put you in danger of giving up. However, relying on other sources of information (like videos and blog posts) alone will also provide you with shallow and unorganized knowledge about the topic concerned. So you will need a combination of both books and videos. Videos are not the main resource here remember, they are just there for elaboration. I’ll recommend you to go to a video only if the chapter of the book has given you some headaches or if you just want an alternative explanation.
Now by videos, I do not mean expensive online courses like that you get from Coursera or Udemy (although they are also great if you have the $$), they can be free videos and blog posts you get from the internet (YouTube, coding blogs, etc).
If you get interesting video series or blog posts, do not get too hooked to the point of dumping the book for those other resources. That’s Shiny Object Syndrome and it always sets you up for failure and disorganization.
4. Start With The End.
No No! I do not mean to read from the back going to the front; I mean to know, or have an overview of what the chapter is going to talk about. If the book has some questions at the end of the chapter, that’s good. Start with those. Try to answer them, don’t worry if you can’t. But now you will know what to expect from that very chapter. And your brain is now ready to start looking for the answers as you start reading the chapter.
Starting with the end will prepare your brain for what it will endure.
If you have a problem solving the questions you just went through, your brain will start looking everywhere to solve them.
Don’t hesitate to take on coding challenges. I like to take challenges because they let me know if I have understood the chapter well enough to hop on to the next.
5. Get The Source Code for the Programming Book.
Most programming books will have source code that comes along with them. The links are usually provided inside the book, or you can search on the internet.
Most programming books, especially those with a lot of code explained step by step, may become more confusing as the code to add or remove increases with a step. Referring back to the source code of the book will allow you to review the complete version of the project then you can either be able to understand it better or run it on your own.
It is far better to know and try out what you are going to build first before you start building it. That’s why tutorials on creating popular software that we use day by day tend to be people’s favorite because sometimes while using the app or website you may have asked yourself how it was built.
6. Code Along!
Just read the code and you will get nothing, maybe just a high-level understanding of what’s going on. But type out the code and run it. Then the picture will get even clearer.
You may choose to ‘browse’ a chapter. Some will say to ‘skim.’ What that is is reading just to see the bigger picture but promising yourself to come back and do the thorough work, thus going through the code examples in that chapter before hopping on to the next.
Even a small piece of code is worth typing out into the code editor.
One may ask ‘Is it okay to read first and then practice later or practice while reading?’ The latter is what I’ll always recommend. But if you plan to go with the former, it is also just as good. What I’ll recommend you to do is not to go too far away without any practice. Skim the chapter that you currently are on to have an understanding of what it is talking about, then come back to practice without going on to the next.
7. Write Your Own Code.
You can not just practice only on the code that the programming book offers you. But try to think of a similar scenario that is a bit different from what you’re provided with. You can take it a step further by adding more features to the book’s project.
For instance, the programming book is trying to illustrate conditional functionalities, so it provides with example code that asks the user his or her own age in order to know if he or she is permissible to do something. Using that same concept of thought, you can create similar functionality or add more features.
For example, you can try to create a program that when given the age will not only tell you whether you are permissible or not, but it will also tell you the number of years you are left with before you can access the service. Of course, this is just a basic example, especially for advanced developers. But get creative with whatever code you are given; try to fit some things in, or remove others ‘just to see.’
However, I recommend this for small projects in the book, not the larger ones that may have their own dedicated chapters.
8. It’s not a memory game, it’s an understanding game.
Coding is never a memory game, and so does reading a book on programming. As you go over the code and type them on your own, don’t try to repeat it in your head just like you do when trying to memorize something. Try to understand what the code is doing. Go over the code snippets line by line and ask yourself what the code on each line is doing without trying to memorize that piece of code. This is because understanding in itself is a way of getting things in your head.
As you advance with your coding journey, you will see that you are never going to stick to only one language. To learn other programming languages faster, you’ll need to understand programming concepts rather than some memory code snippets stuck in your head.
One thing though I will recommend you to memorize if you would rather do that are some keywords of the programming concepts you are reading about.
9. Annotate For Later Reference.
Make notes, highlight with different colors, and comment. As I’ve told you in one of the above chapters, you have to know the keywords of the programming concepts that you are learning about. One thing that accelerates your knowledge is simply highlighting or underlining the keywords and their definitions. When you come back to the book again to use it as a reference, these important concepts will be easier to spot.
Make comments as you read the book about what you think, this may be just an application where the concept can be used.
Also, try to write the definition or explanation of a concept in your own words.
10. Programming Books Are not Novels!
One last thing to keep in mind, programming books are not novels, they are more like bibles if you will. This means two things.
โThe first is that when reading a programming book, do not read it like a novel where you go chapter by chapter chronologically. If you know you have a better understanding on the chapter then be free to skip it.
For example, a book on Flutter may have a few chapters dedicated to teaching you the Dart programming language; But if you know Dart already, why waste time going through it again when you are supposed to be focusing on learning Flutter?
However, if you do have time to go through the stuff you already know before, then there is nothing bad with it, it even broadens your understanding as you are getting this information from a different perspective.
These extra chapters are most often summaries focusing on the most important parts, which is cool as they are only going to teach you the stuff that matters; which you are actually going to use in real life.
โThe second thing is that you can always come back to the book for reference. This is kinda the same concept as what I’ve said in the chapter ‘It’s not a memory game, It’s an understanding game‘. This means that after finishing the book; you may come up with an idea to build your own project; If you can not remember other concepts clearly, don’t worry at all, you can always go back to the book to get some references. The annotations you’ve made before will help you navigate your way through the important stuff from the book.
FAQs on how to read programming books.
Below are some of the most frequently asked questions on how to read programming books. You may also have asked yourself the same questions, so I’m going to answer them for you according to what I think.
How long does it take to read a 400-page programming book?
Why 400 pages, well because that’s the average number of pages for a programming book. Reading a programming book from start to finish should take about 2 months, that is 60 days. I do not know if this is too much or too little time for you. But as for me, that’s about it; It involves me not just going through the text, but coding along and building small projects as I go.
Why Do I read the first 80-100 pages of a programming book and then try another one?
This is most often caused by 3 things I can note: โpure boredom, โShiny Object Syndrome, and โtoo technical content from the book.
This is what I will recommend you to do if you are facing an issue like that:
Take your time when picking a book to read, pick a book that is not too long but also contains sufficient information about what you want to learn (If you have time, take a look at Greg Lim’s books to get an idea of the type of books I’m talking about). The book should also be well written, with some humor here and there to keep you out of boredom, and after picking that kind of good, promise yourself that you are not going to hop on to another book before you finish this book.
If the content gets too technical, find an alternative explanation from somewhere else like a blog or a video. But always come back to the book and finish up.
Conclusion: How To Read Programming Books.
These are the tricks I use to read programming books and other technical books. Let me know in the comments section below if you have any other tips on how to read programming books that I did not mention in this post. I will definitely try them out and perhaps they may become part of this list. Anyway, I’ll see you in other Coding Gear articles.
This article was amazing, its different from what i have read so far.
Thank you bro
Thanks Loic.
I’m glad you liked the article.