Skip to main content
Back to blog

I Built This in Private for Five Months

build-in-publiclaunchjanus

The site you're reading has been finished since April.

Not polished. Finished. Homepage, services, contact form, blog. It all worked. And from March until last week, every page of it sat behind a login screen that exactly six email addresses could get through.

I told myself I was being careful.

What I was actually doing

Some of it was real.

The concierge on this site went through three backends. The first one ran on a server I managed myself. That server is gone now, and when I went looking for it months later, the IP address had been recycled and handed to a stranger. There was still a DNS record on one of my domains pointing straight at it. Someone else's machine, answering to my domain name, for months.

I found that last week. I deleted it the same day.

That happens when you build alone and nobody checks your work. It's also the exact kind of thing I get paid to find in other people's environments, which is a humbling way to spend an afternoon.

The rest of the delay wasn't real work. It was eight rounds of review on a site nobody could reach. Every review produced a list, every list produced work, and every round of work justified another review. That loop has no exit. Nothing inside it ever says "ship."

Meanwhile the contact form hadn't changed since March 12. The homepage hadn't changed since April 3. The two pages that turn a stranger into a conversation were done, and I sat on them for four months.

What's running now

The concierge is called Janus, after the Roman god of doorways. It runs on Claude. Ask it something and it answers in your words, not from a script, and when it doesn't know it says so and points you at me.

Underneath it there's a bot check on the endpoint, so nobody can drive my API key as a free chatbot. There's a rate limit that cuts off anyone hammering it. The whole thing streams token by token, and if the model goes down the page tells you to email me instead of spinning forever.

None of that is visible to you. That's the point. You get a box you can type in.

I also rebuilt the chat window five separate times because of a bug that made it render a blank screen. Five. Each fix was for a different symptom of the same underlying mistake, which I only found by sitting down and reading the code instead of patching what I could see.

The certificate, and the thing it points at

I finished IBM's Generative AI Engineering Professional Certificate while this was going on. Sixteen courses, about six months of evenings.

The contents are the part worth naming: retrieval-augmented generation, LangChain, vector databases, fine-tuning, model evaluation, PyTorch. The last course isn't a quiz. You stand up a vector database and ship a question-answering bot on top of it.

That's the same stack the concierge on this page runs on.

I've written before that most of the AI market is on the using side while charging building prices. I didn't want to be that, so I did it from both ends. Learn how these systems are actually assembled, then assemble one and put it somewhere strangers can break it.

The certificate says I studied it. Janus says I can ship it. I'd want both from someone I was about to hire.

The actual lesson

If you're building something and it's mostly working, put it in front of people.

I lost four months of a domain aging, four months of anyone finding me in a search, and four months of conversations I'll never know I missed. In exchange I got a site that is somewhat better than the one I had in April. That trade was bad and I knew it was bad while I was making it.

The version of me that supports small businesses would have said this out loud months ago: your website's job is to exist and start a conversation. It doesn't have to be finished. It has to be findable.

I'd tell a client that in the first ten minutes. It took me until August to tell myself.

Where this goes

Griffin Atlas is one person and a set of AI agents I build and run. Janus is the first one, and the one you can use right now. Others handle work behind the scenes.

If your email keeps landing in spam, if your backups haven't been tested in a year, if someone sold you an AI subscription nobody uses, that's what I do. Ask Janus about it and see whether the answer is useful. If it is, the same page has a form that comes straight to me.

And if you're sitting on something that mostly works, waiting for it to be ready: it's ready.

- Roger