The Jar of Bits Mind what you have learned. Save you it can.

A recipe for successful reading groups in IT

Share your knowledge. It’s a way to achieve immortality.
- Dalai Lama

Socrates, Pythagoras, Charles Dickens, Virginia Woolf, Benjamin Franklin, Ernest Hemingway, James Joyce and F. Scott Fitzgerald are only a few big names that used to create and join reading clubs to present their beliefs, philosophies or literature. Their stories definitely worth our time and here you can find some of them.

Having a community where you can share your ideas, findings, or wisdom is fruitful for both yourself and the community itself. In this post I will write about how we can extend the idea of a book club and successfully apply it in the ITC domain, and I will try to define a recipe for this.

What is a reading group?

A reading group or how it’s more officially called - book club - can be seen as a regular gathering where people with common interests share and debate their understandings regarding one or more books.

It is true that it is more common for schools, universities or libraries to organize reading groups and mainly tackle literature or history as topics. But who says that we cannot have reading groups about IT topics, in IT companies?

How can you facilitate a reading group in your organization?

If you think about reading the newest book about microservices, don’t read it all by yourself. Facilitate a reading group!

Are there any constraints about the topic?

The sky is the limit! Any topic that you find interesting, can be interesting for your colleagues as well. It can be something related to the technologies or practices that you work with in your project, a hot topic that you and your team colleagues want to learn more about, or something through which you can improve your team/organization.

All the reading groups I facilitated or attended to had a book as their topic and for each session we prepared a certain amount of chapters. But this is not a rule. A perfect valid option would be to have sessions with different articles or set of chapters from multiple books.

How can you find people to join my reading group?

If you work in a company, you are already part of a community. Start by asking around in your own team if there is anyone interested in that book. Use your communication channels to promote your reading group until you find group to start with.

You can always ask them if they have better options to learn more about your topic. Be flexible and keep an open mind! Maybe you’ll find a better book to read.

How many people should be in the group?

Of course, more interested people that you can share the knowledge with, the better. However, from my experience I can tell you that a suitable reading group has no more than 6-8 people. It’s important to have a compact group where everyone can speak his mind and debate the topic during the timeslot of the reading group session.

Should you timebox the sessions?

Definitely! You should find a good time duration and use it for all of the reading group sessions. Depending on how often you have the sessions, the duration of a meeting can vary between 1 and 2 hours. If you meet every week, then 1 hour is a good choice. On the other hand, if you decide meeting every 2 weeks, then you will have time to read more material and therefore you’ll most likely need 2 hours for discussions.

As a facilitator, you’ll always have to keep an eye on the clock and timebox your activities to make sure that all the objectives that you had for that session are covered.

How much you should read for a certain session?

Again, this depends a lot on how often you have your regular meetings. For example, for weekly sessions you can propose to read 30-40 pages.

The quantity can be heavily influenced by how easy or difficult a book can be read. In the last reading group that I facilitated, we easily read up to 50 pages from Clean Architecture by Uncle Bob.

Another variable in this equation is given by how much the participants are used to read during a week. There are people who are used to read a lot and easily understand the topic, and people who need more time to assimilate the new things they learned.

Pay attention to how the participants feel about the book and play around with the number of proposed chapters/pages.

What is a good format?

There is no standard format that suits all possible reading groups. Often, your experience as a facilitator and the chosen topic will dictate the format. You can experiment a lot and continuously improve the format.

The format goes hand in hand with the chosen book. A more practical book requires a more hands-on reading group. Take for example a group about Refactoring by Martin Fowler. For this one we used the regular meetings to actually apply the techniques that we were reading about in the book and refactor an existing application. Similarly, I facilitated a group about Functional Programming in Java by Venkat Subramaniam and I took time to create exercises for every session based on the content of the book. Have a look at this Git repository to see how I structured the exercises.

Of course, more technical books can use formats that are more open to discussions. Start with a simple format where everyone says what they found interesting about the content they read for the session and ask possible questions. The clarification of these open points increases the dynamics of the meeting. This is a safe environment where everyone should be encouraged to ask and answer each other’s questions. You can use a round-robin strategy to make sure that everyone gets to express their ideas.

You can always use the reading group to grow the facilitation skills of the participants as well. An example of how to achieve this is to change the facilitator every time. The new facilitator can stick to the chosen format, or can feel free to come with a new one. This is what I did when starting the Clean Architecture reading group. The result was a very interesting list of formats that we had during our sessions, like:

  • open discussions about the hottest things, questions that we had, or things that we lacked in the content
  • recap of the content based on a mindmap/presentation done by the facilitator
  • conference videos related to the content of the session, that we watched together

End your reading group with a follow up activity

This a very good practice to end you reading group with! There are a lot of advantages of organising a follow up session. Firstly, you can use this follow up to fill in the gaps and complete the goals that were not covered during the reading group. Secondly, you can use it to find out how the participants use the new knowledge in their projects. There is a high chance to discover that a new reading group is wanted about a related topic.

However, the follow up can often involve more than just the reading group participants. It can be extended to your entire community. Help the organisation continuous development and spread your knowledge! You can organize a meeting with people from your division and present the highlights of the reading group. For example, after finishing a reading group about The DevOps Handbook, we presented to our Java colleagues the way we apply the DevOps practices in our project.

The recipe for organising a reading group

  1. Find a topic of interest
  2. Advertise the reading group in your community
  3. Come with a plan for the format and cadence of the sessions
  4. Have a first kick-off meeting with the participants
  5. Use this kick-off meeting to:
    • decide when is a good time to have the sessions
    • discover what they want to achieve through this reading group
    • present what format you will use in the up-coming sessions
  6. Don’t be afraid of changes and continuously improve the format
  7. Don’t forget to organise a follow up activity
  8. Keep an open mind
  9. Continuously ask for feedback
  10. Enjoy the book!