“All truths are easy to understand once they are discovered; the point is to discover them.”
That’s some pretty smart stuff from a guy who didn’t have one-tenth of the scientific knowledge available to him that we have today.
So, if we knew about this fundamental observation about truth before we even knew all the planets in our solar system, why is it still so hard to implement 400 years later?
Because we all also have a fundamental need to want to be recognized for our thoughts, our opinions, our contributions; sometimes, so much so that we block out what others have to say. We’re so focused on getting our point across that we’re not even listening to the others on our team.
Practice makes perfect
Breaking your natural tendencies to want to be heard isn’t easy, but it’s an important step in becoming a highly effective developer. It will take some practice and some time.
Stack the deck in your favor by scheduling weekly code review meetings with your co-workers. Structure the meetings so that everyone is given a specific opportunity to speak and be heard by the rest of the group. If everyone knows in advance they will get an opportunity to share their thoughts, people will be less anxious about their need to be heard.
Mary Poppins was right
Constructive criticism is certainly better than destructive or negative criticism but that doesn’t mean it’s any easier to take. If there is such a thing as an economic scientist, Warren Buffett is certainly it. Part of Buffett’s financial success can be attributed to his philosophy of never criticizing anyone.
While that may not be practical in developing a software application, there are ways to ease the blow. Rather than point out what’s wrong with someone’s approach, suggest an alternative way to solve the problem, preferably based on your experience so your alternative suggestion has more credence to it instead of just being your opinion. Maybe supernanny Mary Poppins said it best, “A spoonful of sugar helps the medicine go down.” Accentuate the positive when evaluating others’ contributions
There’s a tool for that
Build on your real-world success by supplying tools that support your mission of understanding others before seeking to be understood yourself. Some code review tools have collaboration tools built in to facilitate understanding among teams. They track comments, allow you to search conversation threads, and give everyone on the team the same view of the project in real-time or asynchronously. Some offer chat sidebars to help you bridge geographical gaps too.
Look in the mirror
Putting a more personal, maybe even realistic spin on the science of understanding, psychologist Carl Jung noted that “Everything that irritates us about others can lead us to an understanding of ourselves.”
And so it goes. If you can train yourself to listen first and speak only after you’ve understood what you’ve just heard, your development projects are likely to move more smoothly and more quickly. You will become a more effective developer and your co-workers will see the difference and perhaps take your lessons to heart.
Next up in our series: Habit #6: Synergize
- The 7 Habits of Highly Effective Develovers: Habit #4: Think Win/Win
- The 7 Habits of Highly Effective Developers: Habit #3: Put First Things First
- The 7 Habits of Highly Effective Developers: Habit #2: Begin With the End in Mind