Effective Coauthoring: Tips and Techniques
Coauthoring a book can be a challenge. While the authors share a common goal, each might have a different writing style, voice, and writing cadence, as well as specific ways of organizing a chapter. Most of these differences are easily remedied through an initial virtual session where the authors agree on a consistent style, format, voice, and so on, with occasional follow-on virtual sessions to ensure consistency. However, in our experience, this is not enough.
Between the three of us, weβve coauthored five highly successful technical books over the years. This blog post is about three techniques that have helped us overcome some of the challenges of coauthoring, with a particular emphasis on one of the most useful techniques: the in-person experience.
Create a Narrative Arc
Everyone loves a good story. Stories capture our attention for one reason: They have a solid narrative arc, a literary term for the path a story follows. Itβs what gives any story a clear beginning, middle, and end.

A good story starts out with exposition to set the scene, introduce the characters, and communicate the stakes. As time progresses, the tension increases, conflicts arise, and the story becomes more complex. Finally, the climax of the story unfolds, leading to the resolution and ending. This is how great books are writtenβincluding technical ones.
The first thing we do in any book project with OβReilly is to collectively establish the narrative arc. This allows us to focus on telling a story about our subject.
Involve Your Editor
We attribute much of our success to heavily involving our editor in the entire writing process. Weβve learned that having our editor understand our narrative arc and our style and voice choices pays off in spades. Your editor is not there just to revise your grammar: They guide you through the writing process, teaching you better writing skills along the way and ensuring consistency throughout the book.
We include our editor in our weekly meeting calls and our constant text and email exchanges. She essentially functions as an additional coauthor and adds a tremendous amount to the overall finished product. Make no mistakeβthe editor makes all the difference in the world, not only to the finished product but to the overall writing experience.
For each book, we create a shared Google spreadsheet that helps all of us (including our editor) remain organized. Itβs our source of truth for which chapters each author will draft, complete with each chapterβs deadlines and current status. It also includes room for short notes on each chapter. Itβs always open during our weekly meetings.
Meet in Person
While the first two tips help coauthors stay organized and focused on a common goal, by far the most valuable technique we use is periodically meeting in person. We meet at least twice per book, sometimes more if we can arrange it logistically. Before each meeting, we all contribute to an agenda, listing things we are struggling with or want to discuss. We meet over a long weekend, starting Friday afternoon and going through Sunday. We make sure to take breaks and have fun too: We go out to a nice dinner each night and play board games well into the evening.
This might not seem necessary, given the ease of virtual meetings, but the results of these in-person meetings have been staggering. We rotate the location of the meeting between coauthorsβ houses to ease travel costs. Although scheduling and traveling to in-person meetings can be expensive and logistically challenging, every time weβve done it, weβve come away with new ideas and fresh energy. We are convinced none of these creative ideas would have emerged without face-to-face discussion. Thereβs something about discussing the book in-person that brings new ideas and insights to light. Each time we meet in person, we discover a new angle or aspect of the book we are working on.

Here are some examples of how our in-person meetings have significantly influenced our books:
- When we were planning the first edition of Fundamentals of Software Architecture, we decided to create comparison charts rating the pros and cons of each of the architectural styles we were writing about, but struggled with getting the granularity right. After much frustration, we decided to meet in person and dedicate the time to the comparison charts, resulting in the final version of the well-known star-rating charts found in the book. It was this experience that convinced us that in-person meetings are an invaluable part of the success of a coauthored book.
- While writing Software Architecture: The Hard Parts, we found ourselves struggling with how to contextualize each chapterβs topic. When we met in person, we came up with the idea of starting each chapter with dialogue showing a fictional team undergoing a large migration from a monolithic system to a distributed one.
- When writing Head First Software Architecture, one of us was struggling with a particularly difficult chapter. After numerous virtual meetings full of suggestions and three revisions of the chapter, it still wasnβt quite right. It wasnβt until our in-person meeting that we all saw itβthe chapter was literally upside down. We inverted the chapter to build up to the big picture rather than starting with the big picture, and the chapter became one of the best-written ones in the book.
- Weβre currently writing a book called Software Architecture Patterns, Antipatterns, and Pitfalls. We created a template for everything we wanted each pattern to cover, but it didnβt quite work for the chapters on antipatterns and pitfalls. Through all our weekly virtual calls and numerous side emails and texts, we simply couldnβt seem to get it rightβsomething was missing. It wasnβt until our first in-person meeting that we found the solution: changing the generic section heading βContextβ to a chapter-specific question that gets right at the point of the chapter and provides context for the antipattern.
However, that wasnβt the magical piece. Once we all saw how well this worked for the antipatterns and pitfalls, we decided to use this technique for all the chapters. Now each chapter of the book starts with a motivating question for why this pattern, contextualizing it for both the author and reader and making the table of contents more useful. Weβre confident this simple piece of brilliance would never have happened through virtual meetings. - At that same meeting, we also worked on our other current project, Architecture as Code. We changed the order of the chapters to fit a better narrative arc as a result of an intensive in-person gathering. Without being in person and seeing the overall book flow together, the narrative arc would likely not have changed to the new and improved one.
If youβre coauthoring a book, we highly recommend having at least one in-person gathering, if logistics allow. The success of our books should be testimony enough that this technique works.






