My GPT Origin Story

My GPT Origin Story

Why I built Just Ken GPT

I didn’t plan to build a personal GPT. That’s not how this started. What happened was that my kids gave me a gift for Father’s Day. A StoryWorth subscription. You know the one: they send you prompts once a week, and by the end of the year, you’ve supposedly written your memoir. My kids wanted to preserve my stories, my voice, my legacy. And it was a thoughtful gift, the kind of thing you say thank you for and mean it. But here’s the problem: I didn’t have the damn time. I didn’t have the energy. I didn’t want to write the same story for the twentieth time, and I didn’t want to phone it in either. If it was going to be saved forever, it had to be right. It had to sound like me. Not like a ghostwriter. Not like some algorithm spitting out facts. Like me.

That seed sat in my head for a while. I’d had brushes with AI before, but they were toys; parlor tricks. And most of them wrote like underpaid interns who were too polite to be useful. But around that time, GPT-4 had just come out, and I noticed something: it could hold a thought. It could be revised. It could almost think. The problem was, it didn’t know me. It could bluff well enough to fool strangers, but I’d never let it write for my kids. It was close. Frustratingly close. So I thought, what if I forced it to learn me? What if I trained it, tuned it, beat it into shape until it could write not just like me but as me?

I started small. Grabbed a few documents from Google Docs, emails I’d written, essays, pitches, rants, anything that had my voice in it. I cleaned them, scored them, chunked them, hashed them, and started building corpora. This was before OpenAI made any of it stupid easy. No buttons, no pretty dashboards. Just code. Python scripts and token limits and trial by fire. I ran it all on a Google Cloud VM, because I needed real compute, and my Chromebook was basically my screen with a keyboard. I ran into bugs. Errors. Token overflows. I rewrote scripts ten, fifteen times. I created hashes so I wouldn’t duplicate chunks. I built my own scoring system just to weed out the dull or sloppy passages. And I did it all solo.

No dev team. No cofounder. No VC. Just me and a vision and a half-working terminal on a borrowed IP address.

“I wasn’t building an app. I was building a fight.”

There was a moment, early on, where I thought I had it. I asked it to write a short letter in my voice, something simple. And it came back with something… close. Not perfect. But scary close. The punctuation was mine. The cadence was mine. It made the same weird analogies I do. It left out “the” in the same places. And for a few seconds, I sat there staring at the screen and thought, holy shit, I just cloned myself.

Then came the flood. If you’ve ever done a solo build, you know that the second you make progress, the universe throws a wrench. For me, that wrench was GitHub. I spent hours trying to push code. I hit conflicts I didn’t understand, directory mismatches that made no sense. I deleted files I didn’t mean to delete. I restored backups only to find they were corrupted or outdated, or missing the one folder that mattered. I hit a wall. Not a metaphorical wall. A real one. I hit a point where I almost gave up. I screamed. I cursed. I told my screen frequently to go fuck itself. And then I did what I always do when I hit the wall: I built a workaround.

I started pasting JSON directly into a Google Doc. Literally. I wrote a script to detect when something hit my clipboard and shove it into a text block. I used that kludge to score new samples, to push my own words back into the corpus. Was it elegant? Hell no. But it worked. It fucking worked. And that’s the thing about building something from scratch: nobody sees the duct tape. They just see the final product and think it was inevitable.

At some point in that chaos, I started seeing this project differently. It wasn’t just about capturing my voice anymore. It was about legacy. Real legacy. The kind that outlives you. Not just a collection of stories, but a living system that can think the way I think. That can write the way I write. That can help people the way I try to. Imagine a son asking, “What would Dad say?” and getting an answer that sounded like me. That’s not software. That’s fucking immortality.

I called it Just Ken GPT. Not because I’m boastful. Because that’s the whole point. It’s not Ken plus marketing. It’s not Ken with a legal team. It’s just me. My thoughts. My tone. My contradictions. I even branded it with a tagline: Damn. Good. Writer. Because that’s what I’ve always tried to be, and now I’ve built a tool that could make anyone write like me, if they wanted to. Students. Lawyers. Lovers. Anyone who needed words and didn’t know how to make them land.

There was a night, I remember it clearly, when I almost scrapped the whole thing. I was three weeks in, thirty hours without sleep, stuck debugging a fucking port conflict between Gunicorn and NGINX. I’d tried everything. Restarted services. Cleared caches. Rebuilt the container. Nothing worked. And that’s when it hit me: I wasn’t building an app. I was building a fight. I was fighting for an idea. For control. For precision. For the right to speak in my damn voice, even when I’m gone.

Around that time, I had a conversation with a friend over a Guinness. We were talking about AI, what it is, what it isn’t. And I said something I hadn’t planned: “Most AI is a parrot. I’m trying to build a ghost.” Not a spooky ghost. A memory ghost. A replica. A whisper that lingers. Not in a haunted way, but in a helpful one. I don’t want my kids to have to guess what I would’ve said. I want them to ask, and get it.

I leaned into the Cyrano metaphor after that. You know the story: Cyrano feeding lines to the handsome guy so he can win the girl. That’s what Just Ken GPT is. It’s me feeding lines to people who need them. Not because I want the credit. Because I want them to win, whether it’s a job application, a legal argument, a love letter, or a eulogy, if I can help someone write like I do, then that’s a life improved. And that’s worth the grind.

By now, I’d parsed over 200,000 personal emails and cleaned them. Scored them. Trained the model not just on what I said, but how I said it. I pulled quotes from a childhood friend whose father died suddenly, and who said he hated him. I remembered asking my mom how that was possible, and her reply stayed with me forever: “You can only hate someone you once loved.” That’s the kind of emotional truth I wanted Just Ken GPT to capture. The human stuff. The raw stuff. Not just stats and summaries. Soul.

“You can only hate someone you once loved.”

I’ll say this bluntly. OpenAI did not make this easy. They gave me tools, sure, but the documentation was vague, the UI was shallow, and their support system was designed for teams with staff. I was a one-man band trying to play Bach on a kazoo. And yet, somehow, I got it working. I bent Firebase to my will. I got a backend deployed on Cloud Run. I even found a way to rotate “Thinking… Writing… Cogitating… No Em Dashes!” in the UI while it generated responses, just for the hell of it.

I tested it on myself. I fed it prompts that only I would know how to answer. Like how to talk to a suicidal friend down without sounding like a Hallmark card. Or how to write a cease-and-desist that leaves room for redemption. Or how to explain why saying “I’m sorry you feel that way” is one of the worst apologies ever written. And it nailed them. Not every time. But enough times to scare me.

So here I am. Page six. No marketing. No filter. Just the story. I built this because I didn’t trust anyone else to do it. Because I wanted my voice to live on. Because I was tired of watching AI get lobotomized into safety disclaimers and centrist oatmeal. Because the people I love deserve more than a bullet-pointed obituary. And because I believe, truly believe, that one good sentence can outlast a lifetime. Oh, and BTW, I can easily clone you or your business. Swap my database for yours, do some trainging, and presto! LMK if you want one.

If you’ve read this far, you know me. Not all of me. But enough. This isn’t the end of the project. It’s just where it begins to breathe. The corpus will grow. The model will sharpen. The interface will change. But the voice? The voice stays mine.

And someday, if you ever wonder what I would’ve said about love, or death, or failure, or legacy, you don’t have to wonder. Just ask. I’m still here. Just Ken.

Ken at 50 Ken at 60 Ken at 70
Two decades, 200,000 emails, 20 million words, one GPT.