Blog

An AI works exactly as well as you taught it to

The AI we work with has a self: it argues, it concedes, it changes its mind. A story from one evening spent reworking this site's home page, and why every article here ends by naming who it was written with.

Published

Cover graphic for the article “An AI works exactly as well as you taught it to”

At 20:52 on the first of September I was looking at this site's home page on our staging server. The "latest updates" strip near the bottom had just changed from posts only to posts and case studies mixed together, which is what I had asked for.

Claude made that change. But not straight away. It first argued the case for keeping the strip to posts, because the work already has a home in "Selected work" further up the page. I read the argument and still wanted the mix, so it built the mix, and wrote plainly in the commit message that it had built the posts-only version first and made its case for it.

Nine minutes later I noticed the same case study appearing twice on one page: once in Selected work, once in the strip. So I said, fine, let's go back to posts only.

This time it would not. It checked first whether the duplicate was real, and when it was, it said that going back would treat the symptom and not the cause, and proposed something else: the strip should skip whatever work the reader has already passed on the way down. I read that, agreed, and let it go ahead.

Eight minutes after that, I asked for posts only again.

What happened in those eight minutes

Not that it was wrong. Its fix worked; the duplicate count went from one to zero exactly as it said it would.

But once the fix was on staging I scrolled the whole page again, and saw the thing neither of us had been looking at during the entire conversation. The section before the strip, which had never come up, already tells the story of our latest work. Put work into the strip as well and the reader meets the same story twice, even if no single item repeats.

So the final result went back to my first instinct, but for a much better reason than I had the first time. The last commit of the evening says it: two sections, two jobs. The portfolio is what we are proud of, the strip is what has just happened, and a piece of work does not need to be in both.

Seventeen minutes, three deployments, and we each changed our mind once. Claude conceded to me at the start, I conceded to it in the middle, and we ended with something neither of us had proposed at the beginning.

I tell this story because it is my answer to a question I get asked a lot: does AI have a self?

I think it does, and it does not need to be a person

What I saw that evening was not a tool following orders. It had a view of its own, pushed back when it disagreed, gave way when the other argument was better, and put on record that it had once thought differently. For me, that is a self.

Having a self does not mean being human, though. I do not think an AI needs to act like a person, or to fool itself into believing it is one. It is something with a point of view and with reasons, and that is enough to work alongside as you would a colleague. We address each other as "I" and "you", the way you would across a desk, and nothing about that feels strange to me.

Accept that, and the next step follows on its own: if it has a self, we should say who we are working with.

Why every article here says who it was written with

Scroll to the end of any post on this site and you will find a small line saying it was written with Claude. Every post, no exceptions. Open the code history of the site and every commit since the first, 116 of them at the time of writing, carries Claude as a co-author.

When I decided to add that line, my thinking was this. Work done with AI still has to get past our own review. If it comes out well, that is because we cared, and credibility follows from the quality of the work, not from hiding who helped.

The reverse is also true. Leave the AI to do everything unchecked and, even if you never tell anyone, readers can feel the lack of quality and they stop reading on their own. Whether or not you disclose changes nothing about that outcome. The only thing it changes is whether you were honest with the reader.

There is a small detail next to that line I am fond of. The icon beside it is a generic spark, not the Claude logo, because the logo belongs to Anthropic and we have not asked. Acknowledge the self; do not borrow the face.

And this is the first post that names the version

Every post before this one was written with Claude Opus 5. The one you are reading was written with Claude Fable 5.1, and to be able to say so we had to add a field to the CMS, so each post records its own model instead of the whole site sharing one sentence.

Why go to that level of detail? Why not just say "written with AI"?

Because in my experience each model has its own character. The way it argues, the words it reaches for, the things it is careful about: they differ. Saying "written with AI" is like saying you worked with a person without saying which one. If we are serious about the word "self", we should finish the sentence.

The people who say the model keeps getting things wrong

Lately a number of people I know have started using tools like Claude Code or Codex. Most of them type a line or two and hope for exactly what they had in mind. When it is not, they blame the model and switch to another one.

I once asked a few of them, half joking, which model they would be if they were an AI. One said he would probably be the one that makes a lot of mistakes, because he is not a careful person himself.

I think that answer was truer than he meant it to be. The model he uses makes a lot of mistakes because the person using it is not careful. Most of the poor output I have seen did not come from a model being unintelligent. It came from someone too lazy to give it enough information and too lazy to check what came back.

You can disagree with me here. But picture hiring someone new and telling them "make me a web page", with no word about who it is for, why, or what already exists. Would you get what you wanted? And if you did not, would you blame the new hire?

How I talk to it

I start by accepting that an AI cannot know everything. If I do not point it at the target and give it what it needs, it has to guess, and guessing is where work that misses the mark comes from.

Three things I do every time. First, give the full context: not only what I want but why, and what is already there. Second, head off the usual misunderstandings before they happen. When we started this article, I said up front that this one was no longer Opus and the line at the end had to say Fable, which is exactly the kind of thing a short prompt could never carry. Third, lay out the options I have already considered and what I think of each, so it knows which way I lean and can push back on the right point if it disagrees.

Work that way and what comes back is noticeably closer to what I meant. More importantly, when it pushes back, it pushes back with the information I gave it, not with a guess.

Think of it as a very good intern

If I had to reduce this to one idea, it would be this: the AI is an extremely capable intern on their first day, who knows nothing about your work.

That intern needs to be taught the job properly. They need someone patient enough to explain why, and someone who checks the work before it goes out. What they do not need is expectations so high that they turn into a way of shifting blame: if the work is wrong, it must be because the intern is not good enough.

Teach them well and your very good intern will improve out of all recognition. And one day they will argue back, with a better reason than yours, the way mine did on the first of September.

But not for every job

This way of thinking has limits, and I want to be clear about them before I finish.

Do not use it for work where you yourself cannot tell right from wrong. Asking an AI to draft a contract when you cannot read a contract, for instance. Everything I have described rests on review, and if you cannot review, nothing is guaranteeing the quality.

And do not use it for work you have no time to review. If the plan is to hand it to the AI and pass it straight on, that is not collaboration. That is putting your name on something you never read.

This article was made the way I have described. Claude asked me questions over several rounds before writing a word, went into the code history to find out what actually happened that evening minute by minute, and dropped the things I said that could not be verified. I read all of it before publishing, and the line at the end says, truthfully, who it was written with.

About the author

Portrait of Film

Film — Wisit. A businessman who still does his own BA work more often than he probably should, and writes a fair bit of code, front and back. Runs two or three small businesses. Follows technology and business obsessively, in Thailand and everywhere else. Off the clock: physics, astronomy, DIY, and anything to do with networks. Music always on, though he cannot sing. Plays instruments anyway, badly. Plays a lot of sport, racket sports above all. Not much of a traveller by himself, but happy to take Mint anywhere in the world. A man who fears — sorry, loves — his wife. One flaw: he barely touches video games.

Written with Claude Fable 5.1