At work, we've been doing lunchtime book clubs for a while. So far we've done:

Clean Code

Working Effectively with Legacy Code

The Pragmatic Programmer

We read a chapter per week, and one person is assigned to present over the content and help facilitate discussion. Of the three, we've probably had the most success with The Pragmatic Programmer. It seems like the more technically complicated the content was, the more people tended to drop out as the book went along.

I'd like to do a technically-heavy book like SICP or Java Concurrency in Practice, but I don't know of good ways to make this work with the format we're currently doing. What advice do you have?

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise.
If this question can be reworded to fit the rules in the help center, please edit the question.

Keep the club for the "big picture" type of stuff, where discussion is natural. For SICP, at least the lectures are posted online, so you can have a viewing club.
–
MacneilDec 23 '10 at 6:39

4 Answers
4

What I like to do in a book club is find practical application - or examples of practical application of the concepts in the book. Instead of asking someone to present, ask multiple people (or anyone who wants to volunteer) to come up with relevant examples of the concepts in the book.

For example, when you read the chapter in the pragmatic programmer about broken windows (I know you read this one already, but since everyone has read this book, it's a good example), ask for examples of broken windows in your own source code - or examples of broken windows on code the team is familiar with. For me, the connection between ideas that look good on paper and real examples do a ton to drive the points home.

When dealing with technical details I like to try them myself so that I can tackle problems and overcome them. Therefore I think that if you would like to whet the appetite of your programmers with some technical stuff you should present the cool stuff regarding this subject and point them to the book that you want them to read. This is what Microsoft doing on PDC or other conferences. They put the cool stuff and give you some resources to read more. Hope that helps.

My personal take on technical heavy books is daily discussion. I understand from a bookclub standpoint that is difficult, but how about making your group take the challenge of acing a certification exam. Having it confined to say 4 weeks of prep, that is the fun of engaging in technical stuff. In that case you would not need an entire village, the group end up with a handful of motivated people and would really filter itself out in a week. Trust me, this is how you can challenge yourself and the team.