Commit 63b57e5e authored by Robert Speicher's avatar Robert Speicher

Merge branch 'doc/extend-code-review-guidelines' into 'master'

Extend code review docs with chapter about the right balance

[ci skip]

See merge request !7838
parents 14046b9c ebef1a84
...@@ -74,6 +74,32 @@ experience, refactors the existing code). Then: ...@@ -74,6 +74,32 @@ experience, refactors the existing code). Then:
- If you set the MR to "Merge When Build Succeeds", you should take over - If you set the MR to "Merge When Build Succeeds", you should take over
subsequent revisions for anything that would be spotted after that. subsequent revisions for anything that would be spotted after that.
## The right balance
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
reviewee.
- 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
reviewing merge requests.
- Finding bugs and improving code style is important, but thinking about good
design is important as well. Building abstractions and good design is what
makes it possible to hide complexity and makes future changes easier.
- Asking the reviewee to change the design sometimes means the complete rewrite
of the contributed code. It's usually a good idea to ask another merge
request endboss before doing it, but have the courage to do it when you
believe it is important.
- 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
well. A good example is a security fix which should be released as soon as
possible. Asking the reviewee to do the major refactoring in the merge
request that is an urgent fix should be avoided.
- Doing things well today is usually better than doing something perfectly
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
about their opinion.
## Credits ## Credits
Largely based on the [thoughtbot code review guide]. Largely based on the [thoughtbot code review guide].
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment