Maintaining a reading list on GitHub
February 21st, 2011
Like any decent programmer, I spend a lot of time reading. For the most part it runs in cycles: read a bunch of stuff, apply what you’ve learned, read a bunch more, and so on. This is a pretty typical pattern as becoming a strong developer requires a good mix of learning and doing. So, inspired in part by Apprenticeship Patterns, I’ve decided to start maintaining a reading list.
Some simple ground rules for myself.
- List should be publicly available on github.
- Be honest about what books I’ve read, partially read, and plan to read.
- Write a few sentences about each book – mostly for myself but also for anyone who might be interested.
- Only include books related to development, user experience design, and entrepreneurship.
- Include screencasts as well since that’s how I do much of my learning.
I’ve already noticed some benefits.
Although it’s only been a short time, I can already attest to the usefulness of keeping track of what you’ve read. Just building the list requires going back through all the stuff you’ve read and watched over the past few years. It’ll get you thinking about how you learn, including some really interesting questions:
- How have your interests moved between topics?
- What topics do you keep coming back to?
- What periods were most productive?
- What topics required a few books before you really understood?
- What type of books are most useful for the way you learn? (e.g. Do you learn better with lots of examples or would you rather read a short book twice?)
- Were any of the books disappointing? Why?
I think it’s important that your list be more than a catalogue of titles and author names. You should take the time to reflect on why the book mattered (i.e. what did you take away from the read?). While this means writing a few sentences for each entry, don’t get too fixated. There’s no reason to write a summary or book review. The writeup is just to get you thinking broadly about the book.
And you should do it too.
Finally, I’d like to see other developers maintaining a reading list – specifically on GitHub. It’d be awesome if I could look up serious developers to check out what they’re reading and, more importantly, what they recommend. It’d be a nice adjunct to reading their code.