Vaibhav emailed me yesterday with some questions about [ this blog post. ]
In truth, I have slowed my technical reading since having children in preference to non-technical books, but I’ve been getting back to Tech Books recently as I have some “catching up” to do.
I’ve had hundreds of email about this blog post so I though (with Vaibhav’s permission) I’d answer his questions “out loud” sort of speak.
I’ve been thrilled by the response and enthusiasm about “reading” technical books.
One thing that makes our profession unique is that the problems that we solve, the tools that we use, and the nature of the solutions that we provide are ALL constantly changing.
“New learning” is in integral part of being (and staying) successful in Software Development.
Here is Vaibhav ‘s email …..
How are you doing? Many thanks for the many inspirational articles on your website (www.misfitgeek.com).
A big ‘thank you’ especially for the blog post – “I’m asked, how did you learn what you know ?”. I am quite sure that this article will be like a ray of light in the tunnel of darkness for those who would like to follow in your foot steps and be as technical competent as you are.
Joe, in this article you mention the following:-
For much of my your career I made myself read at least one technical book per week (if I finished early I would start another or read a business or personal development book.
Joe, can you provide some insights or tips on how are you able to finish a technical book in one week. It would be really helpful if you can answer the following questions:-
- What is the average time do you spent on a technical book, say, consisting of 500 pages or so?
- How much hours at the minimum do you devote to reading the technical book?
- Do you type in the code samples given in the book or you download the code from the associated website and execute the code?
No matter how hard I try, it takes me ever and ever to finish reading a technical book. The actions which are responsible for making my technical book reading this longer are as under:-
- I have a habit of underlining/highlighting the text in the book, which I feel is either important or is a good candidate for reference.
- I do practice the code samples given in the book, by typing the code by hand. Somehow I believe, I know this might sound stupid, that by typing the code, I am actually reinforcing the concepts in my brain.
Please advise if you follow any patterns or something to finish your technical reading faster.
1.) What is the average time do you spent on a technical book, say, consisting of 500 pages or so?
It’s impossible to say. 8 hours ? 100 Hours ? Some books are easy to read, others can be hard (becuase they’re poorly written, or because they are simply PACKED with data to be assimilated.
There are a couple of things that I do to try to “keep the rhythm”.
- I never EVER fail to finish a book. If I finish the first chapter, I commit to real the whole thing. There are acceptations for truly terrible books or books that I find to contain more than a little incorrect information, but this is my rule for ALL books (technical and other).
- Choose Titles Carefully. Sometimes I think authors are paid by the page. More pages doesn’t NOT necessarily mean more INFORMATION.
- Alternate. I’m between HARD books, read easy ones. After a 900 page book, read a 180 page book (or 2).
- Read EVERY NIGHT. Even if it’s only a few pages, build the habit.
- I always have 2 or 3 books going at any time. 1 Technical, 1 Fiction, and 1 Non-Fiction. Each night I read some of the Technical book FIRST ! Tech books require more brain power so I read some of a Tech book first. As I get more tired I switch to a pleasure book that has less need for detailed retention.
- Kindle – I still read Tech books on Paper but I do other reading on the Kindle as much as I can. It’s instant on and I can add to my daily reading time by getting in 15 minutes waiting for the kids, etc.
- Buy Fiction as Audio Books – I can listen at night long after my eyes get too tired to read. There are TONS and TONS of books on CD or downloadable as MP3. I can also listenwhile I mow the lawn, work around the house, etc.
2.) How much hours at the minimum do you devote to reading the technical book?
I don’t set a fixed number of hours per week. But if my week lacks progress, then the following week I will “MAKE UP” time in the following week. (Reading at night and large energy drinks go very well together. )
3.) Do you type in the code samples given in the book or you download the code from the associated website and execute the code?
NO ! – Not the first time I read a book. For me, continuity improves my learning experience so I head the book cover to cover 1st and then I might play with the samples. (This might also be why yo have trouble finishing many of the books that you start.)
4.) I have a habit of underlining/highlighting the text in the book, which I feel is either important or is a good candidate for reference.
I used to do this in every non-fiction book that I read. Now I almost never do. I’ll only highlight something because I need to go back to it later and I want it to be easy to find later.
5.) I do practice the code samples given in the book, by typing the code by hand. Somehow I believe, I know this might sound stupid, that by typing the code, I am actually reinforcing the concepts in my brain.
For me, I don’t need to enter the code to commit the concept to memory. I will almost never take the time to hand enter a book’s source samples, but I will often download the code when it’s available. Most often, I do this so that I can try variations on the original code.