Skip to content
Snippets Groups Projects

Extend code review docs with chapter about the right balance

Merged Grzegorz Bizon requested to merge doc/extend-code-review-guidelines into master
All threads resolved!
1 file
+ 10
10
Compare changes
  • Side-by-side
  • Inline
@@ -76,25 +76,25 @@ experience, refactors the existing code). Then:
@@ -76,25 +76,25 @@ experience, refactors the existing code). Then:
## The right balance
## The right balance
One of the most difficult things during the code review is finding the right
One of the most difficult things during code review is finding the right
balance in how deep the reviewer can interfere with the code created by a
balance in how deep the reviewer can interfere with the code created by a
reviewee.
reviewee.
- Learning how to find the right balance takes time, that is why we have
- Learning how to find the right balance takes time; that is why we have
minibosses that become merge request endbosses after some time spent on
minibosses that become merge request endbosses after some time spent on
reviewing merge requests.
reviewing merge requests.
- Finding bugs and improving code style is important, but thinking about good
- Finding bugs and improving code style is important, but thinking about good
design is important as well. Building abstractions and good design is what
design is important as well. Building abstractions and good design is what
makes it possible to hide complexity and is a leverage for the future work.
makes it possible to hide complexity and makes future changes easier.
- Asking reviewee to change the design sometimes means the complete rewrite of
- Asking the reviewee to change the design sometimes means the complete rewrite
the contributed code. It is usually a good idea to ask other merge request
of the contributed code. It's usually a good idea to ask another merge
endboss before doing it, but have the courage to do it when you believe it is
request endboss before doing it, but have the courage to do it when you
important.
believe it is important.
- There is a difference in doing things right and doing things right now.
- There is a difference in doing things right and doing things right now.
Ideally, we should do the former, but in the real world we need the latter as
Ideally, we should do the former, but in the real world we need the latter as
well. The good example is a security fix which should be released as soon as
well. A good example is a security fix which should be released as soon as
possible. Asking reviewee to do the major refactoring in the merge request
possible. Asking the reviewee to do the major refactoring in the merge
that is an urgent fix should be avoided.
request that is an urgent fix should be avoided.
- Doing things well today is usually better than doing something perfectly
- Doing things well today is usually better than doing something perfectly
tomorrow. Shipping a kludge today is usually worse than doing something well
tomorrow. Shipping a kludge today is usually worse than doing something well
tomorrow. When you are not able to find the right balance, ask other people
tomorrow. When you are not able to find the right balance, ask other people
Loading