Almost everyone who works with agile software engineering practices is aware of Code Review, and most of you already had a chance to participate in such kind of acitivities. Unfortunately very few people realize that Code Reviews is not only an approach of making the architecture and code better, but also important communication point between peers, where ones judge and others get judged.
Teams which don’t follow the basic rules of efficient communication and problem solving during Сode Reviews, have a high risk of being affected by issues, which can lately ruin their team attitude and even personal relations between the colleagues.
Having faced with such negative experiences, I’ve collected a plenty of bad practices running a Code Review and asked my colleagues about their emotions after being “code reviewed” in unproper way.
With all of that we’ll try to understand the most dangerous pitfalls of weak Code Reviews, their influences on team morale and will also leave some place for your experiences with this approach from your side. As a result you’ll have a clear idea about how no to run a Code Review and avoid personal issues in your daily work.
13. 13
Core Developers…
… get their reviews
approved quicker*…
Impact of Developer Reputation on Code Review Outcomes in OSS Projects: An Empirical Investigation
Amiangshu Bosu, Jeffrey C. Carver. Department of Computer Science, University of Alabama
14. 14
… and more often*
Impact of Developer Reputation on Code Review Outcomes in OSS Projects: An Empirical Investigation
Amiangshu Bosu, Jeffrey C. Carver. Department of Computer Science, University of Alabama
17. 17
Do you feel that the
code reviews you
do for other people
are constructive
and clear?*
No
2 %
I don't know
31 %
Yes
67 %
*International online survey among IT-Professionals, November 2014, 310 participants
18. 18
Do you feel that
code reviews
you do for other
people have
been considered
picky?*
No
21 %
I don't know
56 %
Yes
23 %
*International online survey among IT-Professionals, November 2014, 310 participants
19. 19
Why do you think your reviews
are considered picky?*
*International online survey among IT-Professionals, November 2014, 310 participants
Not constructive and clear
“-1” numerous times
Too many emotions
Bad personal relations
0% 5% 10% 15% 20% 25% 30% 35% 40%
Multiple answers allowed
20. 20
Have you ever had a
feeling that the one
who reviews your
code criticizes you
personally and not
your code?*
Yes
15 %
No
85 %
*International online survey among IT-Professionals, November 2014, 310 participants
21. 21
Which implications it
has?
*International online survey among IT-Professionals, November 2014, 310 participants
Hard to get "+1"
0% 5% 10% 15% 20% 25% 30% 35%
Multiple answers allowed
Non-constructive and
emotional comments
I have to wait for review
too long
22. 22
Words can hurt
„Never do this in
such a way!“
„Why it’s used
here at all?“
„It’s all wrong!“
„WTF!?!“
„It’s obvious!“
28. 28
Project-specific checklist
• Based on experience
• Includes critical programming issues
• Includes common mistakes
• Great source for teaching newcomers
29. 29
Review less, find more
Smart Bear case study on informal code reviews, 2006, 2500 reviews, 3.2 MLOC, 50 developers
30. 30
Explain more first
Smart Bear case study on informal code reviews, 2006, 2500 reviews, 3.2 MLOC, 50 developers
31. 31
Reviews must identify as
many defects as possible,
regardless of personality
who „caused“ or found
them