SEP Book Classics

June 28, 2016

SEP Book Classics – What’s that?

Well, good question. SEP Book Classics started from a discussion in an Appreticeship Patterns book club at SEP. Our group was discussing how to help new members to the company gain a shared language/knowledge of many of the books that we’ve read at SEP.

The problem then, was to identify which books made the list, and which books didn’t, and since no one person is qualified to rank every book in our library, I created an open Slack channel and asked people to come and help me generate a list. After a week or so, I put the list into a survey and sent it out company-wide, now asking people to categorize the books with the following criteria and assigned them a value behind the scenes and discussed them later:

I haven’t read it = 0
I didn’t like it = -1
It was okay = 1
It was great = 2

The survey also included a free form text box, for the folks responding to give me their input on books we might have missed.  I took all of those responses and added them to a second survey, giving folks the option to answer for the new books.

That’s great, and all, but I want to see some data!

That I have in droves, but before I show you numbers, let me add some context. The data below is driven off the scale I showed in the above section, while I’m making summary data available (see the Conclusion for a link to the XLSX sheet), I’m keeping the individual responses to myself for now. If I find something interesting from correlating those responses, I’ll let you know.

Additionally, while I got ~45 responses, they represent only about 40% of SEP, so there is some error inherent to the system.

Most Read Books

How Calculated: (# Responses – # ‘Not Read’) / (# Responses)

Because there were two different surveys, I’ve had to apply ratio logic to determine ranking for this category – Not everyone who answered the first survey answered the second.  I’ll note that for a while, we were directly recommending folks to read ‘Who Moved My Cheese’, so its presence at the top of the list isn’t surprising.

  1. Who Moved My Cheese (
  2. Getting To Yes (
  3. Pragmatic Programmer (
  4. Apprenticeship Patterns (
  5. Design Patterns (Gang of Four) (
  6. Peopleware (
  7. Don’t Make Me Think (
  8. Punished By Rewards (
  9. Working Effectively With Legacy Code (
  10. The Mythical Man Month (

Best Average Rating

How Calculated: (Sum of Weights) / (# of responses)

It’s worth noting that this includes people who responded with ‘Not Read’. There are a number of books which had only one response with scores of 2, this biases the data towards books that were read by more people, but the differences between the two lists is meaningful, despite their similarity.

  1. Getting To Yes (
  2. Pragmatic Programmer (
  3. Apprenticeship Patterns (
  4. Don’t Make Me Think (
  5. Peopleware (
  6. Design Patterns (Gang of Four) (
  7. User Story Mapping (
  8. The Design of Everyday Things (
  9. Clean Code (
  10. Drive (

Best Average Rating (Only read and 5+ responses)

How Calculated: (Sum of Weights) / (# of responses – # ‘Not Read’)
I filtered this list to books with more than 5 responses, otherwise it would be full of books with perfect scores and only 1-3 responses. While I feel these books shouldn’t be discounted, wholesale, I think for my purposes of finding a shared language/influence to the company 5+ people is a decent limit. It’s worth noting, that this list has the opposite bias as the last – that books less frequently read have a higher deviation. Books on both these lists shouldn’t be ignored.

  1. The Design of Everyday Things (
  2. Drive (
  3. The Language of Success (
  4. Lessons Learned in Software Testing (
  5. The Lean Startup (
  6. Getting To Yes (
  7. Don’t Make Me Think (
  8. User Story Mapping (
  9. Pragmatic Programmer (
  10. Growing OO Software Guided by Tests (

Hidden Gem Ranking (5+ responses)

How Calculated: Least Read Ranking + Best Average (Only Read) Ranking
Here I start adding the ranking values together to get a combined definition. The goal here is to identify books that have been read by only a few people, but have a high ratio of people who enjoyed them. Since I’m using a ‘Least read ranking’ several of the books from other lists are new, and the ordering here is different from the previous list. Again I limit this to books with 5 or more read responses.

  1. Drive (
  2. The Design of Everyday Things (
  3. The Language of Success (
  4. Lessons Learned in Software Testing (
  5. The Lean Startup (
  6. Growing OO Software Guided by Tests (
  7. Refactoring (
  8. Badass: Making Users Awesome (
  9. Clean Code (
  10. User Story Mapping (

Best Overall Ranking (5+ responses)

How Calculated: Most Read Ranking + Best Avg (Only Read Ranking) + Most Loved Ranking + Least Hated Ranking

Here, again there is a bias towards books most read, but allows room for books (like Drive) to overcome a lower read ratio and climb the list.

  1. Getting To Yes (
  2. Pragmatic Programmer (
  3. Drive (
  4. Don’t Make Me Think (
  5. User Story Mapping (
  6. The Design of Everyday Things (
  7. Apprenticeship Patterns (
  8. The Lean Startup (
  9. Peopleware (
  10. The Language of Success (


While this isn’t a perfect representation of the books and shared language at SEP, I feel this is a fair representation.  If nothing else, it’s a starting place for some conversations around the books we’ve consumed that have influenced us in some way.

Are we missing a book?  Interested in giving us your opinion on the books from our survey?  Leave a comment and let me know.