Every day I go by bike to work, a 35-45min ride each direction. It gives me time to think, reflect on work, but also family and random thoughts. Something that's been on my mind recently is if the (human) code reviews are about to be killed by AI?
The seed to my thinking was planted in a recent Lunch N learn
at work
by one of my colleagues, let's call him Björn. The session was pitched as
Watch Björn create a website from scratch using AI without writing a single
line of code!
. Björn showed us how he created a basic but functional website for managing
KYC-data (Know-Your-Customer for those not in the banking business) using
Cursor, one of the hot AI IDEs.
I found it both impressive and not impressive at the same time. Sort of like one of the Low-Code or No-Code tools - they make great demos, but break down easily for more complex real world use cases. But what caught my ear was a remark Björn made towards the end:
For the last week I have had the AI write all my code!
I'm known for doing thorough code reviews. I want to understand the code I'm reviewing, and I always try to find things to comment on. It's not always there's anything worth commenting on, but many times there is. I see the code review as a chance to help my fellow developer, but also to help other developers including myself that come across the code under review in the future. It also helps me understand how our system works.
When I review Björn's code, and I know that the code was written not by Björn but by some AI, how will that affect me? Since Björn used an AI to write the code, any comments from the review will for sure be handled by the AI and not Björn directly. Why then should I review the code? Can't Björn do it?
The above review type is the typical
all-changes-must-be-reviewed
type of code review. But there are other
reasons to review code. One common case is to understand how to implement a
new feature, or find out why a bug happened. These kinds of reviews are also
under threat. Not because an AI wrote the code, but because an AI can do the
review for you and provide a summary instead.
And why wouldn't you use the AI in these cases? Instead of reading through 10 classes over two projects it's much easier if an AI can just provide the answer, and I can carry on with my real task. I will be happier since I didn't need to read through someone else's spaghetti, my client/customer/PO/boss will be happier since I could skip a step and so on.
Finally, there are reviews done for curiosity or learning, like why many find
it interesting to read the
DOOM or
Quake source. These reviews
should be the most safe
ones. Just like I enjoy reading a book even
though a summary of its content is just a search away I could also enjoy
reading the source of DOOM. However, I think it's safe to guess that even if
some do most professional programmers don't read other developers code for
fun.
So what does this mean? I do not know, and I doubt anyone else does either.
Victor 2025-04-03