Voluntary Code Reviews
I'm all for code reviews; but I prefer them to be voluntary.
Reviews can be great for:
- Sharing knowledge and context
- Improving design through another perspective
- Occasionally catching bugs early
But not every change needs one. A dependency bump or a quick readme update? Maybe not. And some feedback is best sought before you even open a merge request: during design discussions, pairing, or quick ad-hoc conversations.
I think this is somewhat linked to Douglas McGregor's Theory X and Theory Y. Theory X assumes people dislike work and must be monitored. Theory Y assumes people enjoy work, seek responsibility, and can be trusted to self-direct. Mandatory reviews feel like a Theory X tool: a guardrail for people you don't trust. Voluntary reviews feel like Theory Y: trusting professionals to know when another set of eyes will help, and when it's safe to move forward.
Theory X cultures can deliver. But so can Theory Y cultures — and they make the work fun and rewarding too.