Thoughtware: The web app that writes itself
What if you never had to write application logic again?
I recently showed that an agent can be built in 200 lines of code. What if we took that agent and have it handle web requests?
The result - a web server with zero application logic - is fascinating. It has no routes, no controllers, no business logic. Just a prompt and an AI agent that handles every HTTP request dynamically.
What training a world-class LLM looks like (hint: it is messy!)
Every few months, a new state-of-the-art AI model is released. The technical reports are polished, the loss curves are smooth, and every decision seems obvious in hindsight. It all looks so clean.
But the reality is far more chaotic.
The team at Hugging Face just pulled back the curtain with their Smol Training Playbook, an incredibly detailed account of training their 3B parameter SmolLM3 model. Far from being a story of flawless execution, it’s a drama of debugging sessions, unexpected failures, and hard-won lessons.
How to build an agent
Building a fully functioning coding agent is not nearly as hard as you might think.
When you watch an agent autonomously editing files, running commands, recovering from errors, and adapting its strategy on the fly, it feels like magic. Like there must be some secret sauce you’re missing.
But there isn’t. The core of an agent is surprisingly simple: an LLM, a loop, and enough context. Everything else is just good engineering.
I trained a ChatGPT clone for £75
I just watched a machine learn to speak. Over the course of 4 hours, for £75 ($100), I trained my own conversational AI from scratch. Not by using an API or fine-tuning an existing model - I mean actually training a language model, taking a neural net from generating random noise to holding a plausible conversation.
It’s a strange experience. You’re essentially watching intelligence emerge from mathematics.
The setup
I used nanochat as my foundation - Andrej Karpathy’s “minimal, hackable” implementation of the full LLM training pipeline. The beauty of nanochat is that it’s simple enough to understand but complete enough to actually work. No mysterious or bloated frameworks - just the core process laid bare.