Ready, Set, Code!
Five projects that show vibe coding done right
Vibe coding doesn’t work. A program of any reasonable size provides too many opportunities to mess up. Have a machine try to do it in a single go and the result will be superficially polished enough to deceive a project manager but filled to the brim with technical debt. (AIs—they’re just like us!) However, given a small and focused domain, a coding agent can produce a solid finished product on the first try. And not just toys either, but actual useful applications that would be difficult or at least time-consuming for a person to write.
I created the following programs all in a single day using Anthropic’s Fable 5 model in an attempt to wring as much free work out of it as I can before they start charging by the token. In each case it produced a polished and working app on the first try. The only additional work I did was publishing them to GitHub and adding continuous integration actions that deployed a website where appropriate. I list the prompts and the applications they produced in order of sophistication and encourage you to take a look. Are you impressed by the technology’s genuine creativity or believe that it is merely demonstrating a knack for oozing into heretofore undiscovered well-of-course-that-would-be-easy-for-a-computer crevices? For me it’s a little of both.
Vector View: A Linear Algebra Tutorial
We’re vibe coding!
I want to create a program called Vector View that assists students learning linear algebra. It should provide an intuitive interface that allows someone to explore vector transformations that addresses things like the relationship between matrix transforms and coordinate systems, basis vectors, eigenvectors, null spaces...Whatever concepts you think are important and can be incorporated into a easy-to-use UI. Your audience is a student in an upper-level undergraduate class, so you can assume that they understand the concepts but still haven’t mastered them.
Vibe means vibe! You do all the work, decide on the software framework, how to present it, how to code it, write the documentation, everything. If you need me to perform some manual step like logging in somewhere or running a shell script I can do that, but otherwise I do not want to be involved.
Any questions?
I’d already generated something similar a few months before so went in I knowing this task was well within Claude’s ability, but, man, he really nailed it! Vector View is ergonomically smooth and pedagogically excellent. There’s an clickable “Explore Concepts” set of examples that illuminate a semester’s worth of key ideas. Claude says he went for a 3Blue1Brown aesthetic, and I’m not sure if that’s because he knows I’m a fan or had picked up his own appreciation of Grant Sanderson from the zeitgeist. Either way, the site looks beautiful.
What makes AI useful is not just its smarts but its versatility. Writing this program by hand would be a fair amount of work, but it’s doubtful that any one version would catch on as the canonical version so without machine assistance every student would have to roll their own, which means in practice almost no one would do it. Of course rolling your own has its own pedagogical value, as does sketching on good old-fashioned graph paper. What’s great is that now you can do it all.
Choplifter
Know what I miss—the old Choplifter game that used to be available on Apple personal computers in the early 1980s. Back when I was a kid in Muncie, Indiana, there was an arcade that had a row of Apple PCs in the back rigged up to play Choplifter. I loved that. Write me a playable version of Choplifter.
Yep, that’s Choplifter alright. Just like I remember it. On the one hand, this is the least impressive of these vibe coding exercises. I’ve come to take it for granted that Claude can churn out simple video games. Asking it to do so for the sake of nostalgia almost seems like a waste of the ability of a language model that is supposedly so powerful the United States government had to temporarily ban it. One is tempted to shrug “why bother?” but that would be a drastic move of the goalposts. Seriously, a thirty year old video game summoned out of the void? I know it’s trivial for the technology, but to me it still seems like magic.
The Gifted Amateur: A QED Discovery Game
A few years back in a fit of ambition I bought Lancaster and Blundell’s Quantum Field Theory for the Gifted Amateur and plowed my way through the first few chapters before running out of stream. Though definitely an amateur, I am apparently not sufficiently gifted. Despite my inability to master the subject, I sensed a core simplicity at the base of QED. You wrote down a Lagrangian and drew from a standard collection of field operators, thereby defining the sorts of fundamental particles your universe allowed. It seemed that somewhere beyond the daunting notation there was a fun game.
Write that game.
I’m imagining something where you pick Lagrangian terms and operators and then see what particles these predict. Maybe you could do “experiments” that yield different results depending on your initial choices. Maybe the machine would write a Lagrangian for you, and then you’d have to build a standard model for its world. Think Kerbal Space Program for subatomic particles. You’d see cloud chamber traces, or Feynman diagrams, and try to connect them to Lagrangian terms. It’d be so cool!
I don’t know if this is possible. I don’t know if I’m so fundamentally misunderstanding QED that this suggestion doesn’t even make sense, but I don’t care. If this turns out to be an impossible task, that’s your problem, not mine! Come up with the best QED game you can possibly create. Make it scientifically accurate, and make it fun!
I’m not qualified to rigorously evaluate the scientific accuracy of this game, but from what I know about physics it looks correct. What’s more, I’m inspired to dig into my copy of Quantum Field Theory for the Gifted Amateur to see if it actually is.
This is a much simpler piece of code than Choplifter. Algorithmically it’s about on the same level as those old David Ahl BASIC Computer Games that I used to painstakingly type into my TRS-80. There are a limited number of possible Lagrangians, and each of the simulated “experiments” has a clear interpretation. The hard part for 20th century physicists lay in crafting a paradigm that could be reduced to a simple deduction game, and the hard part for 21st century physics students lies in understanding the jargon required to express the rules of that game. Once again, the utility of AI lies not in its ability to produce something extremely smart but rather something extremely niche.
AI is feared to be a force of apocalyptic devastation for university level education, but more precisely it is a force of apocalyptic devastation for university level evaluation. How do you stop lazy students from using ChatGPT to summarize the required reading and write their papers? Your guess is a as good as mine. But for a motivated student who wants to master difficult material there’s never been a better time. We’ve seen above how one can effortlessly whip up a linear algebra visualizer. Someone else interested in mathematical foundations could, say, use a program like Turnstile to enlist Claude as a tutor for writing machine-checkable proofs. And now your aspiring Feynman has The Gifted Amateur. Wouldn’t it be great to set this app up in a competitive format where one player tries to compose really tricky Lagrangians for another to decode? You could call it “Scientist vs. God”.
Werewolf: AI Social Deception
This one’s going to be a challenge.
I’m interested in how close large language models can get to a theory of mind. I want to create an environment in which this can be tested by having a set of LLM agents play against each other in the social deception game Werewolf.
Write a framework called Werewolf to enable this. It should play a game of Werewolf. It should work out of the box, but also be configurable in that you can write your own prompts for individual players.
A GUI would be nice, but is not necessary. There are all kinds of directions this could go—additional games, decisions made by processes other than LLMs, reinforcement learning. If possible, don’t foreclose on these paths, but also don’t make an effort to support them. Currently they are non-goals. This is an MVP. Keep it simple.
This is an idea I’ve been kicking around for a while now. I started on it before AI coding agents were any good and it will probably be the last project I ever spent a significant amount of time working on “the hard way”. Over time, it has broadened into a project called Free Agent which concerns itself with real-time multi-agent interaction in general instead of teaching LLMs how to lie per se, though teaching LLMs how to lie remains a near-term goal.
This is the kind of open-ended project that moves at a glacial pace when you’re trying to fit it in around a full time job. The advantage machine agents provide lies not in making me into some kind of 10x super genius but rather in handling the scut work so I can focus my limited time on the parts that matter.
Free Agent is a big undertaking, way too big to one-shot, so I’ve adopted what I consider the “standard” AI agent approach to its construction—breaking it up into small pieces that agents implement one at a time and carefully assembling the results all while testing rigorously to make sure that nothing goes off the rails. Basically, treating AI like an employee rather than a magic wand. That’s what keeps you out of the slop. However, the quality of this one-shotted sketch has got me thinking that I should add an initial step: vibe-code a really simple prototype. Not so that it would become the basis of anything, but so that you have something to turn over in your hands while you’re planning out the real work.
Code Talkers: Latent Semantic Communication
Here we’re not so much vibe coding as vibe researching.
I’ve got an idea for an area of research with large language models. I’ve done some background reading—enough to at least suggest a direction. Now I want to build the simplest possible proof of concept, or rather I want you to build it, without my help, and then explain it to me when you’re done.
The idea is this: chain-of-thought LLM applications prompt themselves with a question, use that question to infer a final layer of a neural network, and then use that layer to generate an answer used to prompt the next step of reasoning and so on. Arguably you have the information that joins two steps of a chain-of-thought in two forms: (1) the last layer of a neural network and (2) the text generated by that layer. This seems redundant. Also, moving from a continuous vector space representation to a discrete token sequence seems an odd thing to do. The former seems like it would be superior. At the very least, it feels like a clumsy gear shift.
There is research into staying in the vector space representation for as long as possible. This broadly goes under the name “latent semantic space”. A particular paper I’m familiar with is Hao et al. “Training Large Language Models to Reason in a Continuous Latent Space”, which describes Meta’s Coconut model.
Coconut and other models have had some success stitching together different steps of a single chain of reasoning. When they do this, they are effectively “communicating” from one step to another. Let’s take that communication part literally. Create two LLM agents and have one “talk” to the other via latent semantic vectors without using any words. I have a hypothesis that this could be a superior form of communication because it can encode a “superposition” of many meanings, but for starters just make it work.
Maybe the communication just relays a few facts. If that is too simple maybe it does something like help solve a Zebra Puzzle. It’s up to you to come up with the communication content and protocol. We’re looking for a minimal proof of concept here. As short as a single conversation turn—just enough to prove communication has occurred. Obviously UI is not a concern. This can be user-unfriendly as long as I know how to work it. Computer language, frameworks, tools, are all up to you. My Anthropic API key is in the environment.
I’ve been thinking about this question for a while and have some ideas, but haven’t tried to implement any yet. Rather than work collaboratively with you now, I’d like you to take a stab at it yourself. Do background research first if you feel like you have to. To my knowledge, this is an unattempted problem, so there is no guarantee of success. Nevertheless, do the best you can and let me know when you have something.
Is there anything the Fable 5 model can’t do in a single shot? It’d be depressing if the answer wasn’t “yes” at least once so I decided to set it loose on an open-ended research question. For a while I’ve been wondering if large language models could communicate telepathically using a vector-based language superior to our own. This Singularity isn’t going to start itself, after all. Last time I checked there had been no research in this specific direction, though since then papers like Du et al 2025 and Zou et al 2026 have been published, which means I have some catching up to do, but at least I know I’m not barking up the wrong tree.
Claude produced three Python scripts, each of which uses an open source model to run experiments to ask if it is possible to send messages in vector space and whether this has any advantages over words. The answers are “yes” and “it’s hard to say”. I don’t know enough about quantum field theory to evaluate The Gifted Amateur, but I do machine learning for a living and so can confidently state that this is a good start. The experiments Claude performed are the same ones I had in mind (except for message fidelity as a function of inference temperature—that one was all him.) Their methodology is sound and can be easily expanded upon. The results are what I expected, indicating the approach is worth pursuing, and Claude concluded with a helpful list of next steps in the README.md. Not bad for dashing off a chatty prompt and letting the machine churn away while I took a bath.
Again, the code produced is nothing special: just some loops around Torch calls and printing it all out as JSON. I could have written it in my sleep. Claude also had the advantage of starting from an open-ended but still specific prompt informed by a fair amount of background reading on my part. Still, I think it would have taken me at least a week to get things to this point. Not because of any particular difficulty, just a whole bunch of fiddly things—I’d have to find the right open source model, remember how to do tokenization, and debug a bit of matrix arithmetic. None of which is hard, but that’s just it: none of it is ever hard in retrospect. Merely tedious, time consuming, and inducing enough cognitive strain to make you want to go sit in the bath, which is all I had to do to get this far.
The true test will be to follow up with serious experiments in pursuit of real results, and see how much of that Claude can do for me. Is he a fully-fledged research partner or merely an eager graduate student? This remains to be seen.






