Images in this post missing? We recently lost them in a site migration. We're working to restore these as you read this. Should you need an image in an emergency, please contact us at imagehelp@codebetter.com
Developer Book Club - Recommendations Needed

Today I tossed the idea of a developer book club out to the rest of my team.  They all seemed to be on board with varying degrees of enthusiasm.  I know that we won't be the first to try this and so I'm hoping some of you out there can share some stories/ideas of what worked for your team.

The goals are three-fold:

  • Team/community building
  • Common knowledge
  • Knowledge building/sharing

Specifically I'm looking for three things:

  • What books would be on your short list?  Which book should we start with?
  • What works well to keep people excited/enthusiastic?
  • What are the things we should absolutely stay away from, whether they be specific books or implementation details?

So let me have it, what advice can you share?  What can we do to make our book club a success?


Posted 11-18-2008 7:37 PM by Tim Barcz
Filed under:

[Advertisement]

Comments

Derick Bailey wrote re: Developer Book Club - Recommendations Needed
on 11-18-2008 8:56 PM

at my office, we've done Friday Lunch-N-Learn sessions for the last 2 years off-and-on. Everyone reads the same chapter every week, then on friday, the company buys lunch and we all sit around and discuss the chapter for 2 hours. it's worked really really well for our department. out of about 45 developers, we average around 15 in the session every week.

these are the books we have done so far:

* Code Complete 2nd Edition

* Design Patterns In C#

* Domain Driven Design

our next book, staring in the new year will be:

* Working Effectively With Legacy Code

and after that, we'll be doing

* Agile Principles Patterns and Practices in C#

if i were to re-order these books, i'd do Code Complete before DDD, and i'd do Legacy Code before Agile Principles and Patterns. the design patterns book can be important if your team does not know anything about design patterns already, but was primarily just reference material for us.

the most important aspect of our succes, though, is ensuring that everyone in the room knows that their opinion is valid and valuable - even if others disagree. repeat the mantra of "there are no wrong answers. there are no dumb questions" at the start of every meeting, until the team truly believe it.

it's also become important for our sessions to have a designated leader. in general, i took this duty for the Domain Driven Design book. another senior dev did the Code Complete book, etc. the "leader" is responsible for sending out the meeting request every week, announcing what chapter to read, and ordering the food for everyone. the leader is also responsible for leading the discussion down productive paths, related to the chapter. it's really easy for the sessions to turn into complaint-fests, and the leader needs to be able to redirect the conversation back to productive when it goes off track.

Michael Herring wrote re: Developer Book Club - Recommendations Needed
on 11-18-2008 9:07 PM

These may be a bit too info-architecture / Semantic Web for backend developers, but they're damned interesting:

Hackers and Painters

Ambient Findability

Everyware

Everything is Miscellaneous

Tim Barcz wrote re: Developer Book Club - Recommendations Needed
on 11-18-2008 9:14 PM

@Derick,

Great feedback.  So logistical question but who buys the books?  Does your company offer to buy them for people as they are learning or is it up to the developer?

How much did you typically assign to read in a week?  Was it straight by saying  a chapter per week, or was it more in fux given the content (ie. heavy material might be less where fluffy stuff would allow for more content to be covered)?

Jimmy Bogard wrote re: Developer Book Club - Recommendations Needed
on 11-18-2008 9:55 PM

My story was similar to Derrick's.  Each book had a someone to lead discussions, mostly to make sure that discussions moved forward and we had good talking points.  The leader also might bring up examples from current applications to apply the knowledge.

We did:

- Pragmatic Programmer

- A technical ASP.NET book

- Framework Design Guidelines (we were shipping a public API)

- Agile Principles, Practices and Patterns

- Legacy Code

- DDD

Others we wanted to do included Code Complete and Head First Design Patterns.  DDD is a good book to do, but it'll require quite a few pieces in place before any of it makes any sense.  I'd suggest starting with the building blocks - PragProg, the Head First books, etc. to build a solid foundation.  DDD is a heavy, intense book that requires good OO understanding to know why it's needed.

sergiopereira wrote re: Developer Book Club - Recommendations Needed
on 11-18-2008 10:18 PM

I suggested and my company has put all developers on O'Reilly's Safari bookshelf. We are about to start our own book club.

If I could I would like to have everyone in my team read all those thick and dense books we all know about, some already mentioned here. Unfortunately I think that would be a guaranteed way of killing the club half-way through the first book.

Instead I'm suggesting books that are relatively thin and engaging:

- High Performance Websites (Souders)

- Javascript, The good parts (Crockford)

- Ship It! (Gwaltney, Richardson) - not in Safari

- The Pragmatic Programmer

- jQuery in Action (b/c we are adding jQuery now)

BradO wrote re: Developer Book Club - Recommendations Needed
on 11-18-2008 10:55 PM

Many good choices - Pragmatic Developer & Code Complete are 2 of my favorites....however I would start out a different way..."Dreaming in Code" - excellent story and easily relatable for most development teams

Tim Barcz wrote re: Developer Book Club - Recommendations Needed
on 11-18-2008 11:01 PM

@Brad,

Literally started that book last night...and is sitting right here next to me.  I've wanted to read it since I got it for xmas last year.

Tim

Neil wrote re: Developer Book Club - Recommendations Needed
on 11-19-2008 3:37 AM

I would go for opinionated writers who write well and will stimulate interest and debate.

As such the first text that comes to my mind is Object Thinking by David West. An excellent and provocative text that is engaging, and very opinionated.

Wish someone would do this in the London area!

Josh wrote re: Developer Book Club - Recommendations Needed
on 11-19-2008 10:19 AM

I think the most important thing is to make the books interesting to the majority of your team. What are your teams weak points? Maybe concentrate on those. Really the key is to make the planning a team activity not a disctatorship.

I do not recommend reading metaprogramming books for months. There are only so many books you can read about patterns, pming, etc before the value wears off.

Personally these books are indespensable to me and I highley recommend them (of you can see where my interest lies:):

A Developers Guide to SQL Server 2005

www.amazon.com/.../0321382188

Pro ASP.NET 3.5 Server Controls and AJAX Components (Pro)

www.amazon.com/.../ref=sr_1_6

Advanced ASP.NET AJAX Server Controls

www.amazon.com/.../0321514440

zhaorui wrote re: Developer Book Club - Recommendations Needed
on 11-19-2008 11:41 AM

these is best for dummies or newpie

O'Really Head First Series(Java, C#, Design)

Now, I reading the The Definitive Guide to Microsoft Enterprise Library

My Next book list is

the code complete

design pattern in C#

Billy McCafferty wrote re: Developer Book Club - Recommendations Needed
on 11-19-2008 12:26 PM
Ronald S Woan wrote re: Developer Book Club - Recommendations Needed
on 11-19-2008 2:41 PM

I'll be controversial and suggest two non-development books that I used for a mandatory education program for my engineering teams at IBM:

How to Be a Star at Work  (crappy name awesome content) ISBN-10: 0812931696

The Innovator's Solution  ISBN-10: 1578518520

99% of the problem is not knowing the game or building the right product as opposed to building it well. And agile developers often still miss the boat having the wrong customers dictating the product decisions.

Finally for a book in our field, I think Eric Evans Domain-Driven Design ISBN-10: 0321125215 is a true eye opener that got me back on track with what I think the roots of OO really are as opposed to the language artifacts and derived IT designs that we practice.

Tim Barcz wrote re: Developer Book Club - Recommendations Needed
on 11-19-2008 2:50 PM

@Ronald

Thanks for the suggestion of the "How to Be a Star a Work", I've never heard of that one.

On the DDD front, I'm curious about this choice given how many people say they struggle with that book.  Is that more of an architect book versus every developer book?

Ronald S Woan wrote re: Developer Book Club - Recommendations Needed
on 11-19-2008 3:04 PM

If you are going the agile route, I suspect there will be little to differentiate architects from developers other than experience.

I would highly recommend DDD before the others on the theory it is incredible to unlearn bad habits compared to not having developed them before hand.

I think DDD would be a good match for About Face 2.0 ISBN-10: 0764526413 if you guys do any UI development.

And then the rest, I would put Refactoring ISBN-10: 0201485672 at the top of my pragmatic list before any Design Patterns or agile books because it really sets the context of both the possibilities and limitations of evolutionary design and design through development.

Peter Seale wrote re: Developer Book Club - Recommendations Needed
on 11-19-2008 3:23 PM

I sent you some tweets about this. After reading everyone else's comments, I'll just reiterate that Object Thinking by David West is "book club poison." Although I will again mention that I like the book.

J.P. Hamilton wrote re: Developer Book Club - Recommendations Needed
on 11-19-2008 3:40 PM

(@Peter - didn't know you got around so much)

I think my short list would be something like this:

Prag. Prog.

Agile Principles Patterns and Practices

Clean Code

Refactoring

Tim Barcz wrote re: Developer Book Club - Recommendations Needed
on 11-19-2008 3:55 PM

@JP

In that order?  So what I'm wanting to avoid is scenarios where we the books we read end up losing people.  I'd rather read Prag. Programmers as a group even if that means two guys have to reread it since they've already read it.  I think there is value in the common knowledge, everyone has a common basis then to move forward from.  Or is this just a pipe dream?

J.P. Hamilton wrote re: Developer Book Club - Recommendations Needed
on 11-19-2008 4:47 PM

@Tim

No, I don't think it's a pipe dream at all. I have been trying hard to figure this stuff out, too. That is, how I can bring a group of devs to same level.

I would read the books I listed in the same order. PP gives you DRY, YAGNI, and a bunch of other good foundational...thought modes? APPP will give you the SOLID principles. This makes for a very good foundation I think.

Clean Code and Refactoring are very complimentary. These books will really help you simplify your classes. Refactoring had an especially profound effect on my coding style.

At this point, I think you would be at a place where everyone could write testable code effectively, so you could move on to some good TDD or design pattern books.

I think that combining a code dojo with a book club would even enhance what you are trying to do. I will be doing something similar very shortly so I will let you know if it works out.

RhysC wrote re: Developer Book Club - Recommendations Needed
on 11-20-2008 3:12 AM

in order of chronological reading, not importance, my short list would be

(If it was for a team)

Implementation patterns

Pragmatic programmers

PoEAA

DDD

if it was for a interested developer i would switch Code Complete for the Implemetation Patterns

Doug Ferguson wrote re: Developer Book Club - Recommendations Needed
on 11-21-2008 9:48 AM

Head First Design Patterns

DDD

Agile Principles Patterns and Practices

Working Effectively With Legacy Code

Refactoring

PoEAA

Code Complete

Analysis Patterns can be useful, esp if your problem domain falls under one of the covered topics

Derick Bailey wrote re: Developer Book Club - Recommendations Needed
on 11-21-2008 10:28 AM

@Tim

My company buys the books and pays for the lunches that we have during the sessions. It's part of the training budget that we put into the yearly budget for the department. We buy 20 copies of whatever book we are doing, well in advance of that books' class actually starting.

depending on the chapter size, we typically limit to 1 chapter a week. for some of the larger DDD chapters, we split into two weeks, though. There were also a few Code Complete chapters that got doubled up because they were very small.

Zach Young wrote re: Developer Book Club - Recommendations Needed
on 11-22-2008 12:04 PM

Tim

We have started a virtual book club with the book "Agile Principles, Patterns, and Practices in C#".  For more information you can go to the Austin Tech Book Club group on Google groups.google.com/.../austin-tech-book-club.

Sean Kearon wrote re: Developer Book Club - Recommendations Needed
on 11-22-2008 6:15 PM

Anything Fowler certainly UML Distilled for all levels, even (especially!) newbies.  (Surprised that there are no references other than Billy McCafferty's post in the link above)!

Steve McConnell - Code Complete, RAD.

Gang of Four - Design Patterns n(again, few references to this...why?!?!?)

RhysC wrote re: Developer Book Club - Recommendations Needed
on 12-01-2008 7:49 AM

@Sean:

I think there are few references to GoF due to the fact it is so heavy weight. There are many pattern books BASED on GoF that are much easier to read and absorb for devs new to patterns. I have GoF but I dont recommend it too people new to patterns. Its too hard a read. (IMO)

Obviously with out it ther would not have been the more user friendly version like Head First etc

RhysC wrote re: Developer Book Club - Recommendations Needed
on 12-01-2008 7:52 AM

@Sean:

I think there are few references to GoF due to the fact it is so heavy weight. There are many pattern books BASED on GoF that are much easier to read and absorb for devs new to patterns. I have GoF but I dont recommend it too people new to patterns. Its too hard a read. (IMO)

Obviously with out it ther would not have been the more user friendly version like Head First etc

Brig Lamoreaux wrote re: Developer Book Club - Recommendations Needed
on 12-08-2008 12:14 PM

Book List:

Head First Design Patterns (Freeman, Freeman)

High Performance Web Sites (Souders)

Essential ASP.NET (Fritz Onion)

Study Method:

Each week assign one person to summarize a chapter. Each team member reads the chapter and contributes to the discussion.

Avoid:

Too much reading each week. People are busy. Learn in easy bit sized portions

Good Luck!

Sean Kearon wrote re: Developer Book Club - Recommendations Needed
on 12-17-2008 3:20 AM

@RhysC - Thanks for the response.  I've never tried looking at many other pattern books other than Fowler and Gof...I'll give Head First, a go.  Anything that's clear and accessible is good!

devlicio.us wrote re: Developer Book Club - Recommendations Needed
on 04-09-2011 4:58 AM

43130.. Corking :)

devlicio.us wrote re: Developer Book Club - Recommendations Needed
on 04-22-2011 10:46 AM

43130.. May I repost it? :)

devlicio.us wrote re: Developer Book Club - Recommendations Needed
on 06-02-2011 9:36 PM

43130.. Amazing :)

devlicio.us wrote re: Developer Book Club - Recommendations Needed
on 06-04-2011 9:56 PM

43130.. Great idea :)

87rf xxx sefi wrote re: Developer Book Club - Recommendations Needed
on 07-02-2011 3:40 AM

43130.. WTF? :)

Social bookmarks wrote re: Developer Book Club - Recommendations Needed
on 03-23-2013 7:15 PM

rC6yWD Im thankful for the blog.Really looking forward to read more. Much obliged.

awesome moldavian news wrote re: Developer Book Club - Recommendations Needed
on 08-04-2013 4:41 PM

4uL1aP A big thank you for your article post. Want more.

best link build wrote re: Developer Book Club - Recommendations Needed
on 10-15-2013 3:16 PM

GuMGEG I cannot thank you enough for the blog post.Thanks Again. Great.

Add a Comment

(required)  
(optional)
(required)  
Remember Me?

About The CodeBetter.Com Blog Network
CodeBetter.Com FAQ

Our Mission

Advertisers should contact Brendan

Subscribe
Google Reader or Homepage

del.icio.us CodeBetter.com Latest Items
Add to My Yahoo!
Subscribe with Bloglines
Subscribe in NewsGator Online
Subscribe with myFeedster
Add to My AOL
Furl CodeBetter.com Latest Items
Subscribe in Rojo

Member Projects
DimeCasts.Net - Derik Whittaker

Friends of Devlicio.us
Red-Gate Tools For SQL and .NET

NDepend

SlickEdit
 
SmartInspect .NET Logging
NGEDIT: ViEmu and Codekana
LiteAccounting.Com
DevExpress
Fixx
NHibernate Profiler
Unfuddle
Balsamiq Mockups
Scrumy
JetBrains - ReSharper
Umbraco
NServiceBus
RavenDb
Web Sequence Diagrams
Ducksboard<-- NEW Friend!

 



Site Copyright © 2007 CodeBetter.Com
Content Copyright Individual Bloggers

 

Community Server (Commercial Edition)