Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I have a 1000 page ebook about C, Objective-C and Cocoa that I need to read and I was wondering if you guys had any suggestions as to how I could optimise the way I read it so I don't get distracted. Like everyone, I prefer to read a physical book and printing the ebook would obviously be impractical and a huge was of resources. How would you go about read a 1000 page ebook on your screen?

share|improve this question

closed as off-topic by gnat, MichaelT, GlenH7, World Engineer Sep 16 '13 at 21:49

  • This question does not appear to be about software development within the scope defined in the help center.
If this question can be reworded to fit the rules in the help center, please edit the question.

3  
This question appears to be off-topic because it is about reading ebooks. –  gnat Sep 15 '13 at 9:46
add comment

9 Answers

up vote 9 down vote accepted

From the way you ask the question, it seems you do not have a Kindle, iPad, or Tablet device. When I need to read an ebook, I choose to read it on my Kindle. It has a similar feel and look of a book and does not require looking at a monitor the entire time.

A way to keep from getting distracted is to unplug your ethernet/turn off your wireless. The internet will probably be the biggest distraction and if you "turn it off" you will not have as big of a temptation to get online.

share|improve this answer
1  
Though internet can be distract, In my opinion it would also be a good help for you too. –  Nips Mar 16 '11 at 5:39
add comment

When reading any programming book, I have to code some of the examples. In fact, the more I write code, the more time seems to fly by (hence I believe I'm less likely to be distracted).

Also, in the past, I've added certain forums, email sites, etc to my hosts file to keep them from loading. :)

share|improve this answer
add comment

I bought a Kindle DX recently. It wasn't cheap, but it was the best investment I made in a long time. It can easily display ordinary PDFs and you can read in your bed or on sofa where there are significantly less distraction than on a PC. And it reads better than a LCD screen :)

share|improve this answer
    
+1 for mentioning the DX. A must for reading technical material like programming books, compared to regular size eBook readers. –  tcrosley Mar 15 '11 at 21:36
add comment

I use TextAloud with one of their natural voices to read it to me. Being a bit dyslexic this is sometimes better then reading. The new acrobat reader has "Read Aloud" as a feature, so I just set it to the natural voice and i'm good to go.

share|improve this answer
add comment

When learning new programming stuff, E-Books is the foundation in my opinion. Because when you try to learn it from the Internet you can't find the proper flow of learning from beginning to advanced.

how I could optimise the way I read it so I don't get distracted?

When reading don't try to read it by force. If you don't find it interesting to read. Read fast and try to grab just the important points.

If this is not working for you (in that specific time) Search the internet on that specific thing your're reading. This would be a different experience and after you get what you want from the Internet you can read the book. You will understand the book more clearly.

Some other tips

  • Don't read 10's of pages continually. Read few pages and try to understand the concept. If you can't understand (in most of the cases for me) Internet is a good companion. Get help from him.
  • Practice: From everything you learn, before moving into the next topic practice it
  • Note that everything in those 1000's of pages aren't that important. Understand what's important to you and what's not.
  • E Books usually points out only the theoretical stuff. But programming is about best practices. Learn the theory and find where it's applicable in Real world.
share|improve this answer
add comment

I agree with the others who have recommended a Kindle. Alternatively, if you have access to a second monitor, I find it helpful to have the e-Book open on one monitor and be coding examples of what I'm reading on the other monitor.

share|improve this answer
add comment

What are you trying to get out of this book? What is your ultimate goal? When I read programming books I usually read for a while, then write some code to see if I understand the concept I just read. For example, if I am studying reflection, I write a class with a number of methods of different access levels and then write another class to test my knowledge.

share|improve this answer
add comment

The internet is the main distraction, so as @sange suggested, turn it off, or read on a device that is disconnected. @davidhaskins suggested coding along with the examples presented in the book, which is often an essential, so that means a device such as a tablet or Kindle is not optimal. So try a laptop or netbook you're able to work on without too much trouble and disconnect from the net. Thing is, if you need to look something up, then you're going to be tempted to reconnect and, well, the distractions begin.

So here's a technique I like to use.

Read the ebook on a disconnected device, but have a network connection in a physically different location, like another room or another desk. If you need to look something up, you can, but you have to make some physical effort to do it. Save up some things you'd like to look up and do them in a cluster. Be mindful about what you're doing (the physical movement from your present location to where the reference device helps with this) and, if you tend to get sucked in on the connected device, set a timer to remind yourself to go back to reading. A timer with a loud tick can sometimes help to focus the mind.

share|improve this answer
add comment

I use Mendeley, constantly (as in very frequently and between interruptions) make/share notes and sync between machines (and collaborators).

Whenever I have books about programming/development, I generally just use them as a reference... that means I'm probably just looking for some very specific information. Mendeley has a good indexer, so if I look for... say, "socket", it will bring up some system programming and network books, I will go through them and probably read a chapter or less from each one and make notes on the PDFs.

The notes and PDFs are synced to the Mendeley cloud, so if I switch to my laptop I can just continue going through things.

So what works for me is to know what books have and then use them only when I need them, that "when I need" part makes it easier for me to remember since then I can associate information to practical scenarios, thus coming up with new knowledge, instead of when reading just out of entertainment. The "when I need" part is better when supported by a good tool, such as Mendeley, although I guess Google Books or other things that let you search across your ebook collection and store notes could also help.

Also, I never sit down and read a 1000 page book, that would be a waste of time... rather, I flip through it in order to know what kind of information that book has... call it a mental index, that way when I need to know something, sometimes a (metaphoric) bell suddenly rings inside my head and I remember "oh, there was a book with that information", then I go back to my collection.

So in summary:

  • I make sure I have a good collection of ebooks
  • I "mentally index" them when adding them to my collection (can be as little as 5 minutes flipping the ebook)
  • I only read when I need to solve a practical problem
  • I support my reading with a searching / note-taking tool, Mendeley does the trick for me
share|improve this answer
    
would you mind explaining more on what it does and why do you recommend it as answering the question asked? "Link-only answers" are not quite welcome at Stack Exchange –  gnat Sep 15 '13 at 9:46
1  
@gnat There you go –  dukeofgaming Sep 15 '13 at 16:18
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.