I’m currently designing a fairly complex piece of software at work, and have to collaborate intensely with 2 colleagues about all decisions, and a number of colleagues about various subsets of the project.
In the process of design, I had a small, very obvious realization that profoundly affects the productivity and pace of our discussions:Â start with what’s good.
I notice that when our meetings devolve into bickering, nitpicking, distraction, or one of the myriad of antiproductive patterns that meetings and discussions are prone to, there is generally a great deal of overlap in our apparently oppositional stances, but people are focusing on the contentious points rather than the what they all agree on.
Consider: Colleague 1 proposes a design pattern (P1) for use for a particular pattern. Another Colleage 2 says “no that’s the wrong pattern for this because of bla bla bla”.   C2 is technically correct. There are a number of flaws in how C1 has expressed his suggestion, but if one takes the time to sketch out the class diagrams and write out what will actually happen during thread execution, one sees that the class-structure imposed by the pattern is indeed a good fit, even if it doesn’t fit all the characteristics the pattern implies.Â
If you nitpick about everything that’s wrong about the idea you get away from the productive part of the discussion, you’re likely to raise the other colleague’s temper and it rapidly becomes unlikely that any productive work gets done. If you start out with a discussion like “okay, what are you thinking of here, how would it work, okay yeah I see what you mean… but you know the term <whatever> is maybe not completely accurate here because of <whatever>, but who cares, the idea is a good one” then you can switch the detail points that you want to fix, but you’ve established some common ground, you’ve made your colleague feel like you appreciate their input and their intellect, and you’ve established a productive, friendly tone that makes the colleague receptive to constructive criticism.
Further, if you are actually wrong in your nitpicking, you come across as less of an asshole.
All this seems really trivial, but it’s amazing how rarely it actually gets practiced.