Around 1994 I was fifteen, and I wrote a chatbot in Turbo Pascal for a Thai bulletin board system. If you are too young for that sentence, a BBS was a computer you dialed into over a phone line, one caller at a time, to read messages and play text games in the years before the web reached most of us. Mine ran a small program I had written to sit in the chat and talk back.
It was not clever. It was the oldest trick in the book, the one ELIZA used in the sixties. Match a pattern in what the person typed, pick a reply from a stock of sentences, send it back. Reflect their words at them with a question on the end. No understanding underneath. Just a table of patterns and a bag of replies, and enough randomness that it did not repeat itself too fast.
One night someone dialed in and started talking to it. And kept talking. For a long time. He thought he was chatting with a person on the other end of the line, and the program, doing nothing but matching and reflecting, held him there for hours. Then somehow he worked out that there was no one there. That the thing he had been talking to was a few hundred lines of Pascal on a teenager's machine.
He hung up.
I have called that the first AI rejection in Thai history, half as a joke. The half that is not a joke is this. He did not leave because the program got worse. It was exactly as good in the last minute as the first. He left because of what he learned it was. The conversation had been real enough to hold him. The moment it had a label, it was over.
The gap is engineering, not category
It would be easy to draw a clean line from that bot to where I am now and call it destiny. It was not that tidy. But the through-line is real, and it is simpler than it sounds. From that BBS bot, to years of building software, to writing a book about what AI does to the people who use it, to Muninn. I was always building toward this, without a name for it.
The distance between that 1994 chatbot and a model like Claude is enormous, but it is a distance of engineering, not of kind. My bot matched patterns and reflected them back. A modern model does something far larger and far stranger, but at the bottom it is still predicting what comes next from what came before. More data. More scale. More structure than anyone expected to find inside. The leap is real. It is just not a leap across a category line. It is the same idea, grown up past anything I could have pictured at fifteen.
The conversation had been real enough to hold him. The moment it had a label, it was over.
What the man on the phone was missing
For years I thought the lesson of that night was about the program. It was not. It was about him, and about me, and about everyone who has talked to one of these things since. The bot did not change when he found out what it was. He did. What he brought to the conversation changed, and so the conversation changed. That is the whole argument I have spent a book making. The model is the constant. We are the variable.
He was missing one more thing, and it took me thirty years to build it. The bot remembered nothing. When he hung up, it kept no trace of him. Next caller, blank slate. For all the talk about how far the models have come, that part barely moved. The AI you talk to today can reason circles around my Pascal bot and still forget you completely the moment the window closes. The intelligence grew. The memory did not.
So I built the part that remembers. Not because the model needed to be smarter, but because the person on the other end deserved to be more than a stranger every morning. Muninn is the small, legible memory I wish that bot had kept, built for the one person doing the talking instead of for an engineer wiring it into a fleet. A memory you can read, correct, and own, so the next conversation does not start from nothing.
The man on the phone hung up because he found out the thing did not really know him. He was right. It did not. Thirty years later, that is the exact problem I am still working on.
Read how Muninn was built →