front matter
forewords
I was lucky. Early in my software engineering career, I worked on teams where collaborative modeling and collective reasoning were the norm. Whenever we didn’t know what to do, we whiteboarded. Sometimes, we were a group of engineers solving a technical problem. More often, we were a cross-functional group that included business and product people, technology implementers, software users, UX designers, a vendor or two, and/or subject matter experts from other teams.
Thinking well together, synthesizing expertise, and learning from each other were critical to our success. We understood, from painful experience, that “all models are wrong, but some are useful.” This doesn’t mean that people make inaccurate models. This means that modeling is the cultivation of shared understanding, not the production of an artifact.
A model conveys a point of view. Modeling integrates relevant points of view into something useful. My teammates and I knew that to design a solution, we had to understand the problem. We had to be in the room where the modeling happened.
Our success depended on creating conceptual integrity, which Fred Brooks said “is the most important consideration in systems design.” We liked to solve hard problems and take on hard challenges. To meet those challenges, we never had the luxury of being 10x individuals. We had to be 10x teams.