koldfront

AI and code review #programming #ai

🕛︎ - 2025-11-02

The thing I value most in a fellow programmer or developer is a rather ill defined and loose concept of "good taste".

"Good taste" is a very subjective thing, which encompasses a lot of stuff - it can be all kinds of things, from naming things consistently, choosing a reasonable level of abstraction, using tools in ways where they work well, all the way to not using tabs but spaces, and having a favourite text editor¹.

One side effect of using AI to program I think I have observed recently happens during code review.

Sometimes, when doing code review, I will see some solution that I don't like or understand, and I will ask why it was done in that way, and not in [my preferred] way.

Usually this sparks a discussion: the author will "defend" their choice of solution, perhaps pointing out some good reasons that I have overlooked (as a reviewer, you are usually not as deep into the code and problem space as the author, so this happens more often than you'd like/think) or some drawback of the alternative I am proposing that I didn't think of.

It is like the IKEA effect, where if you have put something together, however shabbily, you tend to get more attached to it.

I, as a reviewer, learn about how they are thinking, what made them get to the solution they implemented, and hopefully my questions give them some different perspectives on what might be worthwhile to consider.

Regardless of whether we agree on keeping the current solution or changing it, we both learn something about the code, the solution, and each other's way of thinking. Either of us, or both, expand our idea a little bit about what our shared concept of "good taste" is.

However, recently, I think I have observed this not happening. Instead of engaging in a discussion of the solution, the author will just say "Ok, I will change it", and ask their AI agent to rewrite the code in the way I suggested.

Since I am always right and always knows better than everybody else, that's of course always great.

Except... is it, now? I don't learn anything about why they made those "wrong" choices, and they don't learn why they should have done differently in the first place. And if my suggestion was bad, for some reason or another, my feedback doesn't get challenged and, perhaps, rejected. Sometimes a third solution might have emerged from our discussion.

When you think about a solution and implement it, you feel some sort of responsibility for - and maybe even pride in - in your choices. If you just had an AI minion do it for you, and it can redo it easily, however big the change might be, you don't care.

But somebody has to care.

Somebody has to care about solving the problem in a reasonable way, about making things that last, about quality.

Somebody has to have good taste.

AI doesn't.

"Ah, but that's where I as a human manager of AI agents come into the picture," I hear someone answer. Yes, perhaps, right now, or in the beginning, but will you keep doing that? Will your taste improve? Or will you become lazy and just accept what slop the AI spits out with less and less discrimination, as time goes by? Will you hone your skills and become better at what you do? I don't think so. The feedback loop isn't there, the gradual improvement of our common understanding of good taste is lost.

I don't want to be a manager of AI agents, and I think you don't want to either. Not if you want to develop good taste, learn, and become better at what you do.

Yes, a wise man once said that laziness is one of the great virtues of programmers - I think I'll add that it doesn't mean mental laziness, but rather laziness expressing itself in avoiding spending time doing repetitive and unchallenging tasks.


¹ While I prefer Emacs, it doesn't matter which one. (Although I will deduct points for having an IDE as your favourite, of course.)

Add comment

How to comment, in excruciating detail…

To avoid spam many websites make you fill out a CAPTCHA, or log in via an account at a corporation such as Twitter, Facebook, Google or even Microsoft GitHub.

I have chosen to use a more old school method of spam prevention.

To post a comment here, you need to:

  • Configure a newsreader¹ to connect to the server koldfront.dk on port 1119 using nntps (nntp over TLS).
  • Open the newsgroup called lantern.koldfront and post a follow up to the article.
¹ Such as Thunderbird, Pan, slrn, tin or Gnus (part of Emacs).

Or, you can fill in this form:

+=