The dance of Code Review
That I hope never ends.
A controversial one. But it’s time.
When I started working, I was always waiting to open a PR so my teammates could review it and teach me. Especially the seniors. Especially the great ones I had the pleasure to work with.
And really, I still enjoy it a lot. It’s the place where I’ve learned the most, and where the most humble and open discussions happen. Because code is a pretty personal thing, if you think about it. It’s the way you think, written down. Your decisions, your trade-offs, even your little habits, all out in the open. So when you open a PR you’re handing one of the most intimate things you make to someone else, who will read it, try to understand it, and finally judge it. And then you have to react to that. There’s ego in there. There’s vulnerability. And honestly, that whole awkward human exchange is the essential part. Not the diff itself.
The problem these days…
Reviewer: Are you sure this works?
Author: Don’t know, Claude did it.
Reviewer: Can you help me understand why you took this approach instead of …?
Author: No idea, I don’t understand it either, Codex did it.
And the list of examples one could give is quite long, sadly.
“Social coding is dead“, I read from our own great José Valim, and it’s true. How sad is it to spend time reviewing something, post a comment, and get back either an instant automatic AI response or one copy-pasted from an AI (which is worse).
Everything has changed a lot in the last months. Literally in months. Quite crazy. And I honestly feel sad about it, because of all the years and years spent building processes and routines to make code maintainable, reviewable, predictable. All that real engineering work. With human errors for sure. The same humans who then take the error/bug and fix it. But now, pff. We can barely trust the software these days, because as the AI did it, it’s probably broken somewhere. And we’re coming to see that as normal. Fine, even. Very sad.
And I’m not bashing AI itself. I use it of course. And used well, you can definitely see improvements in your day-to-day workflow and productivity. But some. That 10x and all the marketing around it is nonsense. At least if you care about ownership, understanding and the quality of things. At least if you’re working inside your domain expertise. Suddenly so many software experts around 🙈.
The knowledge is still there, and the people still fighting for quality are still there too. And we always will be. Code review is a key part of that.
So I hope we keep doing code reviews the right way, with AI or not. But especially that we keep teaching each other, putting real effort into writing good code and actually understanding it, and making a better world by learning together. As humans, with other humans.
And for that… you need to know what you’re doing.